76 : q_ptr(0), model(0), persistent(
false), sticky(
false), monitorStatus(MonitorUnknown)
78 qRegisterMetaType<IrcBuffer*>();
79 qRegisterMetaType<QList<IrcBuffer*> >();
95 emit q->activeChanged(q->isActive());
101 emit q->activeChanged(q->isActive());
108 const QString oldTitle = q->title();
110 emit q->nameChanged(
name);
111 emit q->titleChanged(q->title());
121 const QString oldTitle = q->title();
123 emit q->prefixChanged(
prefix);
124 emit q->titleChanged(q->title());
139 bool wasActive = q->isActive();
141 bool isActive = q->isActive();
142 if (wasActive != isActive)
143 emit q->activeChanged(isActive);
160 bool processed =
false;
161 switch (message->
type()) {
209 emit q->messageReceived(message);
215 return !message->
nick().compare(
name, Qt::CaseInsensitive);
248 return !message->
newNick().compare(
name, Qt::CaseInsensitive);
280 return !message->
nick().compare(
name, Qt::CaseInsensitive);
294 #endif // IRC_DOXYGEN 338 return d->prefix + d->name;
382 return d->setPrefix(prefix);
419 return d->model ? d->model->connection() : 0;
431 return d->model ? d->model->network() : 0;
464 bool connected =
false;
466 connected = c->isConnected();
467 bool monitor =
false;
469 monitor = d->model->isMonitorEnabled();
499 if (d->sticky != sticky) {
528 return d->persistent;
534 if (d->persistent != persistent) {
561 if (d->userData != data) {
581 return c->sendCommand(command);
617 d->model->remove(
this);
620 #ifndef QT_NO_DEBUG_STREAM 624 return debug <<
"IrcBuffer(0x0) ";
625 debug.nospace() << buffer->metaObject()->className() <<
'(' << (
void*) buffer;
626 if (!buffer->objectName().isEmpty())
627 debug.nospace() <<
", name=" << qPrintable(buffer->objectName());
628 if (!buffer->
title().isEmpty())
629 debug.nospace() <<
", title=" << qPrintable(buffer->
title());
630 debug.nospace() <<
')';
631 return debug.space();
633 #endif // QT_NO_DEBUG_STREAM 635 #include "moc_ircbuffer.cpp" Q_INVOKABLE bool testFlag(Flag flag) const
A notice message (IrcNoticeMessage).
A nick message (IrcNickMessage).
Represents a join message.
Q_INVOKABLE bool isChannel(const QString &name) const
virtual bool processNoticeMessage(IrcNoticeMessage *message)
void setName(const QString &name)
Provides the most common commands.
Represents a kick message.
Represents a part message.
virtual void disconnected()
virtual bool processQuitMessage(IrcQuitMessage *message)
QDebug operator<<(QDebug debug, const IrcBuffer *buffer)
Keeps track of channel status.
A join message (IrcJoinMessage).
Q_INVOKABLE bool sendCommand(IrcCommand *command)
A topic message (IrcTopicMessage).
virtual bool processKickMessage(IrcKickMessage *message)
Represents a notice message.
virtual ~IrcBufferPrivate()
Represents a names list message.
bool isPersistent() const
virtual bool processPrivateMessage(IrcPrivateMessage *message)
Q_INVOKABLE IrcChannel * toChannel()
Represents an away message.
A private message (IrcPrivateMessage).
Keeps track of buffer status.
void setSticky(bool sticky)
#include <IrcBufferModel>
virtual bool processTopicMessage(IrcTopicMessage *message)
void setMonitorStatus(MonitorStatus status)
void setUserData(const QVariantMap &data)
Represents a reply message to a WHO command.
A part message (IrcPartMessage).
A names message (IrcNamesMessage).
void receiveMessage(IrcMessage *message)
bool processMessage(IrcMessage *message)
void setPersistent(bool persistent)
static IrcBufferModelPrivate * get(IrcBufferModel *model)
Provides means to establish a connection to an IRC server.
void stickyChanged(bool sticky)
A quit message (IrcQuitMessage).
Represents a mode message.
virtual void close(const QString &reason=QString())
Represents a quit message.
virtual bool processPartMessage(IrcPartMessage *message)
The base class of all messages.
void setPrefix(const QString &prefix)
IrcNetwork * network() const
void setName(const QString &name)
MonitorStatus monitorStatus
virtual bool processNumericMessage(IrcNumericMessage *message)
void persistentChanged(bool persistent)
Represents a numeric message.
The maximum amount of targets a client may have in their monitor list.
void messageReceived(IrcMessage *message)
virtual bool isActive() const
virtual bool processNamesMessage(IrcNamesMessage *message)
A mode message (IrcModeMessage).
QVariantMap userData() const
virtual bool processWhoReplyMessage(IrcWhoReplyMessage *message)
Represents a private message.
virtual bool processModeMessage(IrcModeMessage *message)
Q_INVOKABLE int numericLimit(IrcNetwork::Limit limit) const
void promoteBuffer(IrcBuffer *buffer)
An away message (IrcAwayMessage).
A who reply message (IrcWhoReplyMessage).
void destroyed(IrcBuffer *buffer)
Q_INVOKABLE IrcBuffer(QObject *parent=0)
virtual void init(const QString &title, IrcBufferModel *model)
QScopedPointer< IrcBufferPrivate > d_ptr
Represents a nick message.
Represents a topic message.
virtual bool processJoinMessage(IrcJoinMessage *message)
IrcConnection * connection() const
IrcBufferModel * model() const
bool renameBuffer(const QString &from, const QString &to)
void userDataChanged(const QVariantMap &data)
#define IRC_END_NAMESPACE
A numeric message (IrcNumericMessage).
Provides network information and capability management.
virtual bool processNickMessage(IrcNickMessage *message)
virtual bool processAwayMessage(IrcAwayMessage *message)
A kick message (IrcKickMessage).
void setPrefix(const QString &prefix)
void setModel(IrcBufferModel *model)
#define IRC_BEGIN_NAMESPACE
bool isMonitorable() const