summaryrefslogtreecommitdiff
path: root/noncore/net/opieirc/ircmisc.cpp
Side-by-side diff
Diffstat (limited to 'noncore/net/opieirc/ircmisc.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/opieirc/ircmisc.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/noncore/net/opieirc/ircmisc.cpp b/noncore/net/opieirc/ircmisc.cpp
index 9b9bff8..6fc5ba0 100644
--- a/noncore/net/opieirc/ircmisc.cpp
+++ b/noncore/net/opieirc/ircmisc.cpp
@@ -58,24 +58,27 @@ OKeyConfigManager* IRCHistoryLineEdit::keyConfigInstance() {
blackList.append( OKeyPair::returnKey() );
blackList.append( OKeyPair::leftArrowKey() );
blackList.append( OKeyPair::upArrowKey() );
blackList.append( OKeyPair::downArrowKey() );
s_manager = new OKeyConfigManager(new OConfig("opieirc-keys"),
"keys", blackList,
false, 0, "irc_history_line_keyconfigm" );
s_manager->addKeyConfig( OKeyConfigItem( tr("Next Tab"), "next_tab", QPixmap(),
KeyNextTab, OKeyPair(Qt::Key_N, Qt::ControlButton) ));
s_manager->addKeyConfig( OKeyConfigItem( tr("Previous Tab"), "prev_tab", QPixmap(),
KeyPrevTab, OKeyPair(Qt::Key_P, Qt::ControlButton) ));
+ s_manager->addKeyConfig( OKeyConfigItem( tr("Close Tab"), "close_tab",
+ QPixmap(), KeyCloseTab,
+ OKeyPair(Qt::Key_C, Qt::ControlButton) ));
s_manager->load();
}
return s_manager;
}
IRCHistoryLineEdit::IRCHistoryLineEdit(QWidget *parent, const char *name) : QLineEdit(parent, name) {
m_index = -1;
installEventFilter(this);
}
@@ -98,24 +101,26 @@ void IRCHistoryLineEdit::keyPressEvent(QKeyEvent *event) {
} else if (key == Key_Return) {
m_history.prepend(text());
m_index = -1;
}
switch( keyConfigInstance()->handleKeyEventId( event ) ) {
case KeyNextTab:
emit nextTab();
return;
case KeyPrevTab:
emit prevTab();
return;
+ case KeyCloseTab:
+ emit closeTab();
default:
break;
}
QLineEdit::keyPressEvent(event);
}
bool IRCHistoryLineEdit::eventFilter(QObject *object, QEvent *event) {
if (event->type() == QEvent::KeyPress) {
QKeyEvent *k = (QKeyEvent *) event;
/* Catch tab characters */
if (k->key() == Key_Tab) {