From 6d22d3d4d2f014e5459dc0dc7f88ae8b4695bdf5 Mon Sep 17 00:00:00 2001 From: Norwegian Rock Cat Date: Fri, 10 Jul 2009 12:15:44 +0200 Subject: Move the disable colorgroup setting to the right place. This should be done in initStyleOption just like in QTabBar. --- src/qtsegmentcontrol.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/qtsegmentcontrol.cpp b/src/qtsegmentcontrol.cpp index 8e07f38..d663785 100644 --- a/src/qtsegmentcontrol.cpp +++ b/src/qtsegmentcontrol.cpp @@ -191,8 +191,6 @@ static void drawSegmentControlSegmentLabel(const QStyleOption *option, QPainter = static_cast(option)) { QPalette palette = segment->palette; bool enabled = segment->state & QStyle::State_Enabled; - if (!enabled) - palette.setCurrentColorGroup(QPalette::Disabled); QRect textRect = segmentElementRect(option, widget); widget->style()->drawItemText(painter, textRect, Qt::AlignCenter, palette, enabled, segment->text, QPalette::WindowText); @@ -590,8 +588,10 @@ void QtSegmentControl::initStyleOption(int segment, QStyleOption *option) const sgi->position = d->segmentPositionForIndex(segment); if (segmentInfo.selected) sgi->state |= QStyle::State_Selected; - if (!segmentInfo.enabled) + if (!segmentInfo.enabled) { sgi->state &= ~QStyle::State_Enabled; + sgi->palette.setCurrentColorGroup(QPalette::Disabled); + } if (d->selectionBehavior != QtSegmentControl::SelectNone) { sgi->selectedPositions = QtStyleOptionSegmentControlSegment::NotAdjacent; -- cgit v1.2.3