Есть существенная разница между Event, которыми обмениваются экземпляры, и событиями ввода типа MouseEvent и KeyboardEvent, которые создаются и диспатчатся не кодом. И я говорю даже не о том, что их нельзя кастомизировать (что естественно), а о том, что я не представляю ситуации, когда по событию нажатия клавиши обработчику необходимо что-то передать сверх тех данных, что несет сам объект События. Ведь это событие не сообщает о том, что что-то изменилось в программе. Напротив, это событие инициирует какое-то изменение, и это изменение должно произойти в обработчике ПОСЛЕ приема События.
Если обработчику нужно знать состояние какого-то свойства какого-то левого экземпляра в момент события, то пусть у него и спрашивает. Это вопрос архитектуры связей.
|