Название: XLib, Mouse and keyboard events. Глюки Отправлено: G-virus от Март 10, 2013, 23:22 Здравствуйте. Связался с XLib, построил контекст своего приложения под линукс на нем. Дошло дело до обработки событий мыши и клавиатуры. Написал вот такой код
Код
1 проблема и 1 вопрос. Проблема: При нажатии клавиш приходит неправильный код. Либо код правильный, но интерпретируется неправильно, хз. В общем, должно обрабатываться WSAD, а вместо этого клавиша вперед - Пробел, клавиша назад - F2, клавиши вбок я так и не нашел. Ах да, клавиша 1 это Shift, клавиша 2 это ~, клавиша 5 это X. Подскажите пожалуйста, почему может неправильно интерпретироваться.... Вопрос: функция mouseEvent осуществляет поворот камеры как в шутере. На деле - такое впечатление, что срабатывание ивента опаздывает, глючит, не выключается, фиг знает...XWarpPointer перестает срабатывать через некоторое время. Повороты идут в нужном направлении, но с каким-то опозданием, и иногда не выключаются даже если мышку остановил, камера все равно поворачивается...подскажите, пожалуйста, что это может быть :) Спасибо Название: Re: XLib, Mouse and keyboard events. Глюки Отправлено: Alex Custov от Март 11, 2013, 18:13 При нажатии клавиш приходит неправильный код. Либо код правильный, но интерпретируется неправильно, хз. В общем, должно обрабатываться WSAD, а вместо этого клавиша вперед - Пробел, клавиша назад - F2, клавиши вбок я так и не нашел. Ах да, клавиша 1 это Shift, клавиша 2 это ~, клавиша 5 это X. Подскажите пожалуйста, почему может неправильно интерпретироваться.... в event loop ты получаешь key code, его нужно превратить в key sym. То что у тебя в switch-case - именно key sym. Раньше было XKeycodeToKeysym, но это уже deprecated. Как по-новому я не знаю. Название: Re: XLib, Mouse and keyboard events. Глюки Отправлено: G-virus от Март 11, 2013, 21:05 в event loop ты получаешь key code, его нужно превратить в key sym. То что у тебя в switch-case - именно key sym. Раньше было XKeycodeToKeysym, но это уже deprecated. Как по-новому я не знаю. Да, действительно, что-то я упустил перевод в KeySym, теперь все работает как надо, спасибо! А про мышь не можете предположить?... :) она в принципе работает, но такое впечатление что заедает ивент как-то... кстати забыл добавить, что если расскоментировать обработку мыши, то клавиатуру уже не ловит... а камера вертится странно...в общем фиг знает :) |