X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=gui%2Fchannelwidget.h;h=e1d2f2e26b54b9e0c718d588e5a2bdb9cabc9a71;hp=932c538371cc381a139b9743f78feb57f55b27c0;hb=057883f768f86257c9dbefeb5ef12403b207b773;hpb=a7afccdbf779b959a4ce3fe88ec42590e3df6cfe diff --git a/gui/channelwidget.h b/gui/channelwidget.h index 932c5383..e1d2f2e2 100644 --- a/gui/channelwidget.h +++ b/gui/channelwidget.h @@ -22,25 +22,76 @@ #define _CHANNELWIDGET_H_ #include "ui_channelwidget.h" +#include "ui_ircwidget.h" + +#include "global.h" +#include "message.h" class ChannelWidget : public QWidget { Q_OBJECT public: - ChannelWidget(QWidget *parent = 0); + ChannelWidget(QString netname, QString bufname, QString ownNick, QWidget *parent = 0); + QString bufferName() { return _bufferName; } + QString networkName() { return _networkName; } signals: - void requestConnect(QString, quint16); - void inputLine(QString); - + void sendInput(QString, QString, QString); + + public slots: + void recvMessage(Message); + void recvStatusMsg(QString msg); + void setTopic(QString); + void setNicks(QStringList); + void addNick(QString nick, VarMap props); + void removeNick(QString nick); + void updateNick(QString nick, VarMap props); + void setOwnNick(QString nick); + + private slots: void enterPressed(); - void lineReceived(QString); + void updateNickList(); private: Ui::ChannelWidget ui; + QColor stdCol, errorCol, noticeCol, joinCol, quitCol, partCol, serverCol; + QString _networkName; + QString _bufferName; + VarMap nicks; }; +/** Temporary widget for displaying a set of ChannelWidgets. */ +class IrcWidget : public QWidget { + Q_OBJECT + + public: + IrcWidget(QWidget *parent = 0); + + public slots: + void recvMessage(QString network, QString buffer, Message message); + void recvStatusMsg(QString network, QString message); + void setTopic(QString, QString, QString); + void setNicks(QString, QString, QStringList); + void addNick(QString net, QString nick, VarMap props); + void removeNick(QString net, QString nick); + void updateNick(QString net, QString nick, VarMap props); + void setOwnNick(QString net, QString nick); + + signals: + void sendInput(QString network, QString buffer, QString message); + + private slots: + void userInput(QString, QString, QString); + + private: + Ui::IrcWidget ui; + QHash buffers; + VarMap nicks; + QString ownNick; + + ChannelWidget * getBuffer(QString net, QString buf); +}; #endif