void ModuleWorldPage::OnLButtonDown(UINT nFlags, CPoint point) { // TODO: この位置にメッセージ ハンドラ用のコードを追加するかまたはデフォルトの処理を呼び出してください setMouseButton(MOUSE_BUTTON_LEFT); mousex = point.x; mousey = point.y; CPropertyPage::OnLButtonDown(nFlags, point); }
//get any new input void WindowSFML::updateInput() { if (!windowIsOpen) { return; } else if (!windowObj.isOpen()) { windowIsOpen=0; return; } sf::Event event; keyPressListPos=0; keyPressNum=0; bool lDwn=0, rDwn=0, mDwn=0; double scroll=0; while (windowObj.pollEvent(event)) { switch (event.type) { // window closed case sf::Event::Closed: windowObj.close(); break; // key pressed case sf::Event::KeyPressed: if (keyPressNum<MAX_KEY_PRESSES) { keyPresses[keyPressNum]=key2char[event.key.code]; ++keyPressNum; } else { err << "key press overflow" << err; } break; case sf::Event::MouseButtonPressed: switch (event.mouseButton.button) { case sf::Mouse::Left: lDwn=1; break; case sf::Mouse::Right: rDwn=1; break; case sf::Mouse::Middle: mDwn=1; break; default: break; } break; case sf::Event::MouseWheelMoved: scroll+=event.mouseWheel.delta; break; case sf::Event::Resized: hasBeenResized(); break; case sf::Event::GainedFocus: windowHasFocus=1; break; case sf::Event::LostFocus: windowHasFocus=0; break; // we don't process other types of events default: break; } } auto mouseVctr=sf::Mouse::getPosition(windowObj); shiftDwnBool=sf::Keyboard::isKeyPressed(sf::Keyboard::LShift) || sf::Keyboard::isKeyPressed(sf::Keyboard::RShift); ctrlDwnBool=sf::Keyboard::isKeyPressed(sf::Keyboard::LControl) || sf::Keyboard::isKeyPressed(sf::Keyboard::RControl); altDwnBool=sf::Keyboard::isKeyPressed(sf::Keyboard::LAlt) || sf::Keyboard::isKeyPressed(sf::Keyboard::RAlt); superDwnBool=sf::Keyboard::isKeyPressed(sf::Keyboard::RSystem) || sf::Keyboard::isKeyPressed(sf::Keyboard::RSystem); if (sf::Mouse::isButtonPressed(sf::Mouse::Left)) lDwn=true; if (sf::Mouse::isButtonPressed(sf::Mouse::Right)) rDwn=true; if (sf::Mouse::isButtonPressed(sf::Mouse::Middle)) mDwn=true; setMouseButton(&mouse.left, lDwn); setMouseButton(&mouse.right, rDwn); setMouseButton(&mouse.middle, mDwn); setMousePos(V2d(mouseVctr.x, dim.y-mouseVctr.y)); setMouseScroll(scroll); dltaTime=dltaTimer.get(); dltaTimer.reset(); }