summaryrefslogtreecommitdiff
path: root/noncore/net
Unidiff
Diffstat (limited to 'noncore/net') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/opieirc/ircchanneltab.cpp17
-rw-r--r--noncore/net/opieirc/ircchanneltab.h20
-rw-r--r--noncore/net/opieirc/ircmessageparser.cpp2
-rw-r--r--noncore/net/opieirc/ircmisc.cpp53
-rw-r--r--noncore/net/opieirc/ircmisc.h27
-rw-r--r--noncore/net/opieirc/ircquerytab.cpp15
-rw-r--r--noncore/net/opieirc/ircquerytab.h6
-rw-r--r--noncore/net/opieirc/ircservertab.cpp15
-rw-r--r--noncore/net/opieirc/ircservertab.h4
-rw-r--r--noncore/net/opieirc/ircsettings.cpp60
-rw-r--r--noncore/net/opieirc/ircsettings.h18
-rw-r--r--noncore/net/opieirc/irctab.cpp2
-rw-r--r--noncore/net/opieirc/irctab.h3
-rw-r--r--noncore/net/opieirc/ircversion.h2
-rw-r--r--noncore/net/opieirc/mainwindow.cpp5
-rw-r--r--noncore/net/opieirc/opie-irc.control3
16 files changed, 186 insertions, 66 deletions
diff --git a/noncore/net/opieirc/ircchanneltab.cpp b/noncore/net/opieirc/ircchanneltab.cpp
index ddd6cf1..f19e019 100644
--- a/noncore/net/opieirc/ircchanneltab.cpp
+++ b/noncore/net/opieirc/ircchanneltab.cpp
@@ -1,9 +1,10 @@
1#include <qpe/qpeapplication.h> 1#include <qpe/qpeapplication.h>
2#include <qpe/resource.h> 2#include <qpe/resource.h>
3#include <qcursor.h> 3#include <qcursor.h>
4#include <stdio.h>
4#include <qhbox.h> 5#include <qhbox.h>
5#include "ircchanneltab.h" 6#include "ircchanneltab.h"
6#include "ircservertab.h" 7#include "ircservertab.h"
7 8
8IRCChannelTab::IRCChannelTab(IRCChannel *channel, IRCServerTab *parentTab, MainWindow *mainWindow, QWidget *parent, const char *name, WFlags f) : IRCTab(parent, name, f) { 9IRCChannelTab::IRCChannelTab(IRCChannel *channel, IRCServerTab *parentTab, MainWindow *mainWindow, QWidget *parent, const char *name, WFlags f) : IRCTab(parent, name, f) {
9 m_mainWindow = mainWindow; 10 m_mainWindow = mainWindow;
@@ -19,17 +20,19 @@ IRCChannelTab::IRCChannelTab(IRCChannel *channel, IRCServerTab *parentTab, MainW
19 m_textview->setCornerWidget(m_listButton); 20 m_textview->setCornerWidget(m_listButton);
20 m_textview->setTextFormat(RichText); 21 m_textview->setTextFormat(RichText);
21 connect(m_listButton, SIGNAL(clicked()), this, SLOT(toggleList())); 22 connect(m_listButton, SIGNAL(clicked()), this, SLOT(toggleList()));
22 m_list = new IRCChannelList(m_channel, hbox); 23 m_list = new IRCChannelList(m_channel, hbox);
23 m_list->update(); 24 m_list->update();
24 m_list->setMaximumWidth(LISTWIDTH); 25 m_list->setMaximumWidth(LISTWIDTH);
25 m_field = new QLineEdit(this); 26 m_field = new IRCHistoryLineEdit(this);
26 m_popup = new QPopupMenu(m_list); 27 m_popup = new QPopupMenu(m_list);
28 m_lines = 0;
27 /* Required so that embedded-style "right" clicks work */ 29 /* Required so that embedded-style "right" clicks work */
28 QPEApplication::setStylusOperation(m_list->viewport(), QPEApplication::RightOnHold); 30 QPEApplication::setStylusOperation(m_list->viewport(), QPEApplication::RightOnHold);
29 connect(m_list, SIGNAL(mouseButtonPressed(int, QListBoxItem *, const QPoint&)), this, SLOT(mouseButtonPressed(int, QListBoxItem *, const QPoint &))); 31 connect(m_list, SIGNAL(mouseButtonPressed(int, QListBoxItem *, const QPoint&)), this, SLOT(mouseButtonPressed(int, QListBoxItem *, const QPoint &)));
32
30 /* Construct the popup menu */ 33 /* Construct the popup menu */
31 QPopupMenu *ctcpMenu = new QPopupMenu(m_list); 34 QPopupMenu *ctcpMenu = new QPopupMenu(m_list);
32 m_popup->insertItem(Resource::loadPixmap("opieirc/ctcp"), tr("CTCP"), ctcpMenu); 35 m_popup->insertItem(Resource::loadPixmap("opieirc/ctcp"), tr("CTCP"), ctcpMenu);
33 m_popup->insertItem(Resource::loadPixmap("opieirc/query"), tr("Query"), this, SLOT(popupQuery())); 36 m_popup->insertItem(Resource::loadPixmap("opieirc/query"), tr("Query"), this, SLOT(popupQuery()));
34 ctcpMenu->insertItem(Resource::loadPixmap("opieirc/ping"), tr("Ping"), this, SLOT(popupPing())); 37 ctcpMenu->insertItem(Resource::loadPixmap("opieirc/ping"), tr("Ping"), this, SLOT(popupPing()));
35 ctcpMenu->insertItem(Resource::loadPixmap("opieirc/version"), tr("Version"), this, SLOT(popupVersion())); 38 ctcpMenu->insertItem(Resource::loadPixmap("opieirc/version"), tr("Version"), this, SLOT(popupVersion()));
@@ -42,13 +45,22 @@ IRCChannelTab::IRCChannelTab(IRCChannel *channel, IRCServerTab *parentTab, MainW
42 connect(m_field, SIGNAL(returnPressed()), this, SLOT(processCommand())); 45 connect(m_field, SIGNAL(returnPressed()), this, SLOT(processCommand()));
43 settingsChanged(); 46 settingsChanged();
44} 47}
45 48
46void IRCChannelTab::appendText(QString text) { 49void IRCChannelTab::appendText(QString text) {
47 /* not using append because it creates layout problems */ 50 /* not using append because it creates layout problems */
48 m_textview->setText(m_textview->text() + text); 51 QString txt = m_textview->text() + text + "\n";
52 if (m_maxLines > 0 && m_lines >= m_maxLines) {
53 int firstBreak = txt.find('\n');
54 if (firstBreak != -1) {
55 txt = "<qt bgcolor=\"" + m_backgroundColor + "\"/>" + txt.right(txt.length() - (firstBreak + 1));
56 }
57 } else {
58 m_lines++;
59 }
60 m_textview->setText(txt);
49 m_textview->ensureVisible(0, m_textview->contentsHeight()); 61 m_textview->ensureVisible(0, m_textview->contentsHeight());
50 emit changed(this); 62 emit changed(this);
51} 63}
52 64
53IRCChannelTab::~IRCChannelTab() { 65IRCChannelTab::~IRCChannelTab() {
54 m_parentTab->removeChannelTab(this); 66 m_parentTab->removeChannelTab(this);
@@ -73,12 +85,13 @@ void IRCChannelTab::processCommand() {
73 } 85 }
74 m_field->clear(); 86 m_field->clear();
75} 87}
76 88
77void IRCChannelTab::settingsChanged() { 89void IRCChannelTab::settingsChanged() {
78 m_textview->setText("<qt bgcolor=\"" + m_backgroundColor + "\"/>"); 90 m_textview->setText("<qt bgcolor=\"" + m_backgroundColor + "\"/>");
91 m_lines = 0;
79} 92}
80 93
81void IRCChannelTab::toggleList() { 94void IRCChannelTab::toggleList() {
82 if (m_listVisible) { 95 if (m_listVisible) {
83 m_list->setMaximumWidth(0); 96 m_list->setMaximumWidth(0);
84 m_listButton->setText("<"); 97 m_listButton->setText("<");
diff --git a/noncore/net/opieirc/ircchanneltab.h b/noncore/net/opieirc/ircchanneltab.h
index 971614b..a03ee3e 100644
--- a/noncore/net/opieirc/ircchanneltab.h
+++ b/noncore/net/opieirc/ircchanneltab.h
@@ -22,12 +22,13 @@
22#define __IRCCHANNELTAB_H 22#define __IRCCHANNELTAB_H
23 23
24#include <qpopupmenu.h> 24#include <qpopupmenu.h>
25#include <qpushbutton.h> 25#include <qpushbutton.h>
26#include "irctab.h" 26#include "irctab.h"
27#include "ircsession.h" 27#include "ircsession.h"
28#include "ircmisc.h"
28#include "mainwindow.h" 29#include "mainwindow.h"
29#include "ircchannellist.h" 30#include "ircchannellist.h"
30 31
31#define LISTWIDTH 70 32#define LISTWIDTH 70
32 33
33class IRCServerTab; 34class IRCServerTab;
@@ -53,18 +54,19 @@ protected slots:
53 /* Popup slots */ 54 /* Popup slots */
54 void popupQuery(); 55 void popupQuery();
55 void popupPing(); 56 void popupPing();
56 void popupVersion(); 57 void popupVersion();
57 void popupWhois(); 58 void popupWhois();
58protected: 59protected:
59 IRCServerTab *m_parentTab; 60 IRCServerTab *m_parentTab;
60 IRCChannel *m_channel; 61 IRCChannel *m_channel;
61 IRCChannelList *m_list; 62 IRCChannelList *m_list;
62 QPushButton *m_listButton; 63 QPushButton *m_listButton;
63 MainWindow *m_mainWindow; 64 MainWindow *m_mainWindow;
64 QTextView *m_textview; 65 QTextView *m_textview;
65 QLineEdit *m_field; 66 IRCHistoryLineEdit *m_field;
66 QPopupMenu *m_popup; 67 QPopupMenu *m_popup;
67 bool m_listVisible; 68 bool m_listVisible;
69 int m_lines;
68}; 70};
69 71
70#endif /* __IRCCHANNELTAB_H */ 72#endif /* __IRCCHANNELTAB_H */
diff --git a/noncore/net/opieirc/ircmessageparser.cpp b/noncore/net/opieirc/ircmessageparser.cpp
index a95c64e..e8d3b1a 100644
--- a/noncore/net/opieirc/ircmessageparser.cpp
+++ b/noncore/net/opieirc/ircmessageparser.cpp
@@ -514,8 +514,8 @@ void IRCMessageParser::parseNumericalTopic(IRCMessage *message) {
514 IRCOutput output(OUTPUT_TOPIC, tr("Topic for channel " + message->param(1) + " is \"" + message->param(2) + "\"")); 514 IRCOutput output(OUTPUT_TOPIC, tr("Topic for channel " + message->param(1) + " is \"" + message->param(2) + "\""));
515 output.addParam(0); 515 output.addParam(0);
516 emit outputReady(output); 516 emit outputReady(output);
517 } 517 }
518} 518}
519 519
520void IRCMessageParser::parseNumericalTopicWhoTime(IRCMessage *message) { 520void IRCMessageParser::parseNumericalTopicWhoTime(IRCMessage *) {
521} 521}
diff --git a/noncore/net/opieirc/ircmisc.cpp b/noncore/net/opieirc/ircmisc.cpp
index dd7292c..2e7f316 100644
--- a/noncore/net/opieirc/ircmisc.cpp
+++ b/noncore/net/opieirc/ircmisc.cpp
@@ -27,40 +27,71 @@ IRCFramedColorLabel::IRCFramedColorLabel(QColor color, QWidget *parent, const ch
27} 27}
28 28
29QColor IRCFramedColorLabel::color() { 29QColor IRCFramedColorLabel::color() {
30 return m_label->color(); 30 return m_label->color();
31} 31}
32 32
33
33IRCTabBar::IRCTabBar(QWidget *parent, const char *name) : QTabBar(parent, name) { 34IRCTabBar::IRCTabBar(QWidget *parent, const char *name) : QTabBar(parent, name) {
34} 35}
35 36
36int IRCTabBar::insertTab(QTab *tab, int index = -1) { 37int IRCTabBar::insertTab(QTab *tab, int index = -1) {
37 if (m_colors.size() == (unsigned int)count()) 38 /* FIXME: find some nicer way to do this */
38 m_colors.resize(m_colors.size() * 2 + 1); 39 QExtTab *ext = new QExtTab();
39 if (index == -1) 40 ext->color = black;
40 m_colors.insert(count(), &black); 41 ext->label = tab->text();
41 else 42 ext->r = tab->rect();
42 m_colors.insert(index, &black); 43 ext->enabled = tab->isEnabled();
43 return QTabBar::insertTab(tab, index); 44 ext->iconset = tab->iconSet();
45 delete tab;
46 return QTabBar::insertTab(ext, index);
44} 47}
45 48
46void IRCTabBar::setTabColor(int index, const QColor *color) { 49void IRCTabBar::setTabColor(int index, QColor color) {
47 m_colors.insert(index, color); 50 ((QExtTab *)tab(index))->color = color;
48 update(); 51 update();
49} 52}
50 53
51void IRCTabBar::paintLabel(QPainter* p, const QRect& br, QTab* t, bool focus) const { 54void IRCTabBar::paintLabel(QPainter* p, const QRect& br, QTab* t, bool focus) const {
52 QRect r = br; 55 QRect r = br;
53 QTabBar::paintLabel(p, br, t, focus); 56 QTabBar::paintLabel(p, br, t, focus);
54 if (t->id == currentTab()) 57 if (t->id == currentTab())
55 r.setBottom(r.bottom() - style().defaultFrameWidth()); 58 r.setBottom(r.bottom() - style().defaultFrameWidth());
56 p->setPen(*m_colors.at(t->id)); 59 p->setPen(((QExtTab *)t)->color);
57 p->drawText(r, AlignCenter | ShowPrefix, t->label); 60 p->drawText(r, AlignCenter | ShowPrefix, t->label);
58} 61}
59 62
60IRCTabWidget::IRCTabWidget(QWidget *parent, const char *name) : QTabWidget(parent, name) { 63IRCTabWidget::IRCTabWidget(QWidget *parent, const char *name) : QTabWidget(parent, name) {
61 setTabBar(new IRCTabBar(this, "tab control")); 64 setTabBar(new IRCTabBar(this, "tab control"));
62} 65}
63 66
64void IRCTabWidget::setTabColor(int index, const QColor *color) { 67void IRCTabWidget::setTabColor(int index, QColor color) {
65 ((IRCTabBar *)tabBar())->setTabColor(index, color); 68 ((IRCTabBar *)tabBar())->setTabColor(index, color);
66} 69}
70
71
72IRCHistoryLineEdit::IRCHistoryLineEdit(QWidget *parent, const char *name) : QLineEdit(parent, name) {
73 m_index = -1;
74}
75
76void IRCHistoryLineEdit::keyPressEvent(QKeyEvent *event) {
77 int key = event->key();
78 if (key == Key_Up) {
79 if (m_history.count() > 0 && m_index < (signed int)m_history.count()-1) {
80 m_index++;
81 setText(m_history[m_index]);
82 }
83 } else if (key == Key_Down) {
84 if (m_history.count() > 0 && m_index > 0) {
85 m_index--;
86 setText(m_history[m_index]);
87 }
88 if (m_index == 0) {
89 m_index = -1;
90 setText("");
91 }
92 } else if (key == Key_Return) {
93 m_history.prepend(text());
94 m_index = -1;
95 }
96 QLineEdit::keyPressEvent(event);
97}
diff --git a/noncore/net/opieirc/ircmisc.h b/noncore/net/opieirc/ircmisc.h
index 4df6ce0..7151e6b 100644
--- a/noncore/net/opieirc/ircmisc.h
+++ b/noncore/net/opieirc/ircmisc.h
@@ -19,16 +19,17 @@
19*/ 19*/
20 20
21#ifndef __IRCMISC_H 21#ifndef __IRCMISC_H
22#define __IRCMISC_H 22#define __IRCMISC_H
23 23
24#include <qtabwidget.h> 24#include <qtabwidget.h>
25#include <qlineedit.h>
25#include <qtabbar.h> 26#include <qtabbar.h>
26#include <qlabel.h> 27#include <qlabel.h>
27#include <qcolor.h> 28#include <qcolor.h>
28#include <qvector.h> 29#include <qarray.h>
29 30
30/* IRCFramedColorLabel is used to display a color */ 31/* IRCFramedColorLabel is used to display a color */
31 32
32class IRCColorLabel : public QLabel { 33class IRCColorLabel : public QLabel {
33 Q_OBJECT 34 Q_OBJECT
34public: 35public:
@@ -47,26 +48,44 @@ public:
47protected: 48protected:
48 IRCColorLabel *m_label; 49 IRCColorLabel *m_label;
49}; 50};
50 51
51/* Custom colored QTabWidget */ 52/* Custom colored QTabWidget */
52 53
54class QExtTab : public QTab {
55public:
56 QColor color;
57};
58
53class IRCTabWidget : public QTabWidget { 59class IRCTabWidget : public QTabWidget {
54 Q_OBJECT 60 Q_OBJECT
55public: 61public:
56 IRCTabWidget(QWidget *parent = 0, const char *name = 0); 62 IRCTabWidget(QWidget *parent = 0, const char *name = 0);
57 void setTabColor(int index, const QColor *color); 63 void setTabColor(int index, QColor color);
58}; 64};
59 65
60class IRCTabBar : public QTabBar { 66class IRCTabBar : public QTabBar {
61 Q_OBJECT 67 Q_OBJECT
62public: 68public:
63 IRCTabBar(QWidget *parent = 0, const char *name = 0); 69 IRCTabBar(QWidget *parent = 0, const char *name = 0);
64 void setTabColor(int index, const QColor *color); 70 void setTabColor(int index, QColor color);
65protected: 71protected:
66 void paintLabel(QPainter*, const QRect&, QTab*, bool) const; 72 void paintLabel(QPainter*, const QRect&, QTab*, bool) const;
67 int insertTab(QTab *, int index = -1); 73 int insertTab(QTab *, int index = -1);
68protected: 74protected:
69 QVector<QColor> m_colors; 75 QArray<QColor> m_colors;
76};
77
78/* A QLineEdit with history functionality */
79
80class IRCHistoryLineEdit : public QLineEdit {
81 Q_OBJECT
82public:
83 IRCHistoryLineEdit(QWidget *parent = 0, const char *name = 0);
84protected:
85 void keyPressEvent(QKeyEvent *);
86protected:
87 QStringList m_history;
88 int m_index;
70}; 89};
71 90
72#endif /* __IRCMISC_H */ 91#endif /* __IRCMISC_H */
diff --git a/noncore/net/opieirc/ircquerytab.cpp b/noncore/net/opieirc/ircquerytab.cpp
index b946174..869e4f7 100644
--- a/noncore/net/opieirc/ircquerytab.cpp
+++ b/noncore/net/opieirc/ircquerytab.cpp
@@ -2,31 +2,41 @@
2#include "ircquerytab.h" 2#include "ircquerytab.h"
3#include "ircservertab.h" 3#include "ircservertab.h"
4 4
5IRCQueryTab::IRCQueryTab(IRCPerson *person, IRCServerTab *parentTab, MainWindow *mainWindow, QWidget *parent, const char *name, WFlags f) : IRCTab(parent, name, f) { 5IRCQueryTab::IRCQueryTab(IRCPerson *person, IRCServerTab *parentTab, MainWindow *mainWindow, QWidget *parent, const char *name, WFlags f) : IRCTab(parent, name, f) {
6 m_mainWindow = mainWindow; 6 m_mainWindow = mainWindow;
7 m_parentTab = parentTab; 7 m_parentTab = parentTab;
8 m_lines = 0;
8 m_person = new IRCPerson(*person); /* We need this (the person might sign off and the original IRCPerson gets deleted) */ 9 m_person = new IRCPerson(*person); /* We need this (the person might sign off and the original IRCPerson gets deleted) */
9 m_description->setText(tr("Talking to ") + " <b>" + person->nick() + "</b>"); 10 m_description->setText(tr("Talking to ") + " <b>" + person->nick() + "</b>");
10 QHBox *hbox = new QHBox(this); 11 QHBox *hbox = new QHBox(this);
11 m_textview = new QTextView(hbox); 12 m_textview = new QTextView(hbox);
12 m_textview->setHScrollBarMode(QScrollView::AlwaysOff); 13 m_textview->setHScrollBarMode(QScrollView::AlwaysOff);
13 m_textview->setVScrollBarMode(QScrollView::AlwaysOn); 14 m_textview->setVScrollBarMode(QScrollView::AlwaysOn);
14 m_textview->setTextFormat(RichText); 15 m_textview->setTextFormat(RichText);
15 m_field = new QLineEdit(this); 16 m_field = new IRCHistoryLineEdit(this);
16 m_layout->add(hbox); 17 m_layout->add(hbox);
17 hbox->show(); 18 hbox->show();
18 m_layout->add(m_field); 19 m_layout->add(m_field);
19 m_field->setFocus(); 20 m_field->setFocus();
20 connect(m_field, SIGNAL(returnPressed()), this, SLOT(processCommand())); 21 connect(m_field, SIGNAL(returnPressed()), this, SLOT(processCommand()));
21 settingsChanged(); 22 settingsChanged();
22} 23}
23 24
24void IRCQueryTab::appendText(QString text) { 25void IRCQueryTab::appendText(QString text) {
25 /* not using append because it creates layout problems */ 26 /* not using append because it creates layout problems */
26 m_textview->setText(m_textview->text() + text); 27 QString txt = m_textview->text() + text + "\n";
28 if (m_maxLines > 0 && m_lines >= m_maxLines) {
29 int firstBreak = txt.find('\n');
30 if (firstBreak != -1) {
31 txt = "<qt bgcolor=\"" + m_backgroundColor + "\"/>" + txt.right(txt.length() - (firstBreak + 1));
32 }
33 } else {
34 m_lines++;
35 }
36 m_textview->setText(txt);
27 m_textview->ensureVisible(0, m_textview->contentsHeight()); 37 m_textview->ensureVisible(0, m_textview->contentsHeight());
28 emit changed(this); 38 emit changed(this);
29} 39}
30 40
31IRCQueryTab::~IRCQueryTab() { 41IRCQueryTab::~IRCQueryTab() {
32 m_parentTab->removeQueryTab(this); 42 m_parentTab->removeQueryTab(this);
@@ -60,12 +70,13 @@ void IRCQueryTab::display(IRCOutput output) {
60 appendText("<font color=\"" + m_otherColor + "\">" + output.htmlMessage() + "<br>"); 70 appendText("<font color=\"" + m_otherColor + "\">" + output.htmlMessage() + "<br>");
61 } 71 }
62} 72}
63 73
64void IRCQueryTab::settingsChanged() { 74void IRCQueryTab::settingsChanged() {
65 m_textview->setText("<qt bgcolor=\"" + m_backgroundColor + "\"/>"); 75 m_textview->setText("<qt bgcolor=\"" + m_backgroundColor + "\"/>");
76 m_lines = 0;
66} 77}
67 78
68QString IRCQueryTab::title() { 79QString IRCQueryTab::title() {
69 return m_person->nick(); 80 return m_person->nick();
70} 81}
71 82
diff --git a/noncore/net/opieirc/ircquerytab.h b/noncore/net/opieirc/ircquerytab.h
index 07fa57f..f9cc8e1 100644
--- a/noncore/net/opieirc/ircquerytab.h
+++ b/noncore/net/opieirc/ircquerytab.h
@@ -18,14 +18,15 @@
18 18
19*/ 19*/
20 20
21#ifndef __IRCQUERYTAB_H 21#ifndef __IRCQUERYTAB_H
22#define __IRCQUERYTAB_H 22#define __IRCQUERYTAB_H
23 23
24#include "ircsession.h"
25#include "mainwindow.h" 24#include "mainwindow.h"
25#include "ircsession.h"
26#include "ircmisc.h"
26 27
27class IRCServerTab; 28class IRCServerTab;
28class IRCQueryTab : public IRCTab { 29class IRCQueryTab : public IRCTab {
29 Q_OBJECT 30 Q_OBJECT
30public: 31public:
31 /* IRCTab implementation */ 32 /* IRCTab implementation */
@@ -43,10 +44,11 @@ public slots:
43protected: 44protected:
44 bool m_close; 45 bool m_close;
45 MainWindow *m_mainWindow; 46 MainWindow *m_mainWindow;
46 IRCServerTab *m_parentTab; 47 IRCServerTab *m_parentTab;
47 IRCPerson *m_person; 48 IRCPerson *m_person;
48 QTextView *m_textview; 49 QTextView *m_textview;
49 QLineEdit *m_field; 50 IRCHistoryLineEdit *m_field;
51 int m_lines;
50}; 52};
51 53
52#endif /* __IRCQUERYTAB_H */ 54#endif /* __IRCQUERYTAB_H */
diff --git a/noncore/net/opieirc/ircservertab.cpp b/noncore/net/opieirc/ircservertab.cpp
index 4ed5364..5d1e290 100644
--- a/noncore/net/opieirc/ircservertab.cpp
+++ b/noncore/net/opieirc/ircservertab.cpp
@@ -4,29 +4,39 @@
4 4
5IRCServerTab::IRCServerTab(IRCServer server, MainWindow *mainWindow, QWidget *parent, const char *name, WFlags f) : IRCTab(parent, name, f) { 5IRCServerTab::IRCServerTab(IRCServer server, MainWindow *mainWindow, QWidget *parent, const char *name, WFlags f) : IRCTab(parent, name, f) {
6 m_server = server; 6 m_server = server;
7 m_session = new IRCSession(&m_server); 7 m_session = new IRCSession(&m_server);
8 m_mainWindow = mainWindow; 8 m_mainWindow = mainWindow;
9 m_close = FALSE; 9 m_close = FALSE;
10 m_lines = 0;
10 m_description->setText(tr("Connection to")+" <b>" + server.hostname() + ":" + QString::number(server.port()) + "</b>"); 11 m_description->setText(tr("Connection to")+" <b>" + server.hostname() + ":" + QString::number(server.port()) + "</b>");
11 m_textview = new QTextView(this); 12 m_textview = new QTextView(this);
12 m_textview->setHScrollBarMode(QScrollView::AlwaysOff); 13 m_textview->setHScrollBarMode(QScrollView::AlwaysOff);
13 m_textview->setVScrollBarMode(QScrollView::AlwaysOn); 14 m_textview->setVScrollBarMode(QScrollView::AlwaysOn);
14 m_textview->setTextFormat(RichText); 15 m_textview->setTextFormat(RichText);
15 m_layout->add(m_textview); 16 m_layout->add(m_textview);
16 m_field = new QLineEdit(this); 17 m_field = new IRCHistoryLineEdit(this);
17 m_layout->add(m_field); 18 m_layout->add(m_field);
18 connect(m_field, SIGNAL(returnPressed()), this, SLOT(processCommand())); 19 connect(m_field, SIGNAL(returnPressed()), this, SLOT(processCommand()));
19 m_field->setFocus(); 20 m_field->setFocus();
20 connect(m_session, SIGNAL(outputReady(IRCOutput)), this, SLOT(display(IRCOutput))); 21 connect(m_session, SIGNAL(outputReady(IRCOutput)), this, SLOT(display(IRCOutput)));
21 settingsChanged(); 22 settingsChanged();
22} 23}
23 24
24void IRCServerTab::appendText(QString text) { 25void IRCServerTab::appendText(QString text) {
25 /* not using append because it creates layout problems */ 26 /* not using append because it creates layout problems */
26 m_textview->setText(m_textview->text() + text); 27 QString txt = m_textview->text() + text + "\n";
28 if (m_maxLines > 0 && m_lines >= m_maxLines) {
29 int firstBreak = txt.find('\n');
30 if (firstBreak != -1) {
31 txt = "<qt bgcolor=\"" + m_backgroundColor + "\"/>" + txt.right(txt.length() - (firstBreak + 1));
32 }
33 } else {
34 m_lines++;
35 }
36 m_textview->setText(txt);
27 m_textview->ensureVisible(0, m_textview->contentsHeight()); 37 m_textview->ensureVisible(0, m_textview->contentsHeight());
28 emit changed(this); 38 emit changed(this);
29} 39}
30 40
31IRCServerTab::~IRCServerTab() { 41IRCServerTab::~IRCServerTab() {
32 delete m_session; 42 delete m_session;
@@ -55,12 +65,13 @@ IRCSession *IRCServerTab::session() {
55IRCServer *IRCServerTab::server() { 65IRCServer *IRCServerTab::server() {
56 return &m_server; 66 return &m_server;
57} 67}
58 68
59void IRCServerTab::settingsChanged() { 69void IRCServerTab::settingsChanged() {
60 m_textview->setText("<qt bgcolor=\"" + m_backgroundColor + "\"/>"); 70 m_textview->setText("<qt bgcolor=\"" + m_backgroundColor + "\"/>");
71 m_lines = 0;
61} 72}
62 73
63void IRCServerTab::executeCommand(IRCTab *tab, QString line) { 74void IRCServerTab::executeCommand(IRCTab *tab, QString line) {
64 QTextIStream stream(&line); 75 QTextIStream stream(&line);
65 QString command; 76 QString command;
66 stream >> command; 77 stream >> command;
diff --git a/noncore/net/opieirc/ircservertab.h b/noncore/net/opieirc/ircservertab.h
index 698689a..8d24cba 100644
--- a/noncore/net/opieirc/ircservertab.h
+++ b/noncore/net/opieirc/ircservertab.h
@@ -23,12 +23,13 @@
23 23
24#include "irctab.h" 24#include "irctab.h"
25#include "ircsession.h" 25#include "ircsession.h"
26#include "mainwindow.h" 26#include "mainwindow.h"
27#include "ircchanneltab.h" 27#include "ircchanneltab.h"
28#include "ircquerytab.h" 28#include "ircquerytab.h"
29#include "ircmisc.h"
29 30
30class IRCServerTab : public IRCTab { 31class IRCServerTab : public IRCTab {
31 Q_OBJECT 32 Q_OBJECT
32public: 33public:
33 /* IRCTab implementation */ 34 /* IRCTab implementation */
34 IRCServerTab(IRCServer server, MainWindow *mainWindow, QWidget *parent = 0, const char *name = 0, WFlags f = 0); 35 IRCServerTab(IRCServer server, MainWindow *mainWindow, QWidget *parent = 0, const char *name = 0, WFlags f = 0);
@@ -55,18 +56,19 @@ public slots:
55 void remove(); 56 void remove();
56 void processCommand(); 57 void processCommand();
57 void settingsChanged(); 58 void settingsChanged();
58protected slots: 59protected slots:
59 void display(IRCOutput output); 60 void display(IRCOutput output);
60protected: 61protected:
62 int m_lines;
61 bool m_close; 63 bool m_close;
62 IRCServer m_server; 64 IRCServer m_server;
63 IRCSession *m_session; 65 IRCSession *m_session;
64 MainWindow *m_mainWindow; 66 MainWindow *m_mainWindow;
65 QTextView *m_textview; 67 QTextView *m_textview;
66 QLineEdit *m_field; 68 IRCHistoryLineEdit *m_field;
67 /* Channel tabs associated with this server tab */ 69 /* Channel tabs associated with this server tab */
68 QList<IRCChannelTab> m_channelTabs; 70 QList<IRCChannelTab> m_channelTabs;
69 /* Query tabs associated with this server tab */ 71 /* Query tabs associated with this server tab */
70 QList<IRCQueryTab> m_queryTabs; 72 QList<IRCQueryTab> m_queryTabs;
71}; 73};
72 74
diff --git a/noncore/net/opieirc/ircsettings.cpp b/noncore/net/opieirc/ircsettings.cpp
index d1fef67..1903e87 100644
--- a/noncore/net/opieirc/ircsettings.cpp
+++ b/noncore/net/opieirc/ircsettings.cpp
@@ -1,46 +1,68 @@
1#include <qlayout.h> 1#include <qlayout.h>
2#include <qvalidator.h>
3#include <qscrollview.h>
2#include "ircsettings.h" 4#include "ircsettings.h"
3#include "irctab.h" 5#include "irctab.h"
4#include "ircmisc.h" 6#include "ircmisc.h"
5#include <stdio.h>
6 7
7IRCSettings::IRCSettings(QWidget* parent, const char* name, bool modal, WFlags f) : QDialog(parent, name, modal, f) { 8IRCSettings::IRCSettings(QWidget* parent, const char* name, bool modal, WFlags f) : QDialog(parent, name, modal, f) {
9 setCaption("Settings");
8 m_config = new Config("OpieIRC"); 10 m_config = new Config("OpieIRC");
9 m_config->setGroup("OpieIRC"); 11 m_config->setGroup("OpieIRC");
10 12 QHBoxLayout *l = new QHBoxLayout(this, 2, 2);
11 setCaption("Settings"); 13 QTabWidget *tw = new QTabWidget(this);
12 QGridLayout *layout = new QGridLayout(this, 7, 2, 5, 0); 14 l->addWidget(tw);
13 QLabel *label = new QLabel(tr("Background color :"), this); 15 /* General Configuration */
16 QWidget *widget = new QWidget(tw);
17 QGridLayout *layout = new QGridLayout(widget, 1, 2, 5, 0);
18 QLabel *label = new QLabel(tr("Lines displayed :"), widget);
19 layout->addWidget(label, 0, 0);
20 m_lines = new QLineEdit(m_config->readEntry("Lines", "100"), widget);
21 QIntValidator *validator = new QIntValidator(this);
22 validator->setTop(10000);
23 validator->setBottom(0);
24 m_lines->setValidator(validator);
25 layout->addWidget(m_lines, 0, 1);
26 tw->addTab(widget, tr("General"));
27
28 /* Color configuration */
29 QScrollView *view = new QScrollView(tw);
30 view->setResizePolicy(QScrollView::AutoOneFit);
31 widget = new QWidget(view->viewport());
32 view->addChild(widget);
33 layout = new QGridLayout(widget, 7, 2, 5, 0);
34 label = new QLabel(tr("Background color :"), widget);
14 layout->addWidget(label, 0, 0); 35 layout->addWidget(label, 0, 0);
15 m_background = new IRCFramedColorLabel(QColor(m_config->readEntry("BackgroundColor", "#FFFFFF")), this); 36 m_background = new IRCFramedColorLabel(QColor(m_config->readEntry("BackgroundColor", "#FFFFFF")), widget);
16 layout->addWidget(m_background, 0, 1); 37 layout->addWidget(m_background, 0, 1);
17 label = new QLabel(tr("Normal text color :"), this); 38 label = new QLabel(tr("Normal text color :"), widget);
18 layout->addWidget(label, 1, 0); 39 layout->addWidget(label, 1, 0);
19 m_text = new IRCFramedColorLabel(m_config->readEntry("TextColor", "#000000"), this); 40 m_text = new IRCFramedColorLabel(m_config->readEntry("TextColor", "#000000"), widget);
20 layout->addWidget(m_text, 1, 1); 41 layout->addWidget(m_text, 1, 1);
21 label = new QLabel(tr("Error color :"), this); 42 label = new QLabel(tr("Error color :"), widget);
22 layout->addWidget(label, 2, 0); 43 layout->addWidget(label, 2, 0);
23 m_error = new IRCFramedColorLabel(m_config->readEntry("ErrorColor", "#FF0000"), this); 44 m_error = new IRCFramedColorLabel(m_config->readEntry("ErrorColor", "#FF0000"), widget);
24 layout->addWidget(m_error, 2, 1); 45 layout->addWidget(m_error, 2, 1);
25 label = new QLabel(tr("Text written by yourself :"), this); 46 label = new QLabel(tr("Text written by yourself :"), widget);
26 layout->addWidget(label, 3, 0); 47 layout->addWidget(label, 3, 0);
27 m_self = new IRCFramedColorLabel(m_config->readEntry("SelfColor", "#CC0000"), this); 48 m_self = new IRCFramedColorLabel(m_config->readEntry("SelfColor", "#CC0000"), widget);
28 layout->addWidget(m_self, 3, 1); 49 layout->addWidget(m_self, 3, 1);
29 label = new QLabel(tr("Text written by others :"), this); 50 label = new QLabel(tr("Text written by others :"), widget);
30 layout->addWidget(label, 4, 0); 51 layout->addWidget(label, 4, 0);
31 m_other = new IRCFramedColorLabel(m_config->readEntry("OtherColor", "#0000BB"), this); 52 m_other = new IRCFramedColorLabel(m_config->readEntry("OtherColor", "#0000BB"), widget);
32 layout->addWidget(m_other, 4, 1); 53 layout->addWidget(m_other, 4, 1);
33 label = new QLabel(tr("Text written by the server :"), this); 54 label = new QLabel(tr("Text written by the server :"), widget);
34 layout->addWidget(label, 5, 0); 55 layout->addWidget(label, 5, 0);
35 m_server = new IRCFramedColorLabel(m_config->readEntry("ServerColor", "#0000FF"), this); 56 m_server = new IRCFramedColorLabel(m_config->readEntry("ServerColor", "#0000FF"), widget);
36 layout->addWidget(m_server, 5, 1); 57 layout->addWidget(m_server, 5, 1);
37 label = new QLabel(tr("Notifications :"), this); 58 label = new QLabel(tr("Notifications :"), widget);
38 layout->addWidget(label, 6, 0); 59 layout->addWidget(label, 6, 0);
39 m_notification = new IRCFramedColorLabel(m_config->readEntry("NotificationColor", "#AAE300"), this); 60 m_notification = new IRCFramedColorLabel(m_config->readEntry("NotificationColor", "#AAE300"), widget);
40 layout->addWidget(m_notification, 6, 1); 61 layout->addWidget(m_notification, 6, 1);
62 tw->addTab(view, tr("Colors"));
41 showMaximized(); 63 showMaximized();
42} 64}
43 65
44QString IRCSettings::getColorString(QWidget *widget) { 66QString IRCSettings::getColorString(QWidget *widget) {
45 QColor color = ((IRCFramedColorLabel *)widget)->color(); 67 QColor color = ((IRCFramedColorLabel *)widget)->color();
46 QString temp; 68 QString temp;
@@ -53,19 +75,21 @@ void IRCSettings::accept() {
53 IRCTab::m_textColor = getColorString(m_text); 75 IRCTab::m_textColor = getColorString(m_text);
54 IRCTab::m_errorColor = getColorString(m_error); 76 IRCTab::m_errorColor = getColorString(m_error);
55 IRCTab::m_selfColor = getColorString(m_self); 77 IRCTab::m_selfColor = getColorString(m_self);
56 IRCTab::m_otherColor = getColorString(m_other); 78 IRCTab::m_otherColor = getColorString(m_other);
57 IRCTab::m_serverColor = getColorString(m_server); 79 IRCTab::m_serverColor = getColorString(m_server);
58 IRCTab::m_notificationColor = getColorString(m_notification); 80 IRCTab::m_notificationColor = getColorString(m_notification);
81 IRCTab::m_maxLines = m_lines->text().toInt();
59 m_config->writeEntry("BackgroundColor", getColorString(m_background)); 82 m_config->writeEntry("BackgroundColor", getColorString(m_background));
60 m_config->writeEntry("TextColor", getColorString(m_text)); 83 m_config->writeEntry("TextColor", getColorString(m_text));
61 m_config->writeEntry("ErrorColor", getColorString(m_error)); 84 m_config->writeEntry("ErrorColor", getColorString(m_error));
62 m_config->writeEntry("SelfColor", getColorString(m_self)); 85 m_config->writeEntry("SelfColor", getColorString(m_self));
63 m_config->writeEntry("OtherColor", getColorString(m_other)); 86 m_config->writeEntry("OtherColor", getColorString(m_other));
64 m_config->writeEntry("ServerColor", getColorString(m_server)); 87 m_config->writeEntry("ServerColor", getColorString(m_server));
65 m_config->writeEntry("NotificationColor", getColorString(m_notification)); 88 m_config->writeEntry("NotificationColor", getColorString(m_notification));
89 m_config->writeEntry("Lines", m_lines->text());
66 QDialog::accept(); 90 QDialog::accept();
67} 91}
68 92
69IRCSettings::~IRCSettings() { 93IRCSettings::~IRCSettings() {
70 delete m_config; 94 delete m_config;
71} 95}
diff --git a/noncore/net/opieirc/ircsettings.h b/noncore/net/opieirc/ircsettings.h
index 1d3aeb7..190abaf 100644
--- a/noncore/net/opieirc/ircsettings.h
+++ b/noncore/net/opieirc/ircsettings.h
@@ -20,27 +20,29 @@
20 20
21#ifndef __IRCSETTINGS_H 21#ifndef __IRCSETTINGS_H
22#define __IRCSETTINGS_H 22#define __IRCSETTINGS_H
23 23
24#include <qpe/config.h> 24#include <qpe/config.h>
25#include <qdialog.h> 25#include <qdialog.h>
26#include <qlineedit.h>
26 27
27class IRCSettings : public QDialog { 28class IRCSettings : public QDialog {
28 Q_OBJECT 29 Q_OBJECT
29public: 30public:
30 IRCSettings(QWidget* parent = 0, const char* name = 0, bool modal = FALSE, WFlags f = 0); 31 IRCSettings(QWidget* parent = 0, const char* name = 0, bool modal = FALSE, WFlags f = 0);
31 QString getColorString(QWidget *widget); 32 QString getColorString(QWidget *widget);
32 ~IRCSettings(); 33 ~IRCSettings();
33protected slots: 34protected slots:
34 void accept(); 35 void accept();
35protected: 36protected:
36 Config *m_config; 37 Config *m_config;
37 QWidget *m_background; 38 QWidget *m_background;
38 QWidget *m_text; 39 QWidget *m_text;
39 QWidget *m_error; 40 QWidget *m_error;
40 QWidget *m_self; 41 QWidget *m_self;
41 QWidget *m_server; 42 QWidget *m_server;
42 QWidget *m_other; 43 QWidget *m_other;
43 QWidget *m_notification; 44 QWidget *m_notification;
45 QLineEdit *m_lines;
44}; 46};
45 47
46#endif /* __IRCSETTINGS_H */ 48#endif /* __IRCSETTINGS_H */
diff --git a/noncore/net/opieirc/irctab.cpp b/noncore/net/opieirc/irctab.cpp
index a4dd7e2..0bb9d4c 100644
--- a/noncore/net/opieirc/irctab.cpp
+++ b/noncore/net/opieirc/irctab.cpp
@@ -7,13 +7,13 @@ QString IRCTab::m_errorColor;
7QString IRCTab::m_serverColor; 7QString IRCTab::m_serverColor;
8QString IRCTab::m_textColor; 8QString IRCTab::m_textColor;
9QString IRCTab::m_backgroundColor; 9QString IRCTab::m_backgroundColor;
10QString IRCTab::m_selfColor; 10QString IRCTab::m_selfColor;
11QString IRCTab::m_otherColor; 11QString IRCTab::m_otherColor;
12QString IRCTab::m_notificationColor; 12QString IRCTab::m_notificationColor;
13 13int IRCTab::m_maxLines;
14 14
15IRCTab::IRCTab(QWidget *parent, const char *name, WFlags f) : QWidget(parent, name, f) { 15IRCTab::IRCTab(QWidget *parent, const char *name, WFlags f) : QWidget(parent, name, f) {
16 m_layout = new QVBoxLayout(this); 16 m_layout = new QVBoxLayout(this);
17 QHBoxLayout *descLayout = new QHBoxLayout(m_layout); 17 QHBoxLayout *descLayout = new QHBoxLayout(m_layout);
18 descLayout->setMargin(5); 18 descLayout->setMargin(5);
19 m_description = new QLabel(tr("Missing description"), this); 19 m_description = new QLabel(tr("Missing description"), this);
diff --git a/noncore/net/opieirc/irctab.h b/noncore/net/opieirc/irctab.h
index e3a1857..7a2d0a2 100644
--- a/noncore/net/opieirc/irctab.h
+++ b/noncore/net/opieirc/irctab.h
@@ -32,12 +32,13 @@
32 the main GUI tab widget */ 32 the main GUI tab widget */
33 33
34class IRCTab : public QWidget { 34class IRCTab : public QWidget {
35 Q_OBJECT 35 Q_OBJECT
36public: 36public:
37 IRCTab(QWidget *parent = 0, const char *name = 0, WFlags f = 0); 37 IRCTab(QWidget *parent = 0, const char *name = 0, WFlags f = 0);
38 /* The ID is required to store the position of this IRCTab inside the IRCTabWidget */
38 void setID(int id); 39 void setID(int id);
39 int id(); 40 int id();
40 virtual QString title() = 0; 41 virtual QString title() = 0;
41 virtual IRCSession *session() = 0; 42 virtual IRCSession *session() = 0;
42 virtual void appendText(QString text) = 0; 43 virtual void appendText(QString text) = 0;
43signals: 44signals:
@@ -55,9 +56,11 @@ public:
55 static QString m_serverColor; 56 static QString m_serverColor;
56 static QString m_textColor; 57 static QString m_textColor;
57 static QString m_backgroundColor; 58 static QString m_backgroundColor;
58 static QString m_selfColor; 59 static QString m_selfColor;
59 static QString m_otherColor; 60 static QString m_otherColor;
60 static QString m_notificationColor; 61 static QString m_notificationColor;
62 /* Max number of lines to be displayed */
63 static int m_maxLines;
61}; 64};
62 65
63#endif /* __IRCTAB_H */ 66#endif /* __IRCTAB_H */
diff --git a/noncore/net/opieirc/ircversion.h b/noncore/net/opieirc/ircversion.h
index f0f196e..ec6acfa 100644
--- a/noncore/net/opieirc/ircversion.h
+++ b/noncore/net/opieirc/ircversion.h
@@ -18,10 +18,10 @@
18 18
19*/ 19*/
20 20
21#ifndef __IRCVERSION_H 21#ifndef __IRCVERSION_H
22#define __IRCVERSION_H 22#define __IRCVERSION_H
23 23
24#define APP_VERSION "OpieIRC 0.3" 24#define APP_VERSION "OpieIRC 0.4"
25#define APP_COPYSTR "(c) 2002 by Wenzel Jakob" 25#define APP_COPYSTR "(c) 2002 by Wenzel Jakob"
26 26
27#endif /* __IRCVERSION_H */ 27#endif /* __IRCVERSION_H */
diff --git a/noncore/net/opieirc/mainwindow.cpp b/noncore/net/opieirc/mainwindow.cpp
index fe59c3b..bb03a1c 100644
--- a/noncore/net/opieirc/mainwindow.cpp
+++ b/noncore/net/opieirc/mainwindow.cpp
@@ -33,29 +33,30 @@ void MainWindow::loadSettings() {
33 IRCTab::m_textColor = config.readEntry("TextColor", "#000000"); 33 IRCTab::m_textColor = config.readEntry("TextColor", "#000000");
34 IRCTab::m_errorColor = config.readEntry("ErrorColor", "#FF0000"); 34 IRCTab::m_errorColor = config.readEntry("ErrorColor", "#FF0000");
35 IRCTab::m_selfColor = config.readEntry("SelfColor", "#CC0000"); 35 IRCTab::m_selfColor = config.readEntry("SelfColor", "#CC0000");
36 IRCTab::m_otherColor = config.readEntry("OtherColor", "#0000BB"); 36 IRCTab::m_otherColor = config.readEntry("OtherColor", "#0000BB");
37 IRCTab::m_serverColor = config.readEntry("ServerColor", "#0000FF"); 37 IRCTab::m_serverColor = config.readEntry("ServerColor", "#0000FF");
38 IRCTab::m_notificationColor = config.readEntry("NotificationColor", "#AA3300"); 38 IRCTab::m_notificationColor = config.readEntry("NotificationColor", "#AA3300");
39 IRCTab::m_maxLines = config.readNumEntry("Lines", 100);
39} 40}
40 41
41void MainWindow::selected(QWidget *) { 42void MainWindow::selected(QWidget *) {
42 m_tabWidget->setTabColor(m_tabWidget->currentPageIndex(), &black); 43 m_tabWidget->setTabColor(m_tabWidget->currentPageIndex(), black);
43} 44}
44 45
45void MainWindow::addTab(IRCTab *tab) { 46void MainWindow::addTab(IRCTab *tab) {
46 connect(tab, SIGNAL(changed(IRCTab *)), this, SLOT(changeEvent(IRCTab *))); 47 connect(tab, SIGNAL(changed(IRCTab *)), this, SLOT(changeEvent(IRCTab *)));
47 m_tabWidget->addTab(tab, tab->title()); 48 m_tabWidget->addTab(tab, tab->title());
48 m_tabWidget->showPage(tab); 49 m_tabWidget->showPage(tab);
49 tab->setID(m_tabWidget->currentPageIndex()); 50 tab->setID(m_tabWidget->currentPageIndex());
50 m_tabs.append(tab); 51 m_tabs.append(tab);
51} 52}
52 53
53void MainWindow::changeEvent(IRCTab *tab) { 54void MainWindow::changeEvent(IRCTab *tab) {
54 if (tab->id() != m_tabWidget->currentPageIndex()) 55 if (tab->id() != m_tabWidget->currentPageIndex())
55 m_tabWidget->setTabColor(tab->id(), &blue); 56 m_tabWidget->setTabColor(tab->id(), blue);
56} 57}
57 58
58void MainWindow::killTab(IRCTab *tab) { 59void MainWindow::killTab(IRCTab *tab) {
59 m_tabWidget->removePage(tab); 60 m_tabWidget->removePage(tab);
60 m_tabs.remove(tab); 61 m_tabs.remove(tab);
61 /* there might be nicer ways to do this .. */ 62 /* there might be nicer ways to do this .. */
diff --git a/noncore/net/opieirc/opie-irc.control b/noncore/net/opieirc/opie-irc.control
index 9e93991..aada957 100644
--- a/noncore/net/opieirc/opie-irc.control
+++ b/noncore/net/opieirc/opie-irc.control
@@ -2,8 +2,7 @@ Files: bin/opieirc pics/opieirc apps/Applications/opieirc.desktop
2Priority: optional 2Priority: optional
3Section: Communications 3Section: Communications
4Maintainer: Wenzel Jakob <root@wazlaf.de> 4Maintainer: Wenzel Jakob <root@wazlaf.de>
5Architecture: arm 5Architecture: arm
6Version: $QPE_VERSION-$SUB_VERSION 6Version: $QPE_VERSION-$SUB_VERSION
7Depends: opie-base ($QPE_VERSION) 7Depends: opie-base ($QPE_VERSION)
8Description: The Opie IRC client lets you chat on your favorite 8Description: The Opie IRC client lets you chat on your favorite IRC server using your handheld computer
9 IRC server using your zaurus or ipaq