void QTetrixBoard::keyPressEvent( QKeyEvent *e ) { if ( noGame || isPaused || waitingAfterLine ) return; switch( e->key() ) { case Key_Left : moveLeft(); break; case Key_Right : moveRight(); break; case Key_Down : rotateRight(); break; case Key_Up : rotateLeft(); break; case Key_Space : dropDown(); break; case Key_D : oneLineDown(); break; default: return; } e->accept(); }
//! [13] void TetrixBoard::keyPressEvent(QKeyEvent *event) { if (!isStarted || isPaused || curPiece.shape() == NoShape) { QFrame::keyPressEvent(event); return; } //! [13] //! [14] switch (event->key()) { case Qt::Key_Left: tryMove(curPiece, curX - 1, curY); break; case Qt::Key_Right: tryMove(curPiece, curX + 1, curY); break; case Qt::Key_Down: tryMove(curPiece.rotatedRight(), curX, curY); break; case Qt::Key_Up: tryMove(curPiece.rotatedLeft(), curX, curY); break; case Qt::Key_Space: dropDown(); break; case Qt::Key_D: oneLineDown(); break; default: QFrame::keyPressEvent(event); } //! [14] }
void DropDown::keyPressed(KeyEvent& keyEvent) { Key key = keyEvent.getKey(); if ((key.getValue() == Key::ENTER || key.getValue() == Key::SPACE) && !mDroppedDown) { dropDown(); keyEvent.consume(); } else if (key.getValue() == Key::UP) { setSelected(getSelected() - 1); keyEvent.consume(); } else if (key.getValue() == Key::DOWN) { setSelected(getSelected() + 1); keyEvent.consume(); } }
// -- KeyListener notifications void DropDown::keyPressed(gcn::KeyEvent& keyEvent) { if (keyEvent.isConsumed()) return; int actionId = static_cast<KeyEvent*>(&keyEvent)->getActionId(); switch (actionId) { case Input::KEY_GUI_SELECT: case Input::KEY_GUI_SELECT2: dropDown(); break; case Input::KEY_GUI_UP: setSelected(getSelected() - 1); break; case Input::KEY_GUI_DOWN: setSelected(getSelected() + 1); break; case Input::KEY_GUI_HOME: setSelected(0); break; case Input::KEY_GUI_END: if (mListBox->getListModel()) { setSelected(mListBox->getListModel()-> getNumberOfElements() - 1); } break; default: return; } keyEvent.consume(); }
// -- KeyListener notifications void DropDown::keyPressed(gcn::KeyEvent& keyEvent) { if (keyEvent.isConsumed()) return; gcn::Key key = keyEvent.getKey(); if (key.getValue() == Key::ENTER || key.getValue() == Key::SPACE) dropDown(); else if (key.getValue() == Key::UP) setSelected(getSelected() - 1); else if (key.getValue() == Key::DOWN) setSelected(getSelected() + 1); else if (key.getValue() == Key::HOME) setSelected(0); else if (key.getValue() == Key::END) setSelected(mListBox->getListModel()->getNumberOfElements() - 1); else return; keyEvent.consume(); }
void DropDown::mousePressed(MouseEvent& mouseEvent) { // If we have a mouse press on the widget. if (0 <= mouseEvent.getY() && mouseEvent.getY() < getHeight() && mouseEvent.getX() >= 0 && mouseEvent.getX() < getWidth() && mouseEvent.getButton() == MouseEvent::LEFT && !mDroppedDown && mouseEvent.getSource() == this) { mPushed = true; dropDown(); requestModalMouseInputFocus(); } // Fold up the listbox if the upper part is clicked after fold down else if (0 <= mouseEvent.getY() && mouseEvent.getY() < mFoldedUpHeight && mouseEvent.getX() >= 0 && mouseEvent.getX() < getWidth() && mouseEvent.getButton() == MouseEvent::LEFT && mDroppedDown && mouseEvent.getSource() == this) { mPushed = false; foldUp(); releaseModalMouseInputFocus(); } // If we have a mouse press outside the widget else if (0 > mouseEvent.getY() || mouseEvent.getY() >= getHeight() || mouseEvent.getX() < 0 || mouseEvent.getX() >= getWidth()) { mPushed = false; foldUp(); } }
void DropDown::keyPressed(KeyEvent& keyEvent) { if (keyEvent.isConsumed()) return; Key key = keyEvent.getKey(); if ((key.getValue() == Key::Enter || key.getValue() == Key::Space) && !mDroppedDown) { dropDown(); keyEvent.consume(); } else if (key.getValue() == Key::Up) { setSelected(getSelected() - 1); keyEvent.consume(); } else if (key.getValue() == Key::Down) { setSelected(getSelected() + 1); keyEvent.consume(); } }