author | skyhusker <skyhusker> | 2005-01-26 22:45:53 (UTC) |
---|---|---|
committer | skyhusker <skyhusker> | 2005-01-26 22:45:53 (UTC) |
commit | f85af28663814f3262f5ecfcd20a4b4f67c23067 (patch) (unidiff) | |
tree | 994bd8c5a9f361ca7eff8ef9fb404f89f6f90f78 /noncore/net/opieirc/ircchanneltab.cpp | |
parent | cbaf2c1c6eb42bc8a283a40fe922603a44c29304 (diff) | |
download | opie-f85af28663814f3262f5ecfcd20a4b4f67c23067.zip opie-f85af28663814f3262f5ecfcd20a4b4f67c23067.tar.gz opie-f85af28663814f3262f5ecfcd20a4b4f67c23067.tar.bz2 |
* Created new class for IRCChannelPerson.
* Added whois, ping and version entries to channel popup menu.
* Fixed action on CTCP PING reply (was interpreted as a request).
Diffstat (limited to 'noncore/net/opieirc/ircchanneltab.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/net/opieirc/ircchanneltab.cpp | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/noncore/net/opieirc/ircchanneltab.cpp b/noncore/net/opieirc/ircchanneltab.cpp index 4a35929..3272a8a 100644 --- a/noncore/net/opieirc/ircchanneltab.cpp +++ b/noncore/net/opieirc/ircchanneltab.cpp | |||
@@ -4,12 +4,13 @@ | |||
4 | #include <qdict.h> | 4 | #include <qdict.h> |
5 | 5 | ||
6 | #include "ircchanneltab.h" | 6 | #include "ircchanneltab.h" |
7 | #include "ircservertab.h" | 7 | #include "ircservertab.h" |
8 | #include "ircmessageparser.h" | 8 | #include "ircmessageparser.h" |
9 | 9 | ||
10 | #include <opie2/odebug.h> | ||
10 | QDict<QString> IRCChannelTab::m_queuedMessages (17); | 11 | QDict<QString> IRCChannelTab::m_queuedMessages (17); |
11 | 12 | ||
12 | IRCChannelTab::IRCChannelTab(IRCChannel *channel, IRCServerTab *parentTab, MainWindow *mainWindow, QWidget *parent, const char *name, WFlags f) : IRCTab(parent, name, f) { | 13 | IRCChannelTab::IRCChannelTab(IRCChannel *channel, IRCServerTab *parentTab, MainWindow *mainWindow, QWidget *parent, const char *name, WFlags f) : IRCTab(parent, name, f) { |
13 | m_mainWindow = mainWindow; | 14 | m_mainWindow = mainWindow; |
14 | m_parentTab = parentTab; | 15 | m_parentTab = parentTab; |
15 | m_channel = channel; | 16 | m_channel = channel; |
@@ -38,17 +39,19 @@ IRCChannelTab::IRCChannelTab(IRCChannel *channel, IRCServerTab *parentTab, MainW | |||
38 | m_popup = new QPopupMenu(m_list); | 39 | m_popup = new QPopupMenu(m_list); |
39 | m_lines = 0; | 40 | m_lines = 0; |
40 | /* Required so that embedded-style "right" clicks work */ | 41 | /* Required so that embedded-style "right" clicks work */ |
41 | QPEApplication::setStylusOperation(m_list->viewport(), QPEApplication::RightOnHold); | 42 | QPEApplication::setStylusOperation(m_list->viewport(), QPEApplication::RightOnHold); |
42 | connect(m_list, SIGNAL(mouseButtonPressed(int,QListBoxItem*,const QPoint&)), this, SLOT(mouseButtonPressed(int,QListBoxItem*,const QPoint&))); | 43 | connect(m_list, SIGNAL(mouseButtonPressed(int,QListBoxItem*,const QPoint&)), this, SLOT(mouseButtonPressed(int,QListBoxItem*,const QPoint&))); |
43 | /* Construct the popup menu */ | 44 | /* Construct the popup menu */ |
44 | QPopupMenu *ctcpMenu = new QPopupMenu(m_list); | 45 | //QPopupMenu *ctcpMenu = new QPopupMenu(m_list); |
45 | m_popup->insertItem(Resource::loadPixmap("opieirc/query"), tr("Query"), this, SLOT(popupQuery())); | 46 | m_popup->insertItem(Resource::loadPixmap("opieirc/query"), tr("Query"), this, SLOT(popupQuery())); |
46 | ctcpMenu->insertItem(Resource::loadPixmap("opieirc/ping"), tr("Ping"), this, SLOT(popupPing())); | 47 | m_popup->insertSeparator(); |
47 | ctcpMenu->insertItem(Resource::loadPixmap("opieirc/version"), tr("Version"), this, SLOT(popupVersion())); | 48 | m_popup->insertItem(Resource::loadPixmap("opieirc/ping"), tr("Ping"), this, SLOT(popupPing())); |
48 | ctcpMenu->insertItem(Resource::loadPixmap("opieirc/whois"), tr("Whois"), this, SLOT(popupWhois())); | 49 | m_popup->insertItem(Resource::loadPixmap("opieirc/version"), tr("Version"), this, SLOT(popupVersion())); |
50 | m_popup->insertItem(Resource::loadPixmap("opieirc/whois"), tr("Whois"), this, SLOT(popupWhois())); | ||
51 | //m_popup->insertItem(ctcpMenu, "CTCP"); | ||
49 | connect(m_mainWindow, SIGNAL(updateScroll()), this, SLOT(scrolling())); | 52 | connect(m_mainWindow, SIGNAL(updateScroll()), this, SLOT(scrolling())); |
50 | m_layout->add(hbox); | 53 | m_layout->add(hbox); |
51 | hbox->show(); | 54 | hbox->show(); |
52 | m_layout->add(m_field); | 55 | m_layout->add(m_field); |
53 | m_field->setFocus(); | 56 | m_field->setFocus(); |
54 | m_field->setActiveWindow(); | 57 | m_field->setActiveWindow(); |
@@ -163,19 +166,24 @@ void IRCChannelTab::popupQuery( QListBoxItem *item) { | |||
163 | void IRCChannelTab::popupQuery() { | 166 | void IRCChannelTab::popupQuery() { |
164 | if ( m_list->currentItem() != -1 ) | 167 | if ( m_list->currentItem() != -1 ) |
165 | popupQuery( m_list->item(m_list->currentItem())); | 168 | popupQuery( m_list->item(m_list->currentItem())); |
166 | } | 169 | } |
167 | 170 | ||
168 | void IRCChannelTab::popupPing() { | 171 | void IRCChannelTab::popupPing() { |
169 | //HAHA, no wonder these don't work | 172 | if(m_list->currentItem() != -1) |
173 | m_parentTab->session()->sendCTCPPing(m_list->text(m_list->currentItem())); | ||
170 | } | 174 | } |
171 | 175 | ||
172 | void IRCChannelTab::popupVersion() { | 176 | void IRCChannelTab::popupVersion() { |
177 | if(m_list->currentItem() != -1) | ||
178 | m_parentTab->session()->sendCTCPRequest(m_list->text(m_list->currentItem()), "VERSION", ""); | ||
173 | } | 179 | } |
174 | 180 | ||
175 | void IRCChannelTab::popupWhois() { | 181 | void IRCChannelTab::popupWhois() { |
182 | if(m_list->currentItem() != -1) | ||
183 | m_parentTab->session()->whois(m_list->text(m_list->currentItem())); | ||
176 | } | 184 | } |
177 | 185 | ||
178 | QString IRCChannelTab::title() { | 186 | QString IRCChannelTab::title() { |
179 | return m_channel->channelname(); | 187 | return m_channel->channelname(); |
180 | } | 188 | } |
181 | 189 | ||