コード例 #1
0
void MainMenu::KeyDown(SDL_KeyboardEvent const& key) {
	switch(key.keysym.sym) {
		case SDLK_ESCAPE:
			QuitEvent();
			break;
	}
}
コード例 #2
0
void BaseScene::ProcessEvents() {
	SDL_Event event;
	while(SDL_PollEvent(&event)) {
		switch(event.type) {
			case SDL_QUIT:
				QuitEvent();
			break;

			case SDL_MOUSEMOTION:
				MouseMotion(event.motion);
			break;

			case SDL_MOUSEBUTTONDOWN:
				MouseButtonDown(event.button);
			break;

			case SDL_MOUSEBUTTONUP:
				MouseButtonUp(event.button);
			break;

			case SDL_KEYDOWN:
				KeyDown(event.key);
			break;

			case SDL_KEYUP:
				KeyUp(event.key);
			break;

			//TODO: joystick and controller events
		}
	}
}
コード例 #3
0
ファイル: main_menu.cpp プロジェクト: Ratstail91/Tortuga
void MainMenu::KeyUp(SDL_KeyboardEvent const& event) {
	switch(event.keysym.sym) {
		case SDLK_ESCAPE:
			QuitEvent();
		break;
	}
}
コード例 #4
0
void BaseScene::KeyDown(SDL_KeyboardEvent const& event) {
	//preference as a default
	switch(event.keysym.sym) {
		case SDLK_ESCAPE:
			QuitEvent();
		break;
	}
}
コード例 #5
0
ファイル: main_menu.cpp プロジェクト: Ratstail91/Tortuga
void MainMenu::MouseButtonUp(SDL_MouseButtonEvent const& event) {
	//TODO: (2) Buttons should only register as "selected" when the left button is used
	if (startButton.MouseButtonUp(event) == Button::State::RELEASED) {
		SetSceneSignal(SceneSignal::LOBBYMENU);
	}
	if (optionsButton.MouseButtonUp(event) == Button::State::RELEASED) {
		SetSceneSignal(SceneSignal::OPTIONSMENU);
	}
	if (quitButton.MouseButtonUp(event) == Button::State::RELEASED) {
		QuitEvent();
	}
}
コード例 #6
0
ファイル: MainMenu.cpp プロジェクト: warzes/LibrisOnline
void MainMenu::MouseButtonUp(const SDL_MouseButtonEvent &event)
{	
	if ( m_startButton.MouseButtonUp(event) == Button::State::Released )
	{
		setSceneSignal(SceneSignal::LobbyMenu);
	}
	if ( m_optionsButton.MouseButtonUp(event) == Button::State::Released )
	{
		setSceneSignal(SceneSignal::OptionMenu);
	}
	if ( m_quitButton.MouseButtonUp(event) == Button::State::Released )
	{
		QuitEvent();
	}
}
コード例 #7
0
ファイル: base_scene.cpp プロジェクト: Ratstail91/Gene-Bot
void BaseScene::HandleEvents() {
	SDL_Event event;

	while(SDL_PollEvent(&event)) {
		switch(event.type) {
			case SDL_QUIT:
				QuitEvent();
			break;

			case SDL_VIDEORESIZE:
				SetScreen(event.resize.w, event.resize.h, 0, screen->flags);
			break;

			case SDL_MOUSEMOTION:
				MouseMotion(event.motion);
			break;

			case SDL_MOUSEBUTTONDOWN:
				MouseButtonDown(event.button);
			break;

			case SDL_MOUSEBUTTONUP:
				MouseButtonUp(event.button);
			break;

			case SDL_KEYDOWN:
				KeyDown(event.key);
			break;

			case SDL_KEYUP:
				KeyUp(event.key);
			break;

#ifdef USE_EVENT_JOYSTICK
			//TODO: joystick/gamepad support
#endif

#ifdef USE_EVENT_UNKNOWN
			default:
				UnknownEvent(event);
			break;
#endif
		}//switch
	}//while
}
コード例 #8
0
    MyApplication(int argc, char **argv)
        : Application(argc, argv, "timed_event", false)
    {
        // Touch
        Touch();
        m_controllerInThread.Touch();

        // Run thread
        m_thread.Run();
        m_controllerInThread.SwitchToThread(&m_thread);

        // Emit thread timed events
        m_controllerInThread.DPL::ControllerEventHandler<SecondEvent>::PostTimedEvent(SecondEvent(), 3);
        m_controllerInThread.DPL::ControllerEventHandler<FirstEvent>::PostTimedEvent(FirstEvent(), 2);

        // Emit framework timed quit event
        DPL::ControllerEventHandler<QuitEvent>::PostTimedEvent(QuitEvent(), 5);
    }
コード例 #9
0
ファイル: MainMenu.cpp プロジェクト: warzes/LibrisOnline
void MainMenu::KeyUp(const SDL_KeyboardEvent &event)
{
	if ( event.keysym.sym == SDLK_ESCAPE ) QuitEvent();
}