From e420b8fc265f2635334530742d32fcc5e49d88b2 Mon Sep 17 00:00:00 2001 From: Mikaƫl Capelle Date: Thu, 31 Dec 2020 18:02:17 +0100 Subject: ProxyStyle documentation. --- src/moapplication.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/moapplication.cpp') diff --git a/src/moapplication.cpp b/src/moapplication.cpp index 9b261a45..15fbdb3c 100644 --- a/src/moapplication.cpp +++ b/src/moapplication.cpp @@ -56,6 +56,8 @@ along with Mod Organizer. If not, see . using namespace MOBase; using namespace MOShared; +// style proxy that changes the appearance of drop indicators +// class ProxyStyle : public QProxyStyle { public: ProxyStyle(QStyle *baseStyle = 0) @@ -66,22 +68,23 @@ public: void drawPrimitive(PrimitiveElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget) const { if(element == QStyle::PE_IndicatorItemViewItemDrop) { + // 1. full-width drop indicator QRect rect(option->rect); if (auto* view = qobject_cast(widget)) { rect.setLeft(view->indentation()); rect.setRight(widget->width()); } + // 2. stylish drop indicator painter->setRenderHint(QPainter::Antialiasing, true); QColor col(option->palette.windowText().color()); QPen pen(col); pen.setWidth(2); col.setAlpha(50); - QBrush brush(col); painter->setPen(pen); - painter->setBrush(brush); + painter->setBrush(QBrush(col)); if(rect.height() == 0) { QPoint tri[3] = { rect.topLeft(), -- cgit v1.3.1