В Windows при создании окна вы должны определить (c ++)
LRESULT CALLBACK message_proc(HWND Handle, UINT Message, WPARAM WParam, LPARAM LParam);
для обработки всех сообщений, отправляемых из ОС в окно, например нажатия клавиш и тому подобное.
Я хочу прочесть о том, как работает та же система в Linux. Может быть, это потому, что я немного отстаю в терминологии, но мне не удается найти что-либо об этом через Google (хотя я уверен, что их должно быть много!).
- Это все еще одна функция C, которая обрабатывает все коммуникации?
- Отличается ли определение функции на разных WM (Gnome, KDE) или оно обрабатывается на более низком уровне в ОС?
Редактировать : Я изучал такие инструменты, как QT и WxWidgets, но эти платформы, похоже, больше ориентированы на разработку приложений с обширным графическим интерфейсом. Я скорее ищу способ создать основное окно (ограничить изменение размера, границы / декорации) для моей графики OGL и получить ввод на более чем одной платформе. И, согласно моим первоначальным исследованиям, такого рода функции - единственный способ получить эти данные.
Какой будет лучший маршрут? Чтение, изучение, а затем использовать QT или WxWidgets? Или узнать, как работают системы и реализовать те несколько основных функций, которые я сам хочу?