У меня возникла любопытная небольшая проблема с опросом событий мыши с использованием SDL.
if(event.type == SDL_MOUSEBUTTONDOWN) {
printf("click %d\n", event.button.button);
}
else if(event.type == SDL_MOUSEMOTION) {
printf("move %d\n", event.button.button);
}
Если я нажимаю и удерживаю правую кнопку мыши при перемещении мыши, я получаю:
click 3 // = SDL_BUTTON_RIGHT
move 4 // != SDL_BUTTON_RIGHT !
move 4
...
то есть SDL_MOUSEBTTONDOWN устанавливает для кнопки button.button значение 3 для правой кнопки мыши, а SDL_MOUSEMOTION устанавливает для нее значение 4.
Кто-нибудь знает, почему это может происходить?