-rw-r--r-- | noncore/net/opieirc/ircchanneltab.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/noncore/net/opieirc/ircchanneltab.cpp b/noncore/net/opieirc/ircchanneltab.cpp index 707e17f..881ded7 100644 --- a/noncore/net/opieirc/ircchanneltab.cpp +++ b/noncore/net/opieirc/ircchanneltab.cpp | |||
@@ -95,126 +95,129 @@ void IRCChannelTab::appendText(QString text) { | |||
95 | emit ping( title() ); | 95 | emit ping( title() ); |
96 | else if ( (p1 = text.find("ping", 0, false) )!= -1 && (p2 = text.find( m_parentTab->server()->nick(), 0,false )) != -1 ) { | 96 | else if ( (p1 = text.find("ping", 0, false) )!= -1 && (p2 = text.find( m_parentTab->server()->nick(), 0,false )) != -1 ) { |
97 | int col = text.findRev("color", -1, false); | 97 | int col = text.findRev("color", -1, false); |
98 | if ( col < p2 ) | 98 | if ( col < p2 ) |
99 | emit ping( title() ); | 99 | emit ping( title() ); |
100 | 100 | ||
101 | } | 101 | } |
102 | 102 | ||
103 | emit changed(this); | 103 | emit changed(this); |
104 | } | 104 | } |
105 | 105 | ||
106 | IRCChannelTab::~IRCChannelTab() { | 106 | IRCChannelTab::~IRCChannelTab() { |
107 | m_parentTab->removeChannelTab(this); | 107 | m_parentTab->removeChannelTab(this); |
108 | } | 108 | } |
109 | 109 | ||
110 | void IRCChannelTab::processCommand() { | 110 | void IRCChannelTab::processCommand() { |
111 | QString text = m_field->text(); | 111 | QString text = m_field->text(); |
112 | if (text.length()>0) { | 112 | if (text.length()>0) { |
113 | if (session()->isSessionActive()) { | 113 | if (session()->isSessionActive()) { |
114 | if (text.startsWith("/") && !text.startsWith("//")) { | 114 | if (text.startsWith("/") && !text.startsWith("//")) { |
115 | /* Command mode */ | 115 | /* Command mode */ |
116 | m_parentTab->executeCommand(this, text);; | 116 | m_parentTab->executeCommand(this, text);; |
117 | } else { | 117 | } else { |
118 | if (text.startsWith("//")) | 118 | if (text.startsWith("//")) |
119 | text = text.right(text.length()-1); | 119 | text = text.right(text.length()-1); |
120 | session()->sendMessage(m_channel, m_field->text()); | 120 | session()->sendMessage(m_channel, m_field->text()); |
121 | appendText("<font color=\"" + m_textColor + "\"><</font><font color=\"" + m_selfColor + "\">"+m_parentTab->server()->nick()+"</font><font color=\"" + m_textColor + "\">> "+IRCOutput::toHTML(m_field->text())+"</font><br>"); | 121 | appendText("<font color=\"" + m_textColor + "\"><</font><font color=\"" + m_selfColor + "\">"+m_parentTab->server()->nick()+"</font><font color=\"" + m_textColor + "\">> "+IRCOutput::toHTML(m_field->text())+"</font><br>"); |
122 | } | 122 | } |
123 | } else { | 123 | } else { |
124 | appendText("<font color=\"" + m_errorColor + "\">"+tr("Disconnected")+"</font><br>"); | 124 | appendText("<font color=\"" + m_errorColor + "\">"+tr("Disconnected")+"</font><br>"); |
125 | } | 125 | } |
126 | } | 126 | } |
127 | m_field->clear(); | 127 | m_field->clear(); |
128 | } | 128 | } |
129 | 129 | ||
130 | void IRCChannelTab::settingsChanged() { | 130 | void IRCChannelTab::settingsChanged() { |
131 | m_textview->setText("<qt bgcolor=\"" + m_backgroundColor + "\"/>"); | 131 | m_textview->setText("<qt bgcolor=\"" + m_backgroundColor + "\"/>"); |
132 | m_lines = 0; | 132 | m_lines = 0; |
133 | } | 133 | } |
134 | 134 | ||
135 | void IRCChannelTab::toggleList() { | 135 | void IRCChannelTab::toggleList() { |
136 | if (m_listVisible) { | 136 | if (m_listVisible) { |
137 | m_list->setMaximumWidth(0); | 137 | m_list->setMaximumWidth(0); |
138 | m_listButton->setText("<"); | 138 | m_listButton->setText("<"); |
139 | } else { | 139 | } else { |
140 | m_list->setMaximumWidth(LISTWIDTH); | 140 | m_list->setMaximumWidth(LISTWIDTH); |
141 | m_listButton->setText(">"); | 141 | m_listButton->setText(">"); |
142 | } | 142 | } |
143 | m_listVisible = !m_listVisible; | 143 | m_listVisible = !m_listVisible; |
144 | } | 144 | } |
145 | 145 | ||
146 | void IRCChannelTab::mouseButtonPressed(int mouse, QListBoxItem *, const QPoint &point) { | 146 | void IRCChannelTab::mouseButtonPressed(int mouse, QListBoxItem *, const QPoint &point) { |
147 | switch (mouse) { | 147 | switch (mouse) { |
148 | case 1: | 148 | case 1: |
149 | break; | 149 | break; |
150 | case 2: | 150 | case 2: |
151 | m_popup->popup(point); | 151 | m_popup->popup(point); |
152 | break; | 152 | break; |
153 | }; | 153 | }; |
154 | } | 154 | } |
155 | 155 | ||
156 | void IRCChannelTab::popupQuery( QListBoxItem *item) { | 156 | void IRCChannelTab::popupQuery( QListBoxItem *item) { |
157 | if (item) { | 157 | if (item) { |
158 | IRCPerson *person = session()->getPerson(item->text()); | 158 | IRCPerson *person = session()->getPerson(item->text()); |
159 | if (person) { | 159 | if (person) { |
160 | IRCQueryTab *tab = m_parentTab->getTabForQuery(person); | 160 | IRCQueryTab *tab = m_parentTab->getTabForQuery(person); |
161 | if (!tab) { | 161 | if (!tab) { |
162 | tab = new IRCQueryTab(person, m_parentTab, m_mainWindow, (QWidget *)parent()); | 162 | tab = new IRCQueryTab(person, m_parentTab, m_mainWindow, (QWidget *)parent()); |
163 | m_parentTab->addQueryTab(tab); | 163 | m_parentTab->addQueryTab(tab); |
164 | m_mainWindow->addTab(tab); | 164 | m_mainWindow->addTab(tab); |
165 | } | 165 | } |
166 | } | 166 | } |
167 | } | 167 | } |
168 | } | 168 | } |
169 | 169 | ||
170 | void IRCChannelTab::popupQuery() { | 170 | void IRCChannelTab::popupQuery() { |
171 | if ( m_list->currentItem() != -1 ) | 171 | if ( m_list->currentItem() != -1 ) |
172 | popupQuery( m_list->item(m_list->currentItem())); | 172 | popupQuery( m_list->item(m_list->currentItem())); |
173 | } | 173 | } |
174 | 174 | ||
175 | void IRCChannelTab::popupPing() { | 175 | void IRCChannelTab::popupPing() { |
176 | if(m_list->currentItem() != -1) | 176 | if(m_list->currentItem() != -1) |
177 | m_parentTab->session()->sendCTCPPing(m_list->text(m_list->currentItem())); | 177 | m_parentTab->session()->sendCTCPPing(m_list->text(m_list->currentItem())); |
178 | } | 178 | } |
179 | 179 | ||
180 | void IRCChannelTab::popupVersion() { | 180 | void IRCChannelTab::popupVersion() { |
181 | if(m_list->currentItem() != -1) | 181 | if(m_list->currentItem() != -1) |
182 | m_parentTab->session()->sendCTCPRequest(m_list->text(m_list->currentItem()), "VERSION", ""); | 182 | m_parentTab->session()->sendCTCPRequest(m_list->text(m_list->currentItem()), "VERSION", ""); |
183 | } | 183 | } |
184 | 184 | ||
185 | void IRCChannelTab::popupWhois() { | 185 | void IRCChannelTab::popupWhois() { |
186 | if(m_list->currentItem() != -1) | 186 | if(m_list->currentItem() != -1) |
187 | m_parentTab->session()->whois(m_list->text(m_list->currentItem())); | 187 | m_parentTab->session()->whois(m_list->text(m_list->currentItem())); |
188 | } | 188 | } |
189 | 189 | ||
190 | QString IRCChannelTab::title() { | 190 | QString IRCChannelTab::title() { |
191 | return m_channel->channelname(); | 191 | if(!m_channel->channelname().startsWith("&")) |
192 | return m_channel->channelname(); | ||
193 | |||
194 | return "&" + m_channel->channelname(); | ||
192 | } | 195 | } |
193 | 196 | ||
194 | IRCSession *IRCChannelTab::session() { | 197 | IRCSession *IRCChannelTab::session() { |
195 | return m_parentTab->session(); | 198 | return m_parentTab->session(); |
196 | } | 199 | } |
197 | 200 | ||
198 | void IRCChannelTab::remove() { | 201 | void IRCChannelTab::remove() { |
199 | if (session()->isSessionActive()) { | 202 | if (session()->isSessionActive()) { |
200 | session()->part(m_channel); | 203 | session()->part(m_channel); |
201 | } else { | 204 | } else { |
202 | m_mainWindow->killTab(this); | 205 | m_mainWindow->killTab(this); |
203 | } | 206 | } |
204 | } | 207 | } |
205 | 208 | ||
206 | void IRCChannelTab::enqueue(const QString &channel, const QString &message) { | 209 | void IRCChannelTab::enqueue(const QString &channel, const QString &message) { |
207 | if (m_queuedMessages.count() == (m_queuedMessages.size() - 1) ) | 210 | if (m_queuedMessages.count() == (m_queuedMessages.size() - 1) ) |
208 | /* 17 messages max */ | 211 | /* 17 messages max */ |
209 | return; | 212 | return; |
210 | m_queuedMessages.insert(channel, new QString(message)); | 213 | m_queuedMessages.insert(channel, new QString(message)); |
211 | } | 214 | } |
212 | 215 | ||
213 | IRCChannel *IRCChannelTab::channel() { | 216 | IRCChannel *IRCChannelTab::channel() { |
214 | return m_channel; | 217 | return m_channel; |
215 | } | 218 | } |
216 | 219 | ||
217 | IRCChannelList *IRCChannelTab::list() { | 220 | IRCChannelList *IRCChannelTab::list() { |
218 | return m_list; | 221 | return m_list; |
219 | } | 222 | } |
220 | 223 | ||