diff options
| author | Manjeet Dahiya <manjeetdahiya@gmail.com> | 2010-09-26 06:49:04 +0000 |
|---|---|---|
| committer | Manjeet Dahiya <manjeetdahiya@gmail.com> | 2010-09-26 06:49:04 +0000 |
| commit | 5c70da9d0606ef419aedb06a989a54618574d2a3 (patch) | |
| tree | 31dff48703136f70483a28ec80351573d31a29b8 /examples/GuiClient/mainDialog.cpp | |
| parent | 0986d6cc4699b2cc085a2e06c56ba801c2b9e914 (diff) | |
| download | qxmpp-5c70da9d0606ef419aedb06a989a54618574d2a3.tar.gz | |
don't close on escape key
Diffstat (limited to 'examples/GuiClient/mainDialog.cpp')
| -rw-r--r-- | examples/GuiClient/mainDialog.cpp | 62 |
1 files changed, 40 insertions, 22 deletions
diff --git a/examples/GuiClient/mainDialog.cpp b/examples/GuiClient/mainDialog.cpp index c2e53640..37e8eeee 100644 --- a/examples/GuiClient/mainDialog.cpp +++ b/examples/GuiClient/mainDialog.cpp @@ -248,36 +248,54 @@ void mainDialog::filterChanged(const QString& filter) void mainDialog::keyPressEvent(QKeyEvent* event1) { - if(ui->stackedWidget->currentIndex() == 1) // sign in page + if(ui->stackedWidget->currentIndex() == 0) // roster page { - QDialog::keyPressEvent(event1); - return; + if(event1->matches(QKeySequence::Find) ||( + event1->key() <= Qt::Key_9 && event1->key() >= Qt::Key_1) || + (event1->key() <= Qt::Key_Z && event1->key() >= Qt::Key_At) || + event1->key() == Qt::Key_Backspace) + { + ui->lineEdit_filter->setFocus(); + ui->lineEdit_filter->event(event1); + } + else if(event1->key() == Qt::Key_Escape) + { + ui->lineEdit_filter->clear(); + ui->listView->setFocus(); + } + else if(event1->key() == Qt::Key_Up || + event1->key() == Qt::Key_Down || + event1->key() == Qt::Key_PageUp || + event1->key() == Qt::Key_PageDown) + { + ui->listView->setFocus(); + ui->listView->event(event1); + } + else if(event1->key() == Qt::Key_Return && ui->listView->hasFocus()) + { + ui->listView->event(event1); + } } - if(event1->matches(QKeySequence::Find) ||( - event1->key() <= Qt::Key_9 && event1->key() >= Qt::Key_1) || - (event1->key() <= Qt::Key_Z && event1->key() >= Qt::Key_At) || - event1->key() == Qt::Key_Backspace) - { - ui->lineEdit_filter->setFocus(); - ui->lineEdit_filter->event(event1); - } - else if(event1->key() == Qt::Key_Escape) +// don't close on escape + if(event1->key() == Qt::Key_Escape) { - ui->lineEdit_filter->clear(); - ui->listView->setFocus(); + event1->ignore(); + return; } - else if(event1->key() == Qt::Key_Up || - event1->key() == Qt::Key_Down || - event1->key() == Qt::Key_PageUp || - event1->key() == Qt::Key_PageDown) +#ifdef Q_WS_MAC + else if(minimize && e->modifiers() == Qt::ControlModifier && e->key() == Qt::Key_Period) { - ui->listView->setFocus(); - ui->listView->event(event1); + event1->ignore(); + return; } - else if(event1->key() == Qt::Key_Return && ui->listView->hasFocus()) +#endif +// don't close on escape + + if(ui->stackedWidget->currentIndex() == 1) // sign in page { - ui->listView->event(event1); + QDialog::keyPressEvent(event1); + return; } } |
