/***************************************************************************
-* Copyright (C) 2005-08 by the Quassel Project *
+* Copyright (C) 2005-09 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
class ChatMonitorFilter : public MessageFilter {
Q_OBJECT
- public:
- ChatMonitorFilter(MessageModel *model, QObject *parent = 0);
+public:
+ enum SenderFields {
+ NoField = 0x00,
+ NetworkField = 0x01,
+ BufferField = 0x02,
+ SenderField = 0x04,
+ AllFields = 0xff
+ };
- virtual bool filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const;
- virtual QString idString() const;
+ ChatMonitorFilter(MessageModel *model, QObject *parent = 0);
- virtual QVariant data(const QModelIndex &index, int role) const;
+ virtual bool filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const;
+ virtual QString idString() const { return "ChatMonitor"; }
+ virtual QVariant data(const QModelIndex &index, int role) const;
- private:
- QDateTime _initTime;
+ int showFields() const { return _showFields; }
+ bool showOwnMessages() const { return _showOwnMessages; }
+
+public slots:
+ void addShowField(int field);
+ void removeShowField(int field);
+ void setShowOwnMessages(bool show);
+
+private slots:
+ void showFieldsSettingChanged(const QVariant &newValue);
+ void showOwnMessagesSettingChanged(const QVariant &newValue);
+ void showHighlightsSettingChanged(const QVariant &newValue);
+ void operationModeSettingChanged(const QVariant &newValue);
+ void buffersSettingChanged(const QVariant &newValue);
+
+private:
+ int _showFields;
+ bool _showOwnMessages;
+ QList<BufferId> _bufferIds;
+ bool _showHighlights;
+ int _operationMode;
};
#endif