Example #1
0
IEventManager	&Display::getEventQueue()
{
  EventQueue	*queue = new EventQueue();

  SDL_PollEvent(&_events);

  SDL_Delay(10);
  
  switch(_events.type)
    {
    case SDL_KEYDOWN:
      switch(_events.key.keysym.scancode)
	{
	case SDL_SCANCODE_ESCAPE:
	  {
	    queue->pushEvent(new Event(keyEscape));
	    break;
	  }
	case SDL_SCANCODE_LEFT:
	  {
	    queue->pushEvent(new Event(keyRight));
	    break;
	  }
	case SDL_SCANCODE_RIGHT:
	  {
	    queue->pushEvent(new Event(keyLeft));
	    break;
	  }
	  
	default:
	  break;
	}
      break;      
    default:
      break;
    }
  return *queue;
}