Deuglify channel state icons
[quassel.git] / src / uisupport / bufferview.h
index 0732f54..419f33b 100644 (file)
@@ -93,16 +93,33 @@ private:
 };
 
 // ******************************
-//  TristateDelgate
+//  BufferViewDelgate
 // ******************************
 #include <QStyledItemDelegate>
 
-class TristateDelegate : public QStyledItemDelegate {
+class BufferViewDelegate : public QStyledItemDelegate {
   Q_OBJECT
 
 public:
-  TristateDelegate(QObject *parent = 0) : QStyledItemDelegate(parent) {}
+  BufferViewDelegate(QObject *parent = 0);
   bool editorEvent(QEvent *event, QAbstractItemModel *model, const QStyleOptionViewItem &option, const QModelIndex &index);
+
+protected:
+  virtual void customEvent(QEvent *event);
+  virtual void initStyleOption(QStyleOptionViewItem *option, const QModelIndex &index) const;
+
+private slots:
+  void colorsChanged();
+  void loadColors();
+
+private:
+  QColor _FgColorInactiveActivity;
+  QColor _FgColorNoActivity;
+  QColor _FgColorHighlightActivity;
+  QColor _FgColorNewMessageActivity;
+  QColor _FgColorOtherActivity;
+
+  bool _updateColors;
 };