4 #include "SDL_opengl.h"
11 SDL_Init(SDL_INIT_VIDEO);
12 m_window = SDL_CreateWindow("IPDF", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED,
13 800, 600, SDL_WINDOW_OPENGL | SDL_WINDOW_RESIZABLE);
17 Fatal("Couldn't create window!");
20 m_gl_context = SDL_GL_CreateContext(m_window);
26 SDL_GL_DeleteContext(m_gl_context);
27 SDL_DestroyWindow(m_window);
31 void Screen::ResizeViewport(int width, int height)
33 glViewport(0, 0, width, height);
34 m_viewport_width = width;
35 m_viewport_height = height;
38 bool Screen::PumpEvents()
41 bool no_quit_requested = true;
42 while (SDL_PollEvent(&evt))
47 no_quit_requested = false;
50 switch (evt.window.event)
52 case SDL_WINDOWEVENT_RESIZED:
53 case SDL_WINDOWEVENT_SIZE_CHANGED:
54 ResizeViewport(evt.window.data1, evt.window.data2);
62 return no_quit_requested;
65 void Screen::Present()
67 SDL_GL_SwapWindow(m_window);