hedgewars/hwengine.pas
changeset 5975 c3a8cab64fcb
parent 5968 4e8bb227be9a
child 5995 647d52370ce9
child 6013 4c24f064851e
equal deleted inserted replaced
5974:5bd84514856f 5975:c3a8cab64fcb
   152 // disable "Some fields weren't initialized" warning
   152 // disable "Some fields weren't initialized" warning
   153 const event: TSDL_Event = ();
   153 const event: TSDL_Event = ();
   154 {$WARNINGS ON}
   154 {$WARNINGS ON}
   155 var PrevTime, CurrTime: Longword;
   155 var PrevTime, CurrTime: Longword;
   156     prevFocusState: boolean;
   156     prevFocusState: boolean;
       
   157     previousGameState: TGameState;
   157 begin
   158 begin
   158     PrevTime:= SDL_GetTicks;
   159     PrevTime:= SDL_GetTicks;
   159     while isTerminated = false do
   160     while isTerminated = false do
   160     begin
   161     begin
   161         SDL_PumpEvents();
   162         SDL_PumpEvents();
   173                 SDL_WINDOWEVENT:
   174                 SDL_WINDOWEVENT:
   174                     if event.window.event = SDL_WINDOWEVENT_SHOWN then
   175                     if event.window.event = SDL_WINDOWEVENT_SHOWN then
   175                         begin
   176                         begin
   176                         cHasFocus:= true;
   177                         cHasFocus:= true;
   177                         onFocusStateChanged()
   178                         onFocusStateChanged()
       
   179                         end
       
   180                     else if event.window.event = SDL_WINDOWEVENT_MINIMIZED then
       
   181                         begin
       
   182                         previousGameState:= GameState;
       
   183                         GameState:= gsSuspend;
       
   184                         end
       
   185                     else if event.window.event = SDL_WINDOWEVENT_RESTORED then
       
   186                         begin
       
   187                         GameState:= previousGameState;
   178                         end;
   188                         end;
   179 {$ELSE}
   189 {$ELSE}
   180                     KeyPressChat(event.key.keysym.unicode);
   190                     KeyPressChat(event.key.keysym.unicode);
   181                 SDL_MOUSEBUTTONDOWN: if event.button.button = SDL_BUTTON_WHEELDOWN then wheelDown:= true;
   191                 SDL_MOUSEBUTTONDOWN: if event.button.button = SDL_BUTTON_WHEELDOWN then wheelDown:= true;
   182                 SDL_MOUSEBUTTONUP: if event.button.button = SDL_BUTTON_WHEELUP then wheelUp:= true;
   192                 SDL_MOUSEBUTTONUP: if event.button.button = SDL_BUTTON_WHEELUP then wheelUp:= true;