summaryrefslogtreecommitdiff
path: root/noncore/net/opieirc/ircmisc.cpp
Unidiff
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() {
58 blackList.append( OKeyPair::returnKey() ); 58 blackList.append( OKeyPair::returnKey() );
59 blackList.append( OKeyPair::leftArrowKey() ); 59 blackList.append( OKeyPair::leftArrowKey() );
60 blackList.append( OKeyPair::upArrowKey() ); 60 blackList.append( OKeyPair::upArrowKey() );
61 blackList.append( OKeyPair::downArrowKey() ); 61 blackList.append( OKeyPair::downArrowKey() );
62 62
63 s_manager = new OKeyConfigManager(new OConfig("opieirc-keys"), 63 s_manager = new OKeyConfigManager(new OConfig("opieirc-keys"),
64 "keys", blackList, 64 "keys", blackList,
65 false, 0, "irc_history_line_keyconfigm" ); 65 false, 0, "irc_history_line_keyconfigm" );
66 s_manager->addKeyConfig( OKeyConfigItem( tr("Next Tab"), "next_tab", QPixmap(), 66 s_manager->addKeyConfig( OKeyConfigItem( tr("Next Tab"), "next_tab", QPixmap(),
67 KeyNextTab, OKeyPair(Qt::Key_N, Qt::ControlButton) )); 67 KeyNextTab, OKeyPair(Qt::Key_N, Qt::ControlButton) ));
68 s_manager->addKeyConfig( OKeyConfigItem( tr("Previous Tab"), "prev_tab", QPixmap(), 68 s_manager->addKeyConfig( OKeyConfigItem( tr("Previous Tab"), "prev_tab", QPixmap(),
69 KeyPrevTab, OKeyPair(Qt::Key_P, Qt::ControlButton) )); 69 KeyPrevTab, OKeyPair(Qt::Key_P, Qt::ControlButton) ));
70 s_manager->addKeyConfig( OKeyConfigItem( tr("Close Tab"), "close_tab",
71 QPixmap(), KeyCloseTab,
72 OKeyPair(Qt::Key_C, Qt::ControlButton) ));
70 s_manager->load(); 73 s_manager->load();
71 } 74 }
72 75
73 return s_manager; 76 return s_manager;
74} 77}
75 78
76 79
77IRCHistoryLineEdit::IRCHistoryLineEdit(QWidget *parent, const char *name) : QLineEdit(parent, name) { 80IRCHistoryLineEdit::IRCHistoryLineEdit(QWidget *parent, const char *name) : QLineEdit(parent, name) {
78 m_index = -1; 81 m_index = -1;
79 installEventFilter(this); 82 installEventFilter(this);
80} 83}
81 84
@@ -98,24 +101,26 @@ void IRCHistoryLineEdit::keyPressEvent(QKeyEvent *event) {
98 } else if (key == Key_Return) { 101 } else if (key == Key_Return) {
99 m_history.prepend(text()); 102 m_history.prepend(text());
100 m_index = -1; 103 m_index = -1;
101 } 104 }
102 105
103 switch( keyConfigInstance()->handleKeyEventId( event ) ) { 106 switch( keyConfigInstance()->handleKeyEventId( event ) ) {
104 case KeyNextTab: 107 case KeyNextTab:
105 emit nextTab(); 108 emit nextTab();
106 return; 109 return;
107 case KeyPrevTab: 110 case KeyPrevTab:
108 emit prevTab(); 111 emit prevTab();
109 return; 112 return;
113 case KeyCloseTab:
114 emit closeTab();
110 default: 115 default:
111 break; 116 break;
112 } 117 }
113 118
114 QLineEdit::keyPressEvent(event); 119 QLineEdit::keyPressEvent(event);
115} 120}
116 121
117bool IRCHistoryLineEdit::eventFilter(QObject *object, QEvent *event) { 122bool IRCHistoryLineEdit::eventFilter(QObject *object, QEvent *event) {
118 if (event->type() == QEvent::KeyPress) { 123 if (event->type() == QEvent::KeyPress) {
119 QKeyEvent *k = (QKeyEvent *) event; 124 QKeyEvent *k = (QKeyEvent *) event;
120 /* Catch tab characters */ 125 /* Catch tab characters */
121 if (k->key() == Key_Tab) { 126 if (k->key() == Key_Tab) {