Mercurial > sdl-ios-xcode
view EXCLUDE/GLIMM/src/App.cpp @ 4753:11b0a6a3eb4d
Changed Start/StopTextInput back to not take any parameters.
We call SDL_GetKeyboardFocus internally now.
author | dewyatt |
---|---|
date | Mon, 12 Jul 2010 14:17:43 -0400 |
parents | 34c3e6d69575 |
children |
line wrap: on
line source
#include "App.hpp" #include <GL/gl.h> #include <GL/glu.h> #pragma comment(lib, "glu32.lib") GLfloat Rotation = 0.0f; App::App() : my_Done(false) { } App::~App() { Finalize(); } void App::Initialize() { Finalize(); my_Window.Initialize(L"GLIMM", Video_Mode(Width, Height, Bits_Per_Pixel), Fullscreen); my_Window.Set_Listener(this); my_Window.Show(); my_Window.Hide_Cursor(); } void App::Finalize() { my_Window.Finalize(); } void App::Run() { Initialize(); while (!my_Done) { my_Window.Handle_Events(); Update(); Draw(); my_Window.Display(); } } void App::On_Close() { my_Done = true; my_Window.Hide(); } void App::On_Key_Down(int Key) { switch (Key) { case VK_ESCAPE: On_Close(); break; } } void App::On_Key_Up(int Key) { } void App::On_Char(unsigned int Char) { printf("Char: U+%04X\n", Char); } void App::On_Resized(unsigned int Width, unsigned int Height) { glViewport(0, 0, Width, Height); glMatrixMode(GL_PROJECTION); glLoadIdentity(); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); } void App::On_Mouse_Button_Down(Mouse_Button Button) { switch (Button) { case Mouse_Button_Left: my_Window.Get_IMM().Toggle(); break; } } void App::Update() { Rotation += 0.2f; } void App::Draw() { glClear(GL_COLOR_BUFFER_BIT); glLoadIdentity(); glRotatef(Rotation, 0.0f, 0.0f, -1.0f); glBegin(GL_TRIANGLES); glColor3f(0.7f, 0.0f, 0.0f); glVertex3f(0.0f, 0.5f, 0.0f); glColor3f(0.0f, 0.7f, 0.0f); glVertex3f(-0.5f, -0.5f, 0.0f); glColor3f(0.0f, 0.0f, 0.7f); glVertex3f(0.5f, -0.5f, 0.0f); glEnd(); }