У меня есть приложение SDL, и я хочу сделать окно с изменяемым размером. Поэтому я поставил правильный флаг в SDL_SetVideoMode () и сделал обработчик событий. Но когда я изменяю размер окна, обработчик не активируется. Я не знаю почему.
Код моего цикла событий:
while (SDL_PollEvent (&event));
{
if (event.type == SDL_QUIT)
return 0+1;
else if (event.type == SDL_VIDEORESIZE)
{
board.x = static_cast<int> ( static_cast<float> (event.resize.w - 2 * hMargin) / Field + 0.5f );
board.y = static_cast<int> ( static_cast<float> (event.resize.h - 2 * vMargin - Face - FaceSpace) / Field + 0.5f );
return 0;
}
}
return 0 + 1 - для успешного выхода (main return 0); возвращаемый 0 - для перезапуска приложения (выполнение другого SetVideoMode).
Похоже, что когда я изменяю размер окна, событие не отправляется.
Я использую SDL версии 1.2.14.
EDIT:
Я написал пример программы, и она сработала. Но я еще раз посмотрел на код и ... через некоторое время увидел точку с запятой () -.-