X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fuisupport%2Fbufferview.cpp;h=8debe24010da9c06169311e7bc741aa40589315b;hp=4111ad3a13e4e085f48b2a3100689750570431d3;hb=deba2421d87cbdea05c925cb3425042559d6ba21;hpb=54afee59c56e1a75352b32200b9503150601bd90 diff --git a/src/uisupport/bufferview.cpp b/src/uisupport/bufferview.cpp index 4111ad3a..8debe240 100644 --- a/src/uisupport/bufferview.cpp +++ b/src/uisupport/bufferview.cpp @@ -37,7 +37,6 @@ #include "client.h" #include "contextmenuactionprovider.h" #include "graphicalui.h" -#include "iconloader.h" #include "network.h" #include "networkmodel.h" #include "contextmenuactionprovider.h" @@ -276,7 +275,9 @@ void BufferView::removeSelectedBuffers(bool permanently) { continue; removedRows << bufferId; + } + foreach(BufferId bufferId, removedRows) { if(permanently) config()->requestRemoveBufferPermanently(bufferId); else @@ -488,46 +489,17 @@ public: }; BufferViewDelegate::BufferViewDelegate(QObject *parent) - : QStyledItemDelegate(parent), - _updateColors(false) + : QStyledItemDelegate(parent) { - loadColors(); - - UiSettings s("QtUiStyle/Colors"); - s.notify("inactiveActivityFG", this, SLOT(colorsChanged())); - s.notify("noActivityFG", this, SLOT(colorsChanged())); - s.notify("highlightActivityFG", this, SLOT(colorsChanged())); - s.notify("newMessageActivityFG", this, SLOT(colorsChanged())); - s.notify("otherActivityFG", this, SLOT(colorsChanged())); -} - -void BufferViewDelegate::colorsChanged() { - // avoid mutliple unneded reloads of all colors - if(_updateColors) - return; - _updateColors = true; - QCoreApplication::postEvent(this, new ColorsChangedEvent()); } void BufferViewDelegate::customEvent(QEvent *event) { if(event->type() != QEvent::User) return; - loadColors(); - _updateColors = false; - event->accept(); } -void BufferViewDelegate::loadColors() { - UiSettings s("QtUiStyle/Colors"); - _FgColorInactiveActivity = s.value("inactiveActivityFG", QVariant(QColor(Qt::gray))).value(); - _FgColorNoActivity = s.value("noActivityFG", QVariant(QColor(Qt::black))).value(); - _FgColorHighlightActivity = s.value("highlightActivityFG", QVariant(QColor(Qt::magenta))).value(); - _FgColorNewMessageActivity = s.value("newMessageActivityFG", QVariant(QColor(Qt::green))).value(); - _FgColorOtherActivity = s.value("otherActivityFG", QVariant(QColor(Qt::darkGreen))).value(); -} - bool BufferViewDelegate::editorEvent(QEvent *event, QAbstractItemModel *model, const QStyleOptionViewItem &option, const QModelIndex &index) { if(event->type() != QEvent::MouseButtonRelease) return QStyledItemDelegate::editorEvent(event, model, option, index); @@ -559,29 +531,6 @@ bool BufferViewDelegate::editorEvent(QEvent *event, QAbstractItemModel *model, c return true; } -void BufferViewDelegate::initStyleOption(QStyleOptionViewItem *option, const QModelIndex &index) const { - QStyledItemDelegate::initStyleOption(option, index); - - if(!index.isValid()) - return; - - BufferInfo::ActivityLevel activity = (BufferInfo::ActivityLevel)index.data(NetworkModel::BufferActivityRole).toInt(); - - QColor fgColor = _FgColorNoActivity; - if(activity & BufferInfo::Highlight) { - fgColor = _FgColorHighlightActivity; - } else if(activity & BufferInfo::NewMessage) { - fgColor = _FgColorNewMessageActivity; - } else if(activity & BufferInfo::OtherActivity) { - fgColor = _FgColorOtherActivity; - } else if(!index.data(NetworkModel::ItemActiveRole).toBool() || index.data(NetworkModel::UserAwayRole).toBool()) { - fgColor = _FgColorInactiveActivity; - } - - option->palette.setColor(QPalette::Text, fgColor); -} - - // ============================== // BufferView Dock // ==============================