예제 #1
0
void CSVRender::WorldspaceWidget::mouseReleaseEvent (QMouseEvent *event)
{
    std::string button = mapButton (event);
    mDragMode.clear();

    if (button=="p-edit" || button=="s-edit" ||
        button=="p-select" || button=="s-select")
    {
        if (mDragging)
        {
            EditMode& editMode = dynamic_cast<CSVRender::EditMode&> (*mEditMode->getCurrent());

            editMode.dragCompleted();
            mDragging = false;
        }
        else
        {
            osg::ref_ptr<TagBase> tag = mousePick (event->pos());

            handleMouseClick (tag, button, event->modifiers() & Qt::ShiftModifier);
        }
    }
    else
        SceneWidget::mouseReleaseEvent(event);
}
예제 #2
0
int SceneMultiplayer::handle(sf::Event* xevent)
{
	event = xevent;

	// Checking instance, and go to battlefield when connected
	if (instance->isConnected())
	{
		return 1;
	}

	switch (event->type)
	{
		case sf::Event::MouseButtonReleased:
		{
			// Delegate mouse click event
			return handleMouseClick(event->mouseButton.x, event->mouseButton.y);
			break;
		}

		case sf::Event::KeyPressed:
		{
			// Delegate keypress event
			return handleKeyPress(event->key.code);
			break;
		}
	}

	return 2; // Multiplayer Prompt Scene is 2
}
예제 #3
0
int Game::run()
{	
	m_running = true;
	SDL_Event event;

	while(m_running)
	{
		while (SDL_PollEvent(&event) != 0)
		{				
			if (event.type == SDL_QUIT)
			{
				m_running = false;
			}
			else if (event.type == SDL_MOUSEBUTTONDOWN)
			{
				if (event.button.button == SDL_BUTTON_LEFT)
				{
					handleMouseClick(event.button.x, event.button.y);
				}
			}
			else if (event.type == SDL_KEYDOWN)
			{
				handleKeyboardKey(event.key.keysym.sym);
			}		
		}

		update();
	}

	return 0;
}
예제 #4
0
파일: menu.cpp 프로젝트: AReim1982/scummvm
void MenuSystem::handleEvents() {
	Common::Event event;
	Common::EventManager *eventMan = _vm->_system->getEventManager();
	while (eventMan->pollEvent(event)) {
		switch (event.type) {
		case Common::EVENT_KEYDOWN:
			handleKeyDown(event.kbd);
			break;
		case Common::EVENT_QUIT:
			_running = false;
			break;
		case Common::EVENT_MOUSEMOVE:
			handleMouseMove(event.mouse.x, event.mouse.y);
			break;
		case Common::EVENT_LBUTTONUP:
			handleMouseClick(event.mouse.x, event.mouse.y);
			break;
		default:
			break;
		}
	}
}