void TorrentView::processKey(int key) {
  if(key == KEY_DOWN || key == 'j')
    selectionDown();
  else if(key == KEY_UP || key == 'k')
    selectionUp();
  else if(key == 'd')
    deleteHandler();
}
Example #2
0
bool CStarCamera::removeMatrixRow() {
	if (_matrixRow == -1)
		return false;

	CNavigationInfo data;
	_mover->copyTo(&data);
	deleteHandler();

	--_matrixRow;
	setupHandler(&data);
	return true;
}
Example #3
0
bool CStarCamera::addMatrixRow(const FVector &v) {
	if (_matrixRow >= 2)
		return false;

	CNavigationInfo data;
	_mover->copyTo(&data);
	deleteHandler();

	FVector &row = _matrix[++_matrixRow];
	row = v;
	setupHandler(&data);
	return true;
}
Example #4
0
CStarCamera::~CStarCamera() {
	deleteHandler();
}
Example #5
0
void GraphicalBoardFrame::keyPressEvent(QKeyEvent *event)
{
    enum { Backspace = 0, Delete, Submit, Commit, Append } mode;

    switch (event->key())
    {
    case Qt::Key_Backspace:
        mode = Backspace;
        break;

    case Qt::Key_Delete:
        mode = Delete;
        break;

    case Qt::Key_Return:
    case Qt::Key_Enter:
        mode = event->modifiers() & Qt::ShiftModifier || event->modifiers() & Qt::ControlModifier || event->modifiers() & Qt::MetaModifier? Commit : Submit;
        break;

    default:
        mode = Append;
        break;
    }

    if (!hasCandidate())
    {
        event->ignore();
        return;
    }

    switch (mode)
    {

    // these modes need a candidate
    case Submit:
        submitHandler();
        break;
    
    case Commit:
        commitHandler();
        break;
    
    default:
        if (!hasArrow())
        {
            event->ignore();
            return;
        }

        switch (mode)
        {

        // these modes need an arrow
        case Delete:
            deleteHandler();
            break;
        
        case Backspace:
            backspaceHandler();
            break;
        
        case Append:
			if (event->text().isEmpty() ||
				(event->text().at(0) >= 0xa8 && event->text().at(0) <= 0xb8) || // combining character
				(event->text().at(0) >= 0x2b9 && event->text().at(0) <= 0x2ff)) // combining character
				break; // let AltGr (Ctrl+Alt) and other composite keyboard events slip through
            else if (event->modifiers() & Qt::AltModifier || event->modifiers() & Qt::ControlModifier)
            {
				if (!event->text().isEmpty() &&
					((event->text().at(0) >= 'a' && event->text().at(0) <= 'z') ||
					 (event->text().at(0) >= 'A' && event->text().at(0) <= 'Z')))
				{
					event->ignore();
					return;
				}
            }
    
            appendHandler(event->text(), event->modifiers() & Qt::ShiftModifier);
            break;

        case Commit:
        case Submit:
            break;
        }
        break;
    }

    prepare();

    event->accept();
}