Как я буду распространять события мыши и клавиатуры в структуре пользовательского интерфейса? - PullRequest
0 голосов
/ 10 июля 2011

Я закончил работу над буфером рендеринга и базовой рассылкой сообщений моей платформы пользовательского интерфейса консоли, но теперь мне нужно распространять события на все виджеты (элементы управления) на экране.

Видимо у меня есть два варианта:

  • Центральная регистрация всех элементов управления с помпой сообщений (что, я думаю, не очень хорошо)

или

  • Иерархическое распространение через «визуальное дерево»

Как бы вы поступили?

1 Ответ

0 голосов
/ 11 июля 2011

Трудно дать однозначный ответ, не зная больше о вашей платформе, но я думаю, что регистрация всех ваших виджетов и прокачки сообщений с помощью некоторого класса-посредника была бы лучшим вариантом. Если вы попытаетесь распространить ваши события по иерархии, это может стать очень запутанным, и ваша логика обработки событий будет распространена повсеместно, что приведет к неуправляемому коду.

...