qwindowsstyle.cpp

Absolute File Name:/home/qt/qt5_coco/qt5/qtbase/src/widgets/styles/qwindowsstyle.cpp
Source codeSwitch to Preprocessed file
LineSourceCount
1/****************************************************************************-
2**-
3** Copyright (C) 2015 The Qt Company Ltd.-
4** Contact: http://www.qt.io/licensing/-
5**-
6** This file is part of the QtWidgets module of the Qt Toolkit.-
7**-
8** $QT_BEGIN_LICENSE:LGPL21$-
9** Commercial License Usage-
10** Licensees holding valid commercial Qt licenses may use this file in-
11** accordance with the commercial license agreement provided with the-
12** Software or, alternatively, in accordance with the terms contained in-
13** a written agreement between you and The Qt Company. For licensing terms-
14** and conditions see http://www.qt.io/terms-conditions. For further-
15** information use the contact form at http://www.qt.io/contact-us.-
16**-
17** GNU Lesser General Public License Usage-
18** Alternatively, this file may be used under the terms of the GNU Lesser-
19** General Public License version 2.1 or version 3 as published by the Free-
20** Software Foundation and appearing in the file LICENSE.LGPLv21 and-
21** LICENSE.LGPLv3 included in the packaging of this file. Please review the-
22** following information to ensure the GNU Lesser General Public License-
23** requirements will be met: https://www.gnu.org/licenses/lgpl.html and-
24** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.-
25**-
26** As a special exception, The Qt Company gives you certain additional-
27** rights. These rights are described in The Qt Company LGPL Exception-
28** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.-
29**-
30** $QT_END_LICENSE$-
31**-
32****************************************************************************/-
33-
34#include "qwindowsstyle_p.h"-
35#include "qwindowsstyle_p_p.h"-
36-
37#if !defined(QT_NO_STYLE_WINDOWS) || defined(QT_PLUGIN)-
38-
39#include <private/qsystemlibrary_p.h>-
40#include "qapplication.h"-
41#include "qbitmap.h"-
42#include "qdrawutil.h" // for now-
43#include "qevent.h"-
44#include "qmenu.h"-
45#include "qmenubar.h"-
46#include <private/qmenubar_p.h>-
47#include "qpaintengine.h"-
48#include "qpainter.h"-
49#include "qrubberband.h"-
50#include "qstyleoption.h"-
51#include "qtabbar.h"-
52#include "qwidget.h"-
53#include "qdebug.h"-
54#include "qmainwindow.h"-
55#include "qfile.h"-
56#include "qtextstream.h"-
57#include "qpixmapcache.h"-
58#include "qwizard.h"-
59#include "qlistview.h"-
60#include <private/qmath_p.h>-
61#include <qmath.h>-
62#include <QtGui/qscreen.h>-
63#include <QtGui/qwindow.h>-
64#include <qpa/qplatformtheme.h>-
65#include <qpa/qplatformscreen.h>-
66#include <private/qguiapplication_p.h>-
67#include <private/qhighdpiscaling_p.h>-
68-
69#include <private/qstylehelper_p.h>-
70#include <private/qstyleanimation_p.h>-
71-
72QT_BEGIN_NAMESPACE-
73-
74#if defined(Q_OS_WIN)-
75-
76QT_BEGIN_INCLUDE_NAMESPACE-
77#include "qt_windows.h"-
78QT_END_INCLUDE_NAMESPACE-
79# ifndef COLOR_GRADIENTACTIVECAPTION-
80# define COLOR_GRADIENTACTIVECAPTION 27-
81# endif-
82# ifndef COLOR_GRADIENTINACTIVECAPTION-
83# define COLOR_GRADIENTINACTIVECAPTION 28-
84# endif-
85-
86-
87typedef struct-
88{-
89 DWORD cbSize;-
90 HICON hIcon;-
91 int iSysImageIndex;-
92 int iIcon;-
93 WCHAR szPath[MAX_PATH];-
94} QSHSTOCKICONINFO;-
95-
96#define _SHGFI_SMALLICON 0x000000001-
97#define _SHGFI_LARGEICON 0x000000000-
98#define _SHGFI_ICON 0x000000100-
99#define _SIID_SHIELD 77-
100-
101typedef HRESULT (WINAPI *PtrSHGetStockIconInfo)(int siid, int uFlags, QSHSTOCKICONINFO *psii);-
102static PtrSHGetStockIconInfo pSHGetStockIconInfo = 0;-
103-
104Q_GUI_EXPORT HICON qt_pixmapToWinHICON(const QPixmap &);-
105Q_GUI_EXPORT QPixmap qt_pixmapFromWinHICON(HICON icon);-
106#endif //Q_OS_WIN-
107-
108QT_BEGIN_INCLUDE_NAMESPACE-
109#include <limits.h>-
110QT_END_INCLUDE_NAMESPACE-
111-
112enum QSliderDirection { SlUp, SlDown, SlLeft, SlRight };-
113-
114/*-
115 \internal-
116*/-
117-
118QWindowsStylePrivate::QWindowsStylePrivate()-
119 : alt_down(false), menuBarTimer(0)-
120{-
121#if defined(Q_OS_WIN) && !defined(Q_OS_WINCE)-
122 if ((QSysInfo::WindowsVersion >= QSysInfo::WV_VISTA-
123 && (QSysInfo::WindowsVersion & QSysInfo::WV_NT_based))) {-
124 QSystemLibrary shellLib(QLatin1String("shell32"));-
125 pSHGetStockIconInfo = (PtrSHGetStockIconInfo)shellLib.resolve("SHGetStockIconInfo");-
126 }-
127#endif-
128}
never executed: end of block
0
129-
130qreal QWindowsStylePrivate::appDevicePixelRatio()-
131{-
132 return qApp->devicePixelRatio();
never executed: return (static_cast<QApplication *>(QCoreApplication::instance()))->devicePixelRatio();
0
133}-
134-
135// Returns \c true if the toplevel parent of \a widget has seen the Alt-key-
136bool QWindowsStylePrivate::hasSeenAlt(const QWidget *widget) const-
137{-
138 widget = widget->window();-
139 return seenAlt.contains(widget);
never executed: return seenAlt.contains(widget);
0
140}-
141-
142/*!-
143 \reimp-
144*/-
145bool QWindowsStyle::eventFilter(QObject *o, QEvent *e)-
146{-
147 // Records Alt- and Focus events-
148 if (!o->isWidgetType())
!o->isWidgetType()Description
TRUEnever evaluated
FALSEnever evaluated
0
149 return QObject::eventFilter(o, e);
never executed: return QObject::eventFilter(o, e);
0
150-
151 QWidget *widget = qobject_cast<QWidget*>(o);-
152 Q_D(QWindowsStyle);-
153 switch(e->type()) {-
154 case QEvent::KeyPress:
never executed: case QEvent::KeyPress:
0
155 if (static_cast<QKeyEvent *>(e)->key() == Qt::Key_Alt) {
static_cast<QK...== Qt::Key_AltDescription
TRUEnever evaluated
FALSEnever evaluated
0
156 widget = widget->window();-
157-
158 // Alt has been pressed - find all widgets that care-
159 QList<QWidget *> l = widget->findChildren<QWidget *>();-
160 for (int pos=0 ; pos < l.size() ; ++pos) {
pos < l.size()Description
TRUEnever evaluated
FALSEnever evaluated
0
161 QWidget *w = l.at(pos);-
162 if (w->isWindow() || !w->isVisible() ||
w->isWindow()Description
TRUEnever evaluated
FALSEnever evaluated
!w->isVisible()Description
TRUEnever evaluated
FALSEnever evaluated
0
163 w->style()->styleHint(SH_UnderlineShortcut, 0, w))
w->style()->st...hortcut, 0, w)Description
TRUEnever evaluated
FALSEnever evaluated
0
164 l.removeAt(pos);
never executed: l.removeAt(pos);
0
165 }
never executed: end of block
0
166 // Update states before repainting-
167 d->seenAlt.append(widget);-
168 d->alt_down = true;-
169-
170 // Repaint all relevant widgets-
171 for (int pos = 0; pos < l.size(); ++pos)
pos < l.size()Description
TRUEnever evaluated
FALSEnever evaluated
0
172 l.at(pos)->update();
never executed: l.at(pos)->update();
0
173 }
never executed: end of block
0
174 break;
never executed: break;
0
175 case QEvent::KeyRelease:
never executed: case QEvent::KeyRelease:
0
176 if (static_cast<QKeyEvent*>(e)->key() == Qt::Key_Alt) {
static_cast<QK...== Qt::Key_AltDescription
TRUEnever evaluated
FALSEnever evaluated
0
177 widget = widget->window();-
178-
179 // Update state and repaint the menu bars.-
180 d->alt_down = false;-
181#ifndef QT_NO_MENUBAR-
182 QList<QMenuBar *> l = widget->findChildren<QMenuBar *>();-
183 for (int i = 0; i < l.size(); ++i)
i < l.size()Description
TRUEnever evaluated
FALSEnever evaluated
0
184 l.at(i)->update();
never executed: l.at(i)->update();
0
185#endif-
186 }
never executed: end of block
0
187 break;
never executed: break;
0
188 case QEvent::Close:
never executed: case QEvent::Close:
0
189 // Reset widget when closing-
190 d->seenAlt.removeAll(widget);-
191 d->seenAlt.removeAll(widget->window());-
192 break;
never executed: break;
0
193 default:
never executed: default:
0
194 break;
never executed: break;
0
195 }-
196 return QCommonStyle::eventFilter(o, e);
never executed: return QCommonStyle::eventFilter(o, e);
0
197}-
198-
199/*!-
200 \class QWindowsStyle-
201 \brief The QWindowsStyle class provides a Microsoft Windows-like look and feel.-
202-
203 \ingroup appearance-
204 \inmodule QtWidgets-
205 \internal-
206-
207 This style is Qt's default GUI style on Windows.-
208-
209 \image qwindowsstyle.png-
210 \sa QWindowsVistaStyle, QMacStyle, QFusionStyle-
211*/-
212-
213/*!-
214 Constructs a QWindowsStyle object.-
215*/-
216QWindowsStyle::QWindowsStyle() : QCommonStyle(*new QWindowsStylePrivate)-
217{-
218}
never executed: end of block
0
219-
220/*!-
221 \internal-
222-
223 Constructs a QWindowsStyle object.-
224*/-
225QWindowsStyle::QWindowsStyle(QWindowsStylePrivate &dd) : QCommonStyle(dd)-
226{-
227}
never executed: end of block
0
228-
229-
230/*! Destroys the QWindowsStyle object. */-
231QWindowsStyle::~QWindowsStyle()-
232{-
233}-
234-
235#ifdef Q_OS_WIN-
236static inline QRgb colorref2qrgb(COLORREF col)-
237{-
238 return qRgb(GetRValue(col), GetGValue(col), GetBValue(col));-
239}-
240#endif-
241-
242/*! \reimp */-
243void QWindowsStyle::polish(QApplication *app)-
244{-
245 QCommonStyle::polish(app);-
246 QWindowsStylePrivate *d = const_cast<QWindowsStylePrivate*>(d_func());-
247 // We only need the overhead when shortcuts are sometimes hidden-
248 if (!proxy()->styleHint(SH_UnderlineShortcut, 0) && app)
!proxy()->styl...neShortcut, 0)Description
TRUEnever evaluated
FALSEnever evaluated
appDescription
TRUEnever evaluated
FALSEnever evaluated
0
249 app->installEventFilter(this);
never executed: app->installEventFilter(this);
0
250-
251 d->activeCaptionColor = app->palette().highlight().color();-
252 d->activeGradientCaptionColor = app->palette().highlight() .color();-
253 d->inactiveCaptionColor = app->palette().dark().color();-
254 d->inactiveGradientCaptionColor = app->palette().dark().color();-
255 d->inactiveCaptionText = app->palette().background().color();-
256-
257#if defined(Q_OS_WIN) && !defined(Q_OS_WINRT) //fetch native title bar colors-
258 if(app->desktopSettingsAware()){-
259 DWORD activeCaption = GetSysColor(COLOR_ACTIVECAPTION);-
260 DWORD gradientActiveCaption = GetSysColor(COLOR_GRADIENTACTIVECAPTION);-
261 DWORD inactiveCaption = GetSysColor(COLOR_INACTIVECAPTION);-
262 DWORD gradientInactiveCaption = GetSysColor(COLOR_GRADIENTINACTIVECAPTION);-
263 DWORD inactiveCaptionText = GetSysColor(COLOR_INACTIVECAPTIONTEXT);-
264 d->activeCaptionColor = colorref2qrgb(activeCaption);-
265 d->activeGradientCaptionColor = colorref2qrgb(gradientActiveCaption);-
266 d->inactiveCaptionColor = colorref2qrgb(inactiveCaption);-
267 d->inactiveGradientCaptionColor = colorref2qrgb(gradientInactiveCaption);-
268 d->inactiveCaptionText = colorref2qrgb(inactiveCaptionText);-
269 }-
270#endif-
271}
never executed: end of block
0
272-
273/*! \reimp */-
274void QWindowsStyle::unpolish(QApplication *app)-
275{-
276 QCommonStyle::unpolish(app);-
277 app->removeEventFilter(this);-
278}
never executed: end of block
0
279-
280/*! \reimp */-
281void QWindowsStyle::polish(QWidget *widget)-
282{-
283 QCommonStyle::polish(widget);-
284}
never executed: end of block
0
285-
286/*! \reimp */-
287void QWindowsStyle::unpolish(QWidget *widget)-
288{-
289 QCommonStyle::unpolish(widget);-
290}
never executed: end of block
0
291-
292/*!-
293 \reimp-
294*/-
295void QWindowsStyle::polish(QPalette &pal)-
296{-
297 QCommonStyle::polish(pal);-
298}
never executed: end of block
0
299-
300int QWindowsStylePrivate::pixelMetricFromSystemDp(QStyle::PixelMetric pm, const QStyleOption *, const QWidget *widget)-
301{-
302#if defined(Q_OS_WIN) && !defined(Q_OS_WINRT)-
303 switch (pm) {-
304 case QStyle::PM_DockWidgetFrameWidth:-
305# ifndef Q_OS_WINCE-
306 return GetSystemMetrics(SM_CXFRAME);-
307# else-
308 return GetSystemMetrics(SM_CXDLGFRAME);-
309# endif-
310 break;-
311-
312 case QStyle::PM_TitleBarHeight:-
313 if (widget && (widget->windowType() == Qt::Tool)) {-
314 // MS always use one less than they say-
315# ifndef Q_OS_WINCE-
316 return GetSystemMetrics(SM_CYSMCAPTION) - 1;-
317# else-
318 return GetSystemMetrics(SM_CYCAPTION) - 1;-
319# endif-
320 }-
321 return GetSystemMetrics(SM_CYCAPTION) - 1;-
322-
323# ifndef Q_OS_WINCE-
324 case QStyle::PM_ScrollBarExtent:-
325 {-
326 NONCLIENTMETRICS ncm;-
327 ncm.cbSize = FIELD_OFFSET(NONCLIENTMETRICS, lfMessageFont) + sizeof(LOGFONT);-
328 if (SystemParametersInfo(SPI_GETNONCLIENTMETRICS, sizeof(NONCLIENTMETRICS), &ncm, 0))-
329 return qMax(ncm.iScrollHeight, ncm.iScrollWidth);-
330 }-
331 break;-
332# endif // !Q_OS_WINCE-
333-
334 case QStyle::PM_MdiSubWindowFrameWidth:-
335# ifndef Q_OS_WINCE-
336 return GetSystemMetrics(SM_CYFRAME);-
337# else-
338 return GetSystemMetrics(SM_CYDLGFRAME);-
339# endif-
340-
341 default:-
342 break;-
343 }-
344#else // Q_OS_WIN && !Q_OS_WINRT-
345 Q_UNUSED(pm);-
346 Q_UNUSED(widget);-
347#endif-
348 return QWindowsStylePrivate::InvalidMetric;
never executed: return QWindowsStylePrivate::InvalidMetric;
0
349}-
350-
351int QWindowsStylePrivate::fixedPixelMetric(QStyle::PixelMetric pm)-
352{-
353 switch (pm) {-
354 case QStyle::PM_ToolBarItemSpacing:
never executed: case QStyle::PM_ToolBarItemSpacing:
0
355 return 0;
never executed: return 0;
0
356 case QStyle::PM_ButtonDefaultIndicator:
never executed: case QStyle::PM_ButtonDefaultIndicator:
0
357 case QStyle::PM_ButtonShiftHorizontal:
never executed: case QStyle::PM_ButtonShiftHorizontal:
0
358 case QStyle::PM_ButtonShiftVertical:
never executed: case QStyle::PM_ButtonShiftVertical:
0
359 case QStyle::PM_MenuHMargin:
never executed: case QStyle::PM_MenuHMargin:
0
360 case QStyle::PM_MenuVMargin:
never executed: case QStyle::PM_MenuVMargin:
0
361 case QStyle::PM_ToolBarItemMargin:
never executed: case QStyle::PM_ToolBarItemMargin:
0
362 return 1;
never executed: return 1;
0
363 break;
dead code: break;
-
364 case QStyle::PM_DockWidgetSeparatorExtent:
never executed: case QStyle::PM_DockWidgetSeparatorExtent:
0
365 return 4;
never executed: return 4;
0
366#ifndef QT_NO_TABBAR-
367 case QStyle::PM_TabBarTabShiftHorizontal:
never executed: case QStyle::PM_TabBarTabShiftHorizontal:
0
368 return 0;
never executed: return 0;
0
369 case QStyle::PM_TabBarTabShiftVertical:
never executed: case QStyle::PM_TabBarTabShiftVertical:
0
370 return 2;
never executed: return 2;
0
371#endif-
372-
373#ifndef QT_NO_SLIDER-
374 case QStyle::PM_SliderLength:
never executed: case QStyle::PM_SliderLength:
0
375 return 11;
never executed: return 11;
0
376#endif // QT_NO_SLIDER-
377-
378#ifndef QT_NO_MENU-
379 case QStyle::PM_MenuBarHMargin:
never executed: case QStyle::PM_MenuBarHMargin:
0
380 case QStyle::PM_MenuBarVMargin:
never executed: case QStyle::PM_MenuBarVMargin:
0
381 case QStyle::PM_MenuBarPanelWidth:
never executed: case QStyle::PM_MenuBarPanelWidth:
0
382 return 0;
never executed: return 0;
0
383 case QStyle::PM_SmallIconSize:
never executed: case QStyle::PM_SmallIconSize:
0
384 return 16;
never executed: return 16;
0
385 case QStyle::PM_LargeIconSize:
never executed: case QStyle::PM_LargeIconSize:
0
386 return 32;
never executed: return 32;
0
387 case QStyle::PM_DockWidgetTitleMargin:
never executed: case QStyle::PM_DockWidgetTitleMargin:
0
388 return 2;
never executed: return 2;
0
389 case QStyle::PM_DockWidgetTitleBarButtonMargin:
never executed: case QStyle::PM_DockWidgetTitleBarButtonMargin:
0
390 case QStyle::PM_DockWidgetFrameWidth:
never executed: case QStyle::PM_DockWidgetFrameWidth:
0
391 return 4;
never executed: return 4;
0
392-
393#endif // QT_NO_MENU-
394 case QStyle::PM_ToolBarHandleExtent:
never executed: case QStyle::PM_ToolBarHandleExtent:
0
395 return 10;
never executed: return 10;
0
396 default:
never executed: default:
0
397 break;
never executed: break;
0
398 }-
399 return QWindowsStylePrivate::InvalidMetric;
never executed: return QWindowsStylePrivate::InvalidMetric;
0
400}-
401-
402static QWindow *windowOf(const QWidget *w)-
403{-
404 QWindow *result = Q_NULLPTR;-
405 if (w) {
wDescription
TRUEnever evaluated
FALSEnever evaluated
0
406 result = w->windowHandle();-
407 if (!result) {
!resultDescription
TRUEnever evaluated
FALSEnever evaluated
0
408 if (const QWidget *np = w->nativeParentWidget())
const QWidget ...ParentWidget()Description
TRUEnever evaluated
FALSEnever evaluated
0
409 result = np->windowHandle();
never executed: result = np->windowHandle();
0
410 }
never executed: end of block
0
411 }
never executed: end of block
0
412 return result;
never executed: return result;
0
413}-
414-
415static QScreen *screenOf(const QWidget *w)-
416{-
417 if (const QWindow *window = windowOf(w))
const QWindow ... = windowOf(w)Description
TRUEnever evaluated
FALSEnever evaluated
0
418 return window->screen();
never executed: return window->screen();
0
419 return QGuiApplication::primaryScreen();
never executed: return QGuiApplication::primaryScreen();
0
420}-
421-
422// Calculate the overall scale factor to obtain Qt Device Independent-
423// Pixels from a native Windows size. Divide by devicePixelRatio-
424// and account for secondary screens with differing logical DPI.-
425qreal QWindowsStylePrivate::nativeMetricScaleFactor(const QWidget *widget)-
426{-
427 if (!QHighDpiScaling::isActive())
!QHighDpiScaling::isActive()Description
TRUEnever evaluated
FALSEnever evaluated
0
428 return 1;
never executed: return 1;
0
429 qreal result = qreal(1) / QWindowsStylePrivate::devicePixelRatio(widget);-
430 if (QGuiApplicationPrivate::screen_list.size() > 1) {
QGuiApplicatio...ist.size() > 1Description
TRUEnever evaluated
FALSEnever evaluated
0
431 const QScreen *primaryScreen = QGuiApplication::primaryScreen();-
432 const QScreen *screen = screenOf(widget);-
433 if (screen != primaryScreen) {
screen != primaryScreenDescription
TRUEnever evaluated
FALSEnever evaluated
0
434 const qreal primaryLogicalDpi = primaryScreen->handle()->logicalDpi().first;-
435 const qreal logicalDpi = screen->handle()->logicalDpi().first;-
436 if (!qFuzzyCompare(primaryLogicalDpi, logicalDpi))
!qFuzzyCompare...i, logicalDpi)Description
TRUEnever evaluated
FALSEnever evaluated
0
437 result *= logicalDpi / primaryLogicalDpi;
never executed: result *= logicalDpi / primaryLogicalDpi;
0
438 }
never executed: end of block
0
439 }
never executed: end of block
0
440 return result;
never executed: return result;
0
441}-
442-
443/*!-
444 \reimp-
445*/-
446int QWindowsStyle::pixelMetric(PixelMetric pm, const QStyleOption *opt, const QWidget *widget) const-
447{-
448 int ret = QWindowsStylePrivate::pixelMetricFromSystemDp(pm, opt, widget);-
449 if (ret != QWindowsStylePrivate::InvalidMetric)
ret != QWindow...:InvalidMetricDescription
TRUEnever evaluated
FALSEnever evaluated
0
450 return qRound(qreal(ret) * QWindowsStylePrivate::nativeMetricScaleFactor(widget));
never executed: return qRound(qreal(ret) * QWindowsStylePrivate::nativeMetricScaleFactor(widget));
0
451-
452 ret = QWindowsStylePrivate::fixedPixelMetric(pm);-
453 if (ret != QWindowsStylePrivate::InvalidMetric)
ret != QWindow...:InvalidMetricDescription
TRUEnever evaluated
FALSEnever evaluated
0
454 return int(QStyleHelper::dpiScaled(ret));
never executed: return int(QStyleHelper::dpiScaled(ret));
0
455-
456 ret = 0;-
457-
458 switch (pm) {-
459 case PM_MaximumDragDistance:
never executed: case PM_MaximumDragDistance:
0
460 ret = QCommonStyle::pixelMetric(PM_MaximumDragDistance);-
461 if (ret == -1)
ret == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
462 ret = 60;
never executed: ret = 60;
0
463 break;
never executed: break;
0
464-
465#ifndef QT_NO_SLIDER-
466 // Returns the number of pixels to use for the business part of the-
467 // slider (i.e., the non-tickmark portion). The remaining space is shared-
468 // equally between the tickmark regions.-
469 case PM_SliderControlThickness:
never executed: case PM_SliderControlThickness:
0
470 if (const QStyleOptionSlider *sl = qstyleoption_cast<const QStyleOptionSlider *>(opt)) {
const QStyleOp...Slider *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
471 int space = (sl->orientation == Qt::Horizontal) ? sl->rect.height() : sl->rect.width();
(sl->orientati...t::Horizontal)Description
TRUEnever evaluated
FALSEnever evaluated
0
472 int ticks = sl->tickPosition;-
473 int n = 0;-
474 if (ticks & QSlider::TicksAbove)
ticks & QSlider::TicksAboveDescription
TRUEnever evaluated
FALSEnever evaluated
0
475 ++n;
never executed: ++n;
0
476 if (ticks & QSlider::TicksBelow)
ticks & QSlider::TicksBelowDescription
TRUEnever evaluated
FALSEnever evaluated
0
477 ++n;
never executed: ++n;
0
478 if (!n) {
!nDescription
TRUEnever evaluated
FALSEnever evaluated
0
479 ret = space;-
480 break;
never executed: break;
0
481 }-
482-
483 int thick = 6; // Magic constant to get 5 + 16 + 5-
484 if (ticks != QSlider::TicksBothSides && ticks != QSlider::NoTicks)
ticks != QSlid...TicksBothSidesDescription
TRUEnever evaluated
FALSEnever evaluated
ticks != QSlider::NoTicksDescription
TRUEnever evaluated
FALSEnever evaluated
0
485 thick += proxy()->pixelMetric(PM_SliderLength, sl, widget) / 4;
never executed: thick += proxy()->pixelMetric(PM_SliderLength, sl, widget) / 4;
0
486-
487 space -= thick;-
488 if (space > 0)
space > 0Description
TRUEnever evaluated
FALSEnever evaluated
0
489 thick += (space * 2) / (n + 2);
never executed: thick += (space * 2) / (n + 2);
0
490 ret = thick;-
491 }
never executed: end of block
0
492 break;
never executed: break;
0
493#endif // QT_NO_SLIDER-
494-
495 case PM_IconViewIconSize:
never executed: case PM_IconViewIconSize:
0
496 ret = proxy()->pixelMetric(PM_LargeIconSize, opt, widget);-
497 break;
never executed: break;
0
498-
499 case PM_SplitterWidth:
never executed: case PM_SplitterWidth:
0
500 ret = qMax(int(QStyleHelper::dpiScaled(4)), QApplication::globalStrut().width());-
501 break;
never executed: break;
0
502-
503 default:
never executed: default:
0
504 ret = QCommonStyle::pixelMetric(pm, opt, widget);-
505 break;
never executed: break;
0
506 }-
507-
508 return ret;
never executed: return ret;
0
509}-
510-
511/*!-
512 \reimp-
513 */-
514QPixmap QWindowsStyle::standardPixmap(StandardPixmap standardPixmap, const QStyleOption *opt,-
515 const QWidget *widget) const-
516{-
517#if defined(Q_OS_WIN) && !defined(Q_OS_WINCE) && !defined(Q_OS_WINRT)-
518 QPixmap desktopIcon;-
519 switch(standardPixmap) {-
520 case SP_DriveCDIcon:-
521 case SP_DriveDVDIcon:-
522 case SP_DriveNetIcon:-
523 case SP_DriveHDIcon:-
524 case SP_DriveFDIcon:-
525 case SP_FileIcon:-
526 case SP_FileLinkIcon:-
527 case SP_DirLinkIcon:-
528 case SP_DirClosedIcon:-
529 case SP_DesktopIcon:-
530 case SP_ComputerIcon:-
531 case SP_DirOpenIcon:-
532 case SP_FileDialogNewFolder:-
533 case SP_DirHomeIcon:-
534 case SP_TrashIcon:-
535 case SP_VistaShield:-
536 if (const QPlatformTheme *theme = QGuiApplicationPrivate::platformTheme()) {-
537 QPlatformTheme::StandardPixmap sp = static_cast<QPlatformTheme::StandardPixmap>(standardPixmap);-
538 desktopIcon = theme->standardPixmap(sp, QSizeF(16, 16));-
539 }-
540 break;-
541 case SP_MessageBoxInformation:-
542 case SP_MessageBoxWarning:-
543 case SP_MessageBoxCritical:-
544 case SP_MessageBoxQuestion:-
545 if (const QPlatformTheme *theme = QGuiApplicationPrivate::platformTheme()) {-
546 QPlatformTheme::StandardPixmap sp = static_cast<QPlatformTheme::StandardPixmap>(standardPixmap);-
547 desktopIcon = theme->standardPixmap(sp, QSizeF());-
548 }-
549 break;-
550 default:-
551 break;-
552 }-
553 if (!desktopIcon.isNull()) {-
554 return desktopIcon;-
555 }-
556#endif // Q_OS_WIN && !Q_OS_WINCE && !Q_OS_WINRT-
557 return QCommonStyle::standardPixmap(standardPixmap, opt, widget);
never executed: return QCommonStyle::standardPixmap(standardPixmap, opt, widget);
0
558}-
559-
560/*! \reimp */-
561int QWindowsStyle::styleHint(StyleHint hint, const QStyleOption *opt, const QWidget *widget,-
562 QStyleHintReturn *returnData) const-
563{-
564 int ret = 0;-
565-
566 switch (hint) {-
567 case SH_EtchDisabledText:
never executed: case SH_EtchDisabledText:
0
568 case SH_Slider_SnapToValue:
never executed: case SH_Slider_SnapToValue:
0
569 case SH_PrintDialog_RightAlignButtons:
never executed: case SH_PrintDialog_RightAlignButtons:
0
570 case SH_FontDialog_SelectAssociatedText:
never executed: case SH_FontDialog_SelectAssociatedText:
0
571 case SH_Menu_AllowActiveAndDisabled:
never executed: case SH_Menu_AllowActiveAndDisabled:
0
572 case SH_MenuBar_AltKeyNavigation:
never executed: case SH_MenuBar_AltKeyNavigation:
0
573 case SH_MenuBar_MouseTracking:
never executed: case SH_MenuBar_MouseTracking:
0
574 case SH_Menu_MouseTracking:
never executed: case SH_Menu_MouseTracking:
0
575 case SH_ComboBox_ListMouseTracking:
never executed: case SH_ComboBox_ListMouseTracking:
0
576 case SH_ScrollBar_StopMouseOverSlider:
never executed: case SH_ScrollBar_StopMouseOverSlider:
0
577 case SH_MainWindow_SpaceBelowMenuBar:
never executed: case SH_MainWindow_SpaceBelowMenuBar:
0
578 ret = 1;-
579-
580 break;
never executed: break;
0
581 case SH_ItemView_ShowDecorationSelected:
never executed: case SH_ItemView_ShowDecorationSelected:
0
582#ifndef QT_NO_LISTVIEW-
583 if (qobject_cast<const QListView*>(widget))
qobject_cast<c...View*>(widget)Description
TRUEnever evaluated
FALSEnever evaluated
0
584 ret = 1;
never executed: ret = 1;
0
585#endif-
586 break;
never executed: break;
0
587 case SH_ItemView_ChangeHighlightOnFocus:
never executed: case SH_ItemView_ChangeHighlightOnFocus:
0
588 ret = 1;-
589 break;
never executed: break;
0
590 case SH_ToolBox_SelectedPageTitleBold:
never executed: case SH_ToolBox_SelectedPageTitleBold:
0
591 ret = 0;-
592 break;
never executed: break;
0
593-
594#if defined(Q_OS_WIN) && !defined(Q_OS_WINRT) // Option not used on WinRT -> common style-
595 case SH_UnderlineShortcut:-
596 {-
597 ret = 1;-
598 BOOL cues = false;-
599 SystemParametersInfo(SPI_GETKEYBOARDCUES, 0, &cues, 0);-
600 ret = int(cues);-
601 // Do nothing if we always paint underlines-
602 Q_D(const QWindowsStyle);-
603 if (!ret && widget && d) {-
604#ifndef QT_NO_MENUBAR-
605 const QMenuBar *menuBar = qobject_cast<const QMenuBar *>(widget);-
606 if (!menuBar && qobject_cast<const QMenu *>(widget)) {-
607 QWidget *w = QApplication::activeWindow();-
608 if (w && w != widget)-
609 menuBar = w->findChild<QMenuBar *>();-
610 }-
611 // If we paint a menu bar draw underlines if is in the keyboardState-
612 if (menuBar) {-
613 if (menuBar->d_func()->keyboardState || d->altDown())-
614 ret = 1;-
615 // Otherwise draw underlines if the toplevel widget has seen an alt-press-
616 } else-
617#endif // QT_NO_MENUBAR-
618 if (d->hasSeenAlt(widget)) {-
619 ret = 1;-
620 }-
621 }-
622#ifndef QT_NO_ACCESSIBILITY-
623 if (!ret && opt && opt->type == QStyleOption::SO_MenuItem-
624 && QStyleHelper::isInstanceOf(opt->styleObject, QAccessible::MenuItem)-
625 && opt->styleObject->property("_q_showUnderlined").toBool())-
626 ret = 1;-
627#endif // QT_NO_ACCESSIBILITY-
628 break;-
629 }-
630#endif // Q_OS_WIN && !Q_OS_WINRT-
631 case SH_Menu_SubMenuSloppyCloseTimeout:
never executed: case SH_Menu_SubMenuSloppyCloseTimeout:
0
632 case SH_Menu_SubMenuPopupDelay: {
never executed: case SH_Menu_SubMenuPopupDelay:
0
633#if defined(Q_OS_WIN) && !defined(Q_OS_WINCE) && !defined(Q_OS_WINRT)-
634 DWORD delay;-
635 if (SystemParametersInfo(SPI_GETMENUSHOWDELAY, 0, &delay, 0))-
636 ret = delay;-
637 else-
638#endif // Q_OS_WIN && !Q_OS_WINCE && !Q_OS_WINRT-
639 ret = 400;-
640 break;
never executed: break;
0
641 }-
642#ifndef QT_NO_RUBBERBAND-
643 case SH_RubberBand_Mask:
never executed: case SH_RubberBand_Mask:
0
644 if (const QStyleOptionRubberBand *rbOpt = qstyleoption_cast<const QStyleOptionRubberBand *>(opt)) {
const QStyleOp...erBand *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
645 ret = 0;-
646 if (rbOpt->shape == QRubberBand::Rectangle) {
rbOpt->shape =...and::RectangleDescription
TRUEnever evaluated
FALSEnever evaluated
0
647 ret = true;-
648 if(QStyleHintReturnMask *mask = qstyleoption_cast<QStyleHintReturnMask*>(returnData)) {
QStyleHintRetu...*>(returnData)Description
TRUEnever evaluated
FALSEnever evaluated
0
649 mask->region = opt->rect;-
650 int size = 1;-
651 if (widget && widget->isWindow())
widgetDescription
TRUEnever evaluated
FALSEnever evaluated
widget->isWindow()Description
TRUEnever evaluated
FALSEnever evaluated
0
652 size = 4;
never executed: size = 4;
0
653 mask->region -= opt->rect.adjusted(size, size, -size, -size);-
654 }
never executed: end of block
0
655 }
never executed: end of block
0
656 }
never executed: end of block
0
657 break;
never executed: break;
0
658#endif // QT_NO_RUBBERBAND-
659#ifndef QT_NO_WIZARD-
660 case SH_WizardStyle:
never executed: case SH_WizardStyle:
0
661 ret = QWizard::ModernStyle;-
662 break;
never executed: break;
0
663#endif-
664 case SH_ItemView_ArrowKeysNavigateIntoChildren:
never executed: case SH_ItemView_ArrowKeysNavigateIntoChildren:
0
665 ret = true;-
666 break;
never executed: break;
0
667 case SH_DialogButtonBox_ButtonsHaveIcons:
never executed: case SH_DialogButtonBox_ButtonsHaveIcons:
0
668 ret = 0;-
669 break;
never executed: break;
0
670 default:
never executed: default:
0
671 ret = QCommonStyle::styleHint(hint, opt, widget, returnData);-
672 break;
never executed: break;
0
673 }-
674 return ret;
never executed: return ret;
0
675}-
676-
677/*! \reimp */-
678void QWindowsStyle::drawPrimitive(PrimitiveElement pe, const QStyleOption *opt, QPainter *p,-
679 const QWidget *w) const-
680{-
681 // Used to restore across fallthrough cases. Currently only used in PE_IndicatorCheckBox-
682 bool doRestore = false;-
683-
684 switch (pe) {-
685#ifndef QT_NO_TOOLBAR-
686 case PE_IndicatorToolBarSeparator:
never executed: case PE_IndicatorToolBarSeparator:
0
687 {-
688 QRect rect = opt->rect;-
689 const int margin = 2;-
690 QPen oldPen = p->pen();-
691 if(opt->state & State_Horizontal){
opt->state & State_HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
0
692 const int offset = rect.width()/2;-
693 p->setPen(QPen(opt->palette.dark().color()));-
694 p->drawLine(rect.bottomLeft().x() + offset,-
695 rect.bottomLeft().y() - margin,-
696 rect.topLeft().x() + offset,-
697 rect.topLeft().y() + margin);-
698 p->setPen(QPen(opt->palette.light().color()));-
699 p->drawLine(rect.bottomLeft().x() + offset + 1,-
700 rect.bottomLeft().y() - margin,-
701 rect.topLeft().x() + offset + 1,-
702 rect.topLeft().y() + margin);-
703 }
never executed: end of block
0
704 else{ //Draw vertical separator-
705 const int offset = rect.height()/2;-
706 p->setPen(QPen(opt->palette.dark().color()));-
707 p->drawLine(rect.topLeft().x() + margin ,-
708 rect.topLeft().y() + offset,-
709 rect.topRight().x() - margin,-
710 rect.topRight().y() + offset);-
711 p->setPen(QPen(opt->palette.light().color()));-
712 p->drawLine(rect.topLeft().x() + margin ,-
713 rect.topLeft().y() + offset + 1,-
714 rect.topRight().x() - margin,-
715 rect.topRight().y() + offset + 1);-
716 }
never executed: end of block
0
717 p->setPen(oldPen);-
718 }-
719 break;
never executed: break;
0
720 case PE_IndicatorToolBarHandle:
never executed: case PE_IndicatorToolBarHandle:
0
721 p->save();-
722 p->translate(opt->rect.x(), opt->rect.y());-
723 if (opt->state & State_Horizontal) {
opt->state & State_HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
0
724 int x = opt->rect.width() / 2 - 4;-
725 if (opt->direction == Qt::RightToLeft)
opt->direction...t::RightToLeftDescription
TRUEnever evaluated
FALSEnever evaluated
0
726 x -= 2;
never executed: x -= 2;
0
727 if (opt->rect.height() > 4) {
opt->rect.height() > 4Description
TRUEnever evaluated
FALSEnever evaluated
0
728 qDrawShadePanel(p, x, 2, 3, opt->rect.height() - 4,-
729 opt->palette, false, 1, 0);-
730 qDrawShadePanel(p, x + 3, 2, 3, opt->rect.height() - 4,-
731 opt->palette, false, 1, 0);-
732 }
never executed: end of block
0
733 } else {
never executed: end of block
0
734 if (opt->rect.width() > 4) {
opt->rect.width() > 4Description
TRUEnever evaluated
FALSEnever evaluated
0
735 int y = opt->rect.height() / 2 - 4;-
736 qDrawShadePanel(p, 2, y, opt->rect.width() - 4, 3,-
737 opt->palette, false, 1, 0);-
738 qDrawShadePanel(p, 2, y + 3, opt->rect.width() - 4, 3,-
739 opt->palette, false, 1, 0);-
740 }
never executed: end of block
0
741 }
never executed: end of block
0
742 p->restore();-
743 break;
never executed: break;
0
744-
745#endif // QT_NO_TOOLBAR-
746 case PE_FrameButtonTool:
never executed: case PE_FrameButtonTool:
0
747 case PE_PanelButtonTool: {
never executed: case PE_PanelButtonTool:
0
748 QPen oldPen = p->pen();-
749#ifndef QT_NO_DOCKWIDGET-
750 if (w && w->inherits("QDockWidgetTitleButton")) {
wDescription
TRUEnever evaluated
FALSEnever evaluated
w->inherits("Q...tTitleButton")Description
TRUEnever evaluated
FALSEnever evaluated
0
751 if (const QWidget *dw = w->parentWidget())
const QWidget ...parentWidget()Description
TRUEnever evaluated
FALSEnever evaluated
0
752 if (dw->isWindow()){
dw->isWindow()Description
TRUEnever evaluated
FALSEnever evaluated
0
753 qDrawWinButton(p, opt->rect.adjusted(1, 1, 0, 0), opt->palette, opt->state & (State_Sunken | State_On),-
754 &opt->palette.button());-
755-
756 return;
never executed: return;
0
757 }-
758 }
never executed: end of block
0
759#endif // QT_NO_DOCKWIDGET-
760 QBrush fill;-
761 bool stippled;-
762 bool panel = (pe == PE_PanelButtonTool);-
763 if ((!(opt->state & State_Sunken ))
(!(opt->state ...tate_Sunken ))Description
TRUEnever evaluated
FALSEnever evaluated
0
764 && (!(opt->state & State_Enabled)
!(opt->state & State_Enabled)Description
TRUEnever evaluated
FALSEnever evaluated
0
765 || !(opt->state & State_MouseOver && opt->state & State_AutoRaise))
opt->state & State_MouseOverDescription
TRUEnever evaluated
FALSEnever evaluated
opt->state & State_AutoRaiseDescription
TRUEnever evaluated
FALSEnever evaluated
0
766 && (opt->state & State_On)) {
(opt->state & State_On)Description
TRUEnever evaluated
FALSEnever evaluated
0
767 fill = QBrush(opt->palette.light().color(), Qt::Dense4Pattern);-
768 stippled = true;-
769 } else {
never executed: end of block
0
770 fill = opt->palette.brush(QPalette::Button);-
771 stippled = false;-
772 }
never executed: end of block
0
773-
774 if (opt->state & (State_Raised | State_Sunken | State_On)) {
opt->state & (...en | State_On)Description
TRUEnever evaluated
FALSEnever evaluated
0
775 if (opt->state & State_AutoRaise) {
opt->state & State_AutoRaiseDescription
TRUEnever evaluated
FALSEnever evaluated
0
776 if(opt->state & (State_Enabled | State_Sunken | State_On)){
opt->state & (...en | State_On)Description
TRUEnever evaluated
FALSEnever evaluated
0
777 if (panel)
panelDescription
TRUEnever evaluated
FALSEnever evaluated
0
778 qDrawShadePanel(p, opt->rect, opt->palette,
never executed: qDrawShadePanel(p, opt->rect, opt->palette, opt->state & (State_Sunken | State_On), 1, &fill);
0
779 opt->state & (State_Sunken | State_On), 1, &fill);
never executed: qDrawShadePanel(p, opt->rect, opt->palette, opt->state & (State_Sunken | State_On), 1, &fill);
0
780 else-
781 qDrawShadeRect(p, opt->rect, opt->palette,
never executed: qDrawShadeRect(p, opt->rect, opt->palette, opt->state & (State_Sunken | State_On), 1);
0
782 opt->state & (State_Sunken | State_On), 1);
never executed: qDrawShadeRect(p, opt->rect, opt->palette, opt->state & (State_Sunken | State_On), 1);
0
783 }-
784 if (stippled) {
stippledDescription
TRUEnever evaluated
FALSEnever evaluated
0
785 p->setPen(opt->palette.button().color());-
786 p->drawRect(opt->rect.adjusted(1,1,-2,-2));-
787 }
never executed: end of block
0
788 } else {
never executed: end of block
0
789 qDrawWinButton(p, opt->rect, opt->palette,-
790 opt->state & (State_Sunken | State_On), panel ? &fill : 0);-
791 }
never executed: end of block
0
792 } else {-
793 p->fillRect(opt->rect, fill);-
794 }
never executed: end of block
0
795 p->setPen(oldPen);-
796 break; }
never executed: break;
0
797 case PE_PanelButtonCommand:
never executed: case PE_PanelButtonCommand:
0
798 if (const QStyleOptionButton *btn = qstyleoption_cast<const QStyleOptionButton *>(opt)) {
const QStyleOp...Button *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
799 QBrush fill;-
800 State flags = opt->state;-
801 QPalette pal = opt->palette;-
802 QRect r = opt->rect;-
803 if (! (flags & State_Sunken) && (flags & State_On))
! (flags & State_Sunken)Description
TRUEnever evaluated
FALSEnever evaluated
(flags & State_On)Description
TRUEnever evaluated
FALSEnever evaluated
0
804 fill = QBrush(pal.light().color(), Qt::Dense4Pattern);
never executed: fill = QBrush(pal.light().color(), Qt::Dense4Pattern);
0
805 else-
806 fill = pal.brush(QPalette::Button);
never executed: fill = pal.brush(QPalette::Button);
0
807-
808 if (btn->features & QStyleOptionButton::DefaultButton && flags & State_Sunken) {
btn->features ...:DefaultButtonDescription
TRUEnever evaluated
FALSEnever evaluated
flags & State_SunkenDescription
TRUEnever evaluated
FALSEnever evaluated
0
809 p->setPen(pal.dark().color());-
810 p->setBrush(fill);-
811 p->drawRect(r.adjusted(0, 0, -1, -1));-
812 } else if (flags & (State_Raised | State_On | State_Sunken)) {
never executed: end of block
flags & (State... State_Sunken)Description
TRUEnever evaluated
FALSEnever evaluated
0
813 qDrawWinButton(p, r, pal, flags & (State_Sunken | State_On),-
814 &fill);-
815 } else {
never executed: end of block
0
816 p->fillRect(r, fill);-
817 }
never executed: end of block
0
818 }-
819 break;
never executed: break;
0
820 case PE_FrameDefaultButton: {
never executed: case PE_FrameDefaultButton:
0
821 QPen oldPen = p->pen();-
822 p->setPen(opt->palette.shadow().color());-
823 QRect rect = opt->rect;-
824 rect.adjust(0, 0, -1, -1);-
825 p->drawRect(rect);-
826 p->setPen(oldPen);-
827 break;
never executed: break;
0
828 }-
829 case PE_IndicatorCheckBox: {
never executed: case PE_IndicatorCheckBox:
0
830 QBrush fill;-
831 if (opt->state & State_NoChange)
opt->state & State_NoChangeDescription
TRUEnever evaluated
FALSEnever evaluated
0
832 fill = QBrush(opt->palette.base().color(), Qt::Dense4Pattern);
never executed: fill = QBrush(opt->palette.base().color(), Qt::Dense4Pattern);
0
833 else if (opt->state & State_Sunken)
opt->state & State_SunkenDescription
TRUEnever evaluated
FALSEnever evaluated
0
834 fill = opt->palette.button();
never executed: fill = opt->palette.button();
0
835 else if (opt->state & State_Enabled)
opt->state & State_EnabledDescription
TRUEnever evaluated
FALSEnever evaluated
0
836 fill = opt->palette.base();
never executed: fill = opt->palette.base();
0
837 else-
838 fill = opt->palette.background();
never executed: fill = opt->palette.background();
0
839 p->save();-
840 doRestore = true;-
841 qDrawWinPanel(p, opt->rect, opt->palette, true, &fill);-
842 if (opt->state & State_NoChange)
opt->state & State_NoChangeDescription
TRUEnever evaluated
FALSEnever evaluated
0
843 p->setPen(opt->palette.dark().color());
never executed: p->setPen(opt->palette.dark().color());
0
844 else-
845 p->setPen(opt->palette.text().color());
never executed: p->setPen(opt->palette.text().color());
0
846 } // Fall through!-
847 case PE_IndicatorViewItemCheck:
code before this statement never executed: case PE_IndicatorViewItemCheck:
never executed: case PE_IndicatorViewItemCheck:
0
848 if (!doRestore) {
!doRestoreDescription
TRUEnever evaluated
FALSEnever evaluated
0
849 p->save();-
850 doRestore = true;-
851 }
never executed: end of block
0
852 if (pe == PE_IndicatorViewItemCheck) {
pe == PE_Indic...rViewItemCheckDescription
TRUEnever evaluated
FALSEnever evaluated
0
853 const QStyleOptionViewItem *itemViewOpt = qstyleoption_cast<const QStyleOptionViewItem *>(opt);-
854 p->setPen(itemViewOpt-
855 && itemViewOpt->showDecorationSelected-
856 && opt->state & State_Selected-
857 ? opt->palette.highlightedText().color()-
858 : opt->palette.text().color());-
859 if (opt->state & State_NoChange)
opt->state & State_NoChangeDescription
TRUEnever evaluated
FALSEnever evaluated
0
860 p->setBrush(opt->palette.brush(QPalette::Button));
never executed: p->setBrush(opt->palette.brush(QPalette::Button));
0
861 p->drawRect(opt->rect.x() + 1, opt->rect.y() + 1, 11, 11);-
862 }
never executed: end of block
0
863 if (!(opt->state & State_Off)) {
!(opt->state & State_Off)Description
TRUEnever evaluated
FALSEnever evaluated
0
864 QLineF lines[7];-
865 int i, xx, yy;-
866 xx = opt->rect.x() + 3;-
867 yy = opt->rect.y() + 5;-
868 for (i = 0; i < 3; ++i) {
i < 3Description
TRUEnever evaluated
FALSEnever evaluated
0
869 lines[i] = QLineF(xx, yy, xx, yy + 2);-
870 ++xx;-
871 ++yy;-
872 }
never executed: end of block
0
873 yy -= 2;-
874 for (i = 3; i < 7; ++i) {
i < 7Description
TRUEnever evaluated
FALSEnever evaluated
0
875 lines[i] = QLineF(xx, yy, xx, yy + 2);-
876 ++xx;-
877 --yy;-
878 }
never executed: end of block
0
879 p->drawLines(lines, 7);-
880 }
never executed: end of block
0
881 if (doRestore)
doRestoreDescription
TRUEnever evaluated
FALSEnever evaluated
0
882 p->restore();
never executed: p->restore();
0
883 break;
never executed: break;
0
884 case PE_FrameFocusRect:
never executed: case PE_FrameFocusRect:
0
885 if (const QStyleOptionFocusRect *fropt = qstyleoption_cast<const QStyleOptionFocusRect *>(opt)) {
const QStyleOp...usRect *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
886 //### check for d->alt_down-
887 if (!(fropt->state & State_KeyboardFocusChange) && !proxy()->styleHint(SH_UnderlineShortcut, opt))
!(fropt->state...rdFocusChange)Description
TRUEnever evaluated
FALSEnever evaluated
!proxy()->styl...Shortcut, opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
888 return;
never executed: return;
0
889 QRect r = opt->rect;-
890 p->save();-
891 p->setBackgroundMode(Qt::TransparentMode);-
892 QColor bg_col = fropt->backgroundColor;-
893 if (!bg_col.isValid())
!bg_col.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
0
894 bg_col = p->background().color();
never executed: bg_col = p->background().color();
0
895 // Create an "XOR" color.-
896 QColor patternCol((bg_col.red() ^ 0xff) & 0xff,-
897 (bg_col.green() ^ 0xff) & 0xff,-
898 (bg_col.blue() ^ 0xff) & 0xff);-
899 p->setBrush(QBrush(patternCol, Qt::Dense4Pattern));-
900 p->setBrushOrigin(r.topLeft());-
901 p->setPen(Qt::NoPen);-
902 p->drawRect(r.left(), r.top(), r.width(), 1); // Top-
903 p->drawRect(r.left(), r.bottom(), r.width(), 1); // Bottom-
904 p->drawRect(r.left(), r.top(), 1, r.height()); // Left-
905 p->drawRect(r.right(), r.top(), 1, r.height()); // Right-
906 p->restore();-
907 }
never executed: end of block
0
908 break;
never executed: break;
0
909 case PE_IndicatorRadioButton:
never executed: case PE_IndicatorRadioButton:
0
910 {-
911#define PTSARRLEN(x) sizeof(x)/(sizeof(QPoint))-
912 static const QPoint pts1[] = { // dark lines-
913 QPoint(1, 9), QPoint(1, 8), QPoint(0, 7), QPoint(0, 4), QPoint(1, 3), QPoint(1, 2),-
914 QPoint(2, 1), QPoint(3, 1), QPoint(4, 0), QPoint(7, 0), QPoint(8, 1), QPoint(9, 1)-
915 };-
916 static const QPoint pts2[] = { // black lines-
917 QPoint(2, 8), QPoint(1, 7), QPoint(1, 4), QPoint(2, 3), QPoint(2, 2), QPoint(3, 2),-
918 QPoint(4, 1), QPoint(7, 1), QPoint(8, 2), QPoint(9, 2)-
919 };-
920 static const QPoint pts3[] = { // background lines-
921 QPoint(2, 9), QPoint(3, 9), QPoint(4, 10), QPoint(7, 10), QPoint(8, 9), QPoint(9, 9),-
922 QPoint(9, 8), QPoint(10, 7), QPoint(10, 4), QPoint(9, 3)-
923 };-
924 static const QPoint pts4[] = { // white lines-
925 QPoint(2, 10), QPoint(3, 10), QPoint(4, 11), QPoint(7, 11), QPoint(8, 10),-
926 QPoint(9, 10), QPoint(10, 9), QPoint(10, 8), QPoint(11, 7), QPoint(11, 4),-
927 QPoint(10, 3), QPoint(10, 2)-
928 };-
929 static const QPoint pts5[] = { // inner fill-
930 QPoint(4, 2), QPoint(7, 2), QPoint(9, 4), QPoint(9, 7), QPoint(7, 9), QPoint(4, 9),-
931 QPoint(2, 7), QPoint(2, 4)-
932 };-
933-
934 // make sure the indicator is square-
935 QRect ir = opt->rect;-
936-
937 if (opt->rect.width() < opt->rect.height()) {
opt->rect.widt...>rect.height()Description
TRUEnever evaluated
FALSEnever evaluated
0
938 ir.setTop(opt->rect.top() + (opt->rect.height() - opt->rect.width()) / 2);-
939 ir.setHeight(opt->rect.width());-
940 } else if (opt->rect.height() < opt->rect.width()) {
never executed: end of block
opt->rect.heig...->rect.width()Description
TRUEnever evaluated
FALSEnever evaluated
0
941 ir.setLeft(opt->rect.left() + (opt->rect.width() - opt->rect.height()) / 2);-
942 ir.setWidth(opt->rect.height());-
943 }
never executed: end of block
0
944-
945 p->save();-
946 p->setRenderHint(QPainter::Qt4CompatiblePainting);-
947 bool down = opt->state & State_Sunken;-
948 bool enabled = opt->state & State_Enabled;-
949 bool on = opt->state & State_On;-
950 QPolygon a;-
951-
952 //center when rect is larger than indicator size-
953 int xOffset = 0;-
954 int yOffset = 0;-
955 int indicatorWidth = proxy()->pixelMetric(PM_ExclusiveIndicatorWidth);-
956 int indicatorHeight = proxy()->pixelMetric(PM_ExclusiveIndicatorHeight);-
957 if (ir.width() > indicatorWidth)
ir.width() > indicatorWidthDescription
TRUEnever evaluated
FALSEnever evaluated
0
958 xOffset += (ir.width() - indicatorWidth)/2;
never executed: xOffset += (ir.width() - indicatorWidth)/2;
0
959 if (ir.height() > indicatorHeight)
ir.height() > indicatorHeightDescription
TRUEnever evaluated
FALSEnever evaluated
0
960 yOffset += (ir.height() - indicatorHeight)/2;
never executed: yOffset += (ir.height() - indicatorHeight)/2;
0
961 p->translate(xOffset, yOffset);-
962-
963 p->translate(ir.x(), ir.y());-
964-
965 p->setPen(opt->palette.dark().color());-
966 p->drawPolyline(pts1, PTSARRLEN(pts1));-
967-
968 p->setPen(opt->palette.shadow().color());-
969 p->drawPolyline(pts2, PTSARRLEN(pts2));-
970-
971 p->setPen(opt->palette.midlight().color());-
972 p->drawPolyline(pts3, PTSARRLEN(pts3));-
973-
974 p->setPen(opt->palette.light().color());-
975 p->drawPolyline(pts4, PTSARRLEN(pts4));-
976-
977 QColor fillColor = (down || !enabled)
downDescription
TRUEnever evaluated
FALSEnever evaluated
!enabledDescription
TRUEnever evaluated
FALSEnever evaluated
0
978 ? opt->palette.button().color()-
979 : opt->palette.base().color();-
980 p->setPen(fillColor);-
981 p->setBrush(fillColor) ;-
982 p->drawPolygon(pts5, PTSARRLEN(pts5));-
983-
984 p->translate(-ir.x(), -ir.y()); // restore translate-
985-
986 if (on) {
onDescription
TRUEnever evaluated
FALSEnever evaluated
0
987 p->setPen(Qt::NoPen);-
988 p->setBrush(opt->palette.text());-
989 p->drawRect(ir.x() + 5, ir.y() + 4, 2, 4);-
990 p->drawRect(ir.x() + 4, ir.y() + 5, 4, 2);-
991 }
never executed: end of block
0
992 p->restore();-
993 break;
never executed: break;
0
994 }-
995#ifndef QT_NO_FRAME-
996 case PE_Frame:
never executed: case PE_Frame:
0
997 case PE_FrameMenu:
never executed: case PE_FrameMenu:
0
998 if (const QStyleOptionFrame *frame = qstyleoption_cast<const QStyleOptionFrame *>(opt)) {
const QStyleOp...nFrame *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
999 if (frame->lineWidth == 2 || pe == PE_Frame) {
frame->lineWidth == 2Description
TRUEnever evaluated
FALSEnever evaluated
pe == PE_FrameDescription
TRUEnever evaluated
FALSEnever evaluated
0
1000 QPalette popupPal = frame->palette;-
1001 if (pe == PE_FrameMenu) {
pe == PE_FrameMenuDescription
TRUEnever evaluated
FALSEnever evaluated
0
1002 popupPal.setColor(QPalette::Light, frame->palette.background().color());-
1003 popupPal.setColor(QPalette::Midlight, frame->palette.light().color());-
1004 }
never executed: end of block
0
1005 if (pe == PE_Frame && (frame->state & State_Raised))
pe == PE_FrameDescription
TRUEnever evaluated
FALSEnever evaluated
(frame->state & State_Raised)Description
TRUEnever evaluated
FALSEnever evaluated
0
1006 qDrawWinButton(p, frame->rect, popupPal, frame->state & State_Sunken);
never executed: qDrawWinButton(p, frame->rect, popupPal, frame->state & State_Sunken);
0
1007 else if (pe == PE_Frame && (frame->state & State_Sunken))
pe == PE_FrameDescription
TRUEnever evaluated
FALSEnever evaluated
(frame->state & State_Sunken)Description
TRUEnever evaluated
FALSEnever evaluated
0
1008 {-
1009 popupPal.setColor(QPalette::Midlight, frame->palette.background().color());-
1010 qDrawWinPanel(p, frame->rect, popupPal, frame->state & State_Sunken);-
1011 }
never executed: end of block
0
1012 else-
1013 qDrawWinPanel(p, frame->rect, popupPal, frame->state & State_Sunken);
never executed: qDrawWinPanel(p, frame->rect, popupPal, frame->state & State_Sunken);
0
1014 } else {-
1015 QCommonStyle::drawPrimitive(pe, opt, p, w);-
1016 }
never executed: end of block
0
1017 } else {-
1018 QPalette popupPal = opt->palette;-
1019 popupPal.setColor(QPalette::Light, opt->palette.background().color());-
1020 popupPal.setColor(QPalette::Midlight, opt->palette.light().color());-
1021 qDrawWinPanel(p, opt->rect, popupPal, opt->state & State_Sunken);-
1022 }
never executed: end of block
0
1023 break;
never executed: break;
0
1024#endif // QT_NO_FRAME-
1025 case PE_FrameButtonBevel:
never executed: case PE_FrameButtonBevel:
0
1026 case PE_PanelButtonBevel: {
never executed: case PE_PanelButtonBevel:
0
1027 QBrush fill;-
1028 bool panel = pe != PE_FrameButtonBevel;-
1029 p->setBrushOrigin(opt->rect.topLeft());-
1030 if (!(opt->state & State_Sunken) && (opt->state & State_On))
!(opt->state & State_Sunken)Description
TRUEnever evaluated
FALSEnever evaluated
(opt->state & State_On)Description
TRUEnever evaluated
FALSEnever evaluated
0
1031 fill = QBrush(opt->palette.light().color(), Qt::Dense4Pattern);
never executed: fill = QBrush(opt->palette.light().color(), Qt::Dense4Pattern);
0
1032 else-
1033 fill = opt->palette.brush(QPalette::Button);
never executed: fill = opt->palette.brush(QPalette::Button);
0
1034-
1035 if (opt->state & (State_Raised | State_On | State_Sunken)) {
opt->state & (... State_Sunken)Description
TRUEnever evaluated
FALSEnever evaluated
0
1036 qDrawWinButton(p, opt->rect, opt->palette, opt->state & (State_Sunken | State_On),-
1037 panel ? &fill : 0);-
1038 } else {
never executed: end of block
0
1039 if (panel)
panelDescription
TRUEnever evaluated
FALSEnever evaluated
0
1040 p->fillRect(opt->rect, fill);
never executed: p->fillRect(opt->rect, fill);
0
1041 else-
1042 p->drawRect(opt->rect);
never executed: p->drawRect(opt->rect);
0
1043 }-
1044 break; }
never executed: break;
0
1045 case PE_FrameWindow: {
never executed: case PE_FrameWindow:
0
1046 QPalette popupPal = opt->palette;-
1047 popupPal.setColor(QPalette::Light, opt->palette.background().color());-
1048 popupPal.setColor(QPalette::Midlight, opt->palette.light().color());-
1049 qDrawWinPanel(p, opt->rect, popupPal, opt->state & State_Sunken);-
1050 break; }
never executed: break;
0
1051#ifndef QT_NO_DOCKWIDGET-
1052 case PE_IndicatorDockWidgetResizeHandle:
never executed: case PE_IndicatorDockWidgetResizeHandle:
0
1053 break;
never executed: break;
0
1054 case PE_FrameDockWidget:
never executed: case PE_FrameDockWidget:
0
1055 if (qstyleoption_cast<const QStyleOptionFrame *>(opt)) {
qstyleoption_c...nFrame *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
1056 proxy()->drawPrimitive(QStyle::PE_FrameWindow, opt, p, w);-
1057 }
never executed: end of block
0
1058 break;
never executed: break;
0
1059#endif // QT_NO_DOCKWIDGET-
1060-
1061 case PE_FrameStatusBarItem:
never executed: case PE_FrameStatusBarItem:
0
1062 qDrawShadePanel(p, opt->rect, opt->palette, true, 1, 0);-
1063 break;
never executed: break;
0
1064-
1065 case PE_IndicatorProgressChunk:
never executed: case PE_IndicatorProgressChunk:
0
1066 {-
1067 bool vertical = false, inverted = false;-
1068 if (const QStyleOptionProgressBar *pb = qstyleoption_cast<const QStyleOptionProgressBar *>(opt)) {
const QStyleOp...essBar *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
1069 vertical = pb->orientation == Qt::Vertical;-
1070 inverted = pb->invertedAppearance;-
1071 }
never executed: end of block
0
1072-
1073 int space = 2;-
1074 int chunksize = proxy()->pixelMetric(PM_ProgressBarChunkWidth, opt, w) - space;-
1075 if (!vertical) {
!verticalDescription
TRUEnever evaluated
FALSEnever evaluated
0
1076 if (opt->rect.width() <= chunksize)
opt->rect.width() <= chunksizeDescription
TRUEnever evaluated
FALSEnever evaluated
0
1077 space = 0;
never executed: space = 0;
0
1078-
1079 if (inverted)
invertedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1080 p->fillRect(opt->rect.x() + space, opt->rect.y(), opt->rect.width() - space, opt->rect.height(),
never executed: p->fillRect(opt->rect.x() + space, opt->rect.y(), opt->rect.width() - space, opt->rect.height(), opt->palette.brush(QPalette::Highlight));
0
1081 opt->palette.brush(QPalette::Highlight));
never executed: p->fillRect(opt->rect.x() + space, opt->rect.y(), opt->rect.width() - space, opt->rect.height(), opt->palette.brush(QPalette::Highlight));
0
1082 else-
1083 p->fillRect(opt->rect.x(), opt->rect.y(), opt->rect.width() - space, opt->rect.height(),
never executed: p->fillRect(opt->rect.x(), opt->rect.y(), opt->rect.width() - space, opt->rect.height(), opt->palette.brush(QPalette::Highlight));
0
1084 opt->palette.brush(QPalette::Highlight));
never executed: p->fillRect(opt->rect.x(), opt->rect.y(), opt->rect.width() - space, opt->rect.height(), opt->palette.brush(QPalette::Highlight));
0
1085 } else {-
1086 if (opt->rect.height() <= chunksize)
opt->rect.heig...) <= chunksizeDescription
TRUEnever evaluated
FALSEnever evaluated
0
1087 space = 0;
never executed: space = 0;
0
1088-
1089 if (inverted)
invertedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1090 p->fillRect(opt->rect.x(), opt->rect.y(), opt->rect.width(), opt->rect.height() - space,
never executed: p->fillRect(opt->rect.x(), opt->rect.y(), opt->rect.width(), opt->rect.height() - space, opt->palette.brush(QPalette::Highlight));
0
1091 opt->palette.brush(QPalette::Highlight));
never executed: p->fillRect(opt->rect.x(), opt->rect.y(), opt->rect.width(), opt->rect.height() - space, opt->palette.brush(QPalette::Highlight));
0
1092 else-
1093 p->fillRect(opt->rect.x(), opt->rect.y() + space, opt->rect.width(), opt->rect.height() - space,
never executed: p->fillRect(opt->rect.x(), opt->rect.y() + space, opt->rect.width(), opt->rect.height() - space, opt->palette.brush(QPalette::Highlight));
0
1094 opt->palette.brush(QPalette::Highlight));
never executed: p->fillRect(opt->rect.x(), opt->rect.y() + space, opt->rect.width(), opt->rect.height() - space, opt->palette.brush(QPalette::Highlight));
0
1095 }-
1096 }-
1097 break;
never executed: break;
0
1098-
1099 case PE_FrameTabWidget: {
never executed: case PE_FrameTabWidget:
0
1100 qDrawWinButton(p, opt->rect, opt->palette, false, 0);-
1101 break;
never executed: break;
0
1102 }-
1103 default:
never executed: default:
0
1104 QCommonStyle::drawPrimitive(pe, opt, p, w);-
1105 }
never executed: end of block
0
1106}-
1107-
1108/*! \reimp */-
1109void QWindowsStyle::drawControl(ControlElement ce, const QStyleOption *opt, QPainter *p,-
1110 const QWidget *widget) const-
1111{-
1112 switch (ce) {-
1113#ifndef QT_NO_RUBBERBAND-
1114 case CE_RubberBand:
never executed: case CE_RubberBand:
0
1115 if (qstyleoption_cast<const QStyleOptionRubberBand *>(opt)) {
qstyleoption_c...erBand *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
1116 // ### workaround for slow general painter path-
1117 QPixmap tiledPixmap(16, 16);-
1118 QPainter pixmapPainter(&tiledPixmap);-
1119 pixmapPainter.setPen(Qt::NoPen);-
1120 pixmapPainter.setBrush(Qt::Dense4Pattern);-
1121 pixmapPainter.setBackground(Qt::white);-
1122 pixmapPainter.setBackgroundMode(Qt::OpaqueMode);-
1123 pixmapPainter.drawRect(0, 0, tiledPixmap.width(), tiledPixmap.height());-
1124 pixmapPainter.end();-
1125 tiledPixmap = QPixmap::fromImage(tiledPixmap.toImage());-
1126 p->save();-
1127 QRect r = opt->rect;-
1128 QStyleHintReturnMask mask;-
1129 if (proxy()->styleHint(QStyle::SH_RubberBand_Mask, opt, widget, &mask))
proxy()->style...widget, &mask)Description
TRUEnever evaluated
FALSEnever evaluated
0
1130 p->setClipRegion(mask.region);
never executed: p->setClipRegion(mask.region);
0
1131 p->drawTiledPixmap(r.x(), r.y(), r.width(), r.height(), tiledPixmap);-
1132 p->restore();-
1133 return;
never executed: return;
0
1134 }-
1135 break;
never executed: break;
0
1136#endif // QT_NO_RUBBERBAND-
1137-
1138#if !defined(QT_NO_MENU) && !defined(QT_NO_MAINWINDOW)-
1139 case CE_MenuBarEmptyArea:
never executed: case CE_MenuBarEmptyArea:
0
1140 if (widget && qobject_cast<const QMainWindow *>(widget->parentWidget())) {
widgetDescription
TRUEnever evaluated
FALSEnever evaluated
qobject_cast<c...arentWidget())Description
TRUEnever evaluated
FALSEnever evaluated
0
1141 p->fillRect(opt->rect, opt->palette.button());-
1142 QPen oldPen = p->pen();-
1143 p->setPen(QPen(opt->palette.dark().color()));-
1144 p->drawLine(opt->rect.bottomLeft(), opt->rect.bottomRight());-
1145 p->setPen(oldPen);-
1146 }
never executed: end of block
0
1147 break;
never executed: break;
0
1148#endif-
1149#ifndef QT_NO_MENU-
1150 case CE_MenuItem:
never executed: case CE_MenuItem:
0
1151 if (const QStyleOptionMenuItem *menuitem = qstyleoption_cast<const QStyleOptionMenuItem *>(opt)) {
const QStyleOp...nuItem *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
1152 int x, y, w, h;-
1153 menuitem->rect.getRect(&x, &y, &w, &h);-
1154 int tab = menuitem->tabWidth;-
1155 bool dis = !(menuitem->state & State_Enabled);-
1156 bool checked = menuitem->checkType != QStyleOptionMenuItem::NotCheckable
menuitem->chec...::NotCheckableDescription
TRUEnever evaluated
FALSEnever evaluated
0
1157 ? menuitem->checked : false;-
1158 bool act = menuitem->state & State_Selected;-
1159-
1160 // windows always has a check column, regardless whether we have an icon or not-
1161 int checkcol = qMax<int>(menuitem->maxIconWidth, QWindowsStylePrivate::windowsCheckMarkWidth);-
1162-
1163 QBrush fill = menuitem->palette.brush(act ? QPalette::Highlight : QPalette::Button);-
1164 p->fillRect(menuitem->rect.adjusted(0, 0, -1, 0), fill);-
1165-
1166 if (menuitem->menuItemType == QStyleOptionMenuItem::Separator){
menuitem->menu...tem::SeparatorDescription
TRUEnever evaluated
FALSEnever evaluated
0
1167 int yoff = y-1 + h / 2;-
1168 p->setPen(menuitem->palette.dark().color());-
1169 p->drawLine(x + 2, yoff, x + w - 4, yoff);-
1170 p->setPen(menuitem->palette.light().color());-
1171 p->drawLine(x + 2, yoff + 1, x + w - 4, yoff + 1);-
1172 return;
never executed: return;
0
1173 }-
1174-
1175 QRect vCheckRect = visualRect(opt->direction, menuitem->rect, QRect(menuitem->rect.x(), menuitem->rect.y(), checkcol, menuitem->rect.height()));-
1176 if (!menuitem->icon.isNull() && checked) {
!menuitem->icon.isNull()Description
TRUEnever evaluated
FALSEnever evaluated
checkedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1177 if (act) {
actDescription
TRUEnever evaluated
FALSEnever evaluated
0
1178 qDrawShadePanel(p, vCheckRect,-
1179 menuitem->palette, true, 1,-
1180 &menuitem->palette.brush(QPalette::Button));-
1181 } else {
never executed: end of block
0
1182 QBrush fill(menuitem->palette.light().color(), Qt::Dense4Pattern);-
1183 qDrawShadePanel(p, vCheckRect, menuitem->palette, true, 1, &fill);-
1184 }
never executed: end of block
0
1185 } else if (!act) {
!actDescription
TRUEnever evaluated
FALSEnever evaluated
0
1186 p->fillRect(vCheckRect, menuitem->palette.brush(QPalette::Button));-
1187 }
never executed: end of block
0
1188-
1189 // On Windows Style, if we have a checkable item and an icon we-
1190 // draw the icon recessed to indicate an item is checked. If we-
1191 // have no icon, we draw a checkmark instead.-
1192 if (!menuitem->icon.isNull()) {
!menuitem->icon.isNull()Description
TRUEnever evaluated
FALSEnever evaluated
0
1193 QIcon::Mode mode = dis ? QIcon::Disabled : QIcon::Normal;
disDescription
TRUEnever evaluated
FALSEnever evaluated
0
1194 if (act && !dis)
actDescription
TRUEnever evaluated
FALSEnever evaluated
!disDescription
TRUEnever evaluated
FALSEnever evaluated
0
1195 mode = QIcon::Active;
never executed: mode = QIcon::Active;
0
1196 QPixmap pixmap;-
1197 if (checked)
checkedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1198 pixmap = menuitem->icon.pixmap(proxy()->pixelMetric(PM_SmallIconSize, opt, widget), mode, QIcon::On);
never executed: pixmap = menuitem->icon.pixmap(proxy()->pixelMetric(PM_SmallIconSize, opt, widget), mode, QIcon::On);
0
1199 else-
1200 pixmap = menuitem->icon.pixmap(proxy()->pixelMetric(PM_SmallIconSize, opt, widget), mode);
never executed: pixmap = menuitem->icon.pixmap(proxy()->pixelMetric(PM_SmallIconSize, opt, widget), mode);
0
1201 const int pixw = pixmap.width() / pixmap.devicePixelRatio();-
1202 const int pixh = pixmap.height() / pixmap.devicePixelRatio();-
1203 if (act && !dis && !checked)
actDescription
TRUEnever evaluated
FALSEnever evaluated
!disDescription
TRUEnever evaluated
FALSEnever evaluated
!checkedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1204 qDrawShadePanel(p, vCheckRect, menuitem->palette, false, 1,
never executed: qDrawShadePanel(p, vCheckRect, menuitem->palette, false, 1, &menuitem->palette.brush(QPalette::Button));
0
1205 &menuitem->palette.brush(QPalette::Button));
never executed: qDrawShadePanel(p, vCheckRect, menuitem->palette, false, 1, &menuitem->palette.brush(QPalette::Button));
0
1206 QRect pmr(0, 0, pixw, pixh);-
1207 pmr.moveCenter(vCheckRect.center());-
1208 p->setPen(menuitem->palette.text().color());-
1209 p->drawPixmap(pmr.topLeft(), pixmap);-
1210 } else if (checked) {
never executed: end of block
checkedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1211 QStyleOptionMenuItem newMi = *menuitem;-
1212 newMi.state = State_None;-
1213 if (!dis)
!disDescription
TRUEnever evaluated
FALSEnever evaluated
0
1214 newMi.state |= State_Enabled;
never executed: newMi.state |= State_Enabled;
0
1215 if (act)
actDescription
TRUEnever evaluated
FALSEnever evaluated
0
1216 newMi.state |= State_On;
never executed: newMi.state |= State_On;
0
1217 newMi.rect = visualRect(opt->direction, menuitem->rect, QRect(menuitem->rect.x() + QWindowsStylePrivate::windowsItemFrame,-
1218 menuitem->rect.y() + QWindowsStylePrivate::windowsItemFrame,-
1219 checkcol - 2 * QWindowsStylePrivate::windowsItemFrame,-
1220 menuitem->rect.height() - 2 * QWindowsStylePrivate::windowsItemFrame));-
1221 proxy()->drawPrimitive(PE_IndicatorMenuCheckMark, &newMi, p, widget);-
1222 }
never executed: end of block
0
1223 p->setPen(act ? menuitem->palette.highlightedText().color() : menuitem->palette.buttonText().color());-
1224-
1225 QColor discol;-
1226 if (dis) {
disDescription
TRUEnever evaluated
FALSEnever evaluated
0
1227 discol = menuitem->palette.text().color();-
1228 p->setPen(discol);-
1229 }
never executed: end of block
0
1230-
1231 int xm = int(QWindowsStylePrivate::windowsItemFrame) + checkcol + int(QWindowsStylePrivate::windowsItemHMargin);-
1232 int xpos = menuitem->rect.x() + xm;-
1233 QRect textRect(xpos, y + QWindowsStylePrivate::windowsItemVMargin,-
1234 w - xm - QWindowsStylePrivate::windowsRightBorder - tab + 1, h - 2 * QWindowsStylePrivate::windowsItemVMargin);-
1235 QRect vTextRect = visualRect(opt->direction, menuitem->rect, textRect);-
1236 QString s = menuitem->text;-
1237 if (!s.isEmpty()) { // draw text
!s.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
0
1238 p->save();-
1239 int t = s.indexOf(QLatin1Char('\t'));-
1240 int text_flags = Qt::AlignVCenter | Qt::TextShowMnemonic | Qt::TextDontClip | Qt::TextSingleLine;-
1241 if (!proxy()->styleHint(SH_UnderlineShortcut, menuitem, widget))
!proxy()->styl...uitem, widget)Description
TRUEnever evaluated
FALSEnever evaluated
0
1242 text_flags |= Qt::TextHideMnemonic;
never executed: text_flags |= Qt::TextHideMnemonic;
0
1243 text_flags |= Qt::AlignLeft;-
1244 if (t >= 0) {
t >= 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1245 QRect vShortcutRect = visualRect(opt->direction, menuitem->rect,-
1246 QRect(textRect.topRight(), QPoint(menuitem->rect.right(), textRect.bottom())));-
1247 if (dis && !act && proxy()->styleHint(SH_EtchDisabledText, opt, widget)) {
disDescription
TRUEnever evaluated
FALSEnever evaluated
!actDescription
TRUEnever evaluated
FALSEnever evaluated
proxy()->style..., opt, widget)Description
TRUEnever evaluated
FALSEnever evaluated
0
1248 p->setPen(menuitem->palette.light().color());-
1249 p->drawText(vShortcutRect.adjusted(1,1,1,1), text_flags, s.mid(t + 1));-
1250 p->setPen(discol);-
1251 }
never executed: end of block
0
1252 p->drawText(vShortcutRect, text_flags, s.mid(t + 1));-
1253 s = s.left(t);-
1254 }
never executed: end of block
0
1255 QFont font = menuitem->font;-
1256 if (menuitem->menuItemType == QStyleOptionMenuItem::DefaultItem)
menuitem->menu...m::DefaultItemDescription
TRUEnever evaluated
FALSEnever evaluated
0
1257 font.setBold(true);
never executed: font.setBold(true);
0
1258 p->setFont(font);-
1259 if (dis && !act && proxy()->styleHint(SH_EtchDisabledText, opt, widget)) {
disDescription
TRUEnever evaluated
FALSEnever evaluated
!actDescription
TRUEnever evaluated
FALSEnever evaluated
proxy()->style..., opt, widget)Description
TRUEnever evaluated
FALSEnever evaluated
0
1260 p->setPen(menuitem->palette.light().color());-
1261 p->drawText(vTextRect.adjusted(1,1,1,1), text_flags, s.left(t));-
1262 p->setPen(discol);-
1263 }
never executed: end of block
0
1264 p->drawText(vTextRect, text_flags, s.left(t));-
1265 p->restore();-
1266 }
never executed: end of block
0
1267 if (menuitem->menuItemType == QStyleOptionMenuItem::SubMenu) {// draw sub menu arrow
menuitem->menu...uItem::SubMenuDescription
TRUEnever evaluated
FALSEnever evaluated
0
1268 int dim = (h - 2 * QWindowsStylePrivate::windowsItemFrame) / 2;-
1269 PrimitiveElement arrow;-
1270 arrow = (opt->direction == Qt::RightToLeft) ? PE_IndicatorArrowLeft : PE_IndicatorArrowRight;
(opt->directio...::RightToLeft)Description
TRUEnever evaluated
FALSEnever evaluated
0
1271 xpos = x + w - QWindowsStylePrivate::windowsArrowHMargin - QWindowsStylePrivate::windowsItemFrame - dim;-
1272 QRect vSubMenuRect = visualRect(opt->direction, menuitem->rect, QRect(xpos, y + h / 2 - dim / 2, dim, dim));-
1273 QStyleOptionMenuItem newMI = *menuitem;-
1274 newMI.rect = vSubMenuRect;-
1275 newMI.state = dis ? State_None : State_Enabled;
disDescription
TRUEnever evaluated
FALSEnever evaluated
0
1276 if (act)
actDescription
TRUEnever evaluated
FALSEnever evaluated
0
1277 newMI.palette.setColor(QPalette::ButtonText,
never executed: newMI.palette.setColor(QPalette::ButtonText, newMI.palette.highlightedText().color());
0
1278 newMI.palette.highlightedText().color());
never executed: newMI.palette.setColor(QPalette::ButtonText, newMI.palette.highlightedText().color());
0
1279 proxy()->drawPrimitive(arrow, &newMI, p, widget);-
1280 }
never executed: end of block
0
1281-
1282 }
never executed: end of block
0
1283 break;
never executed: break;
0
1284#endif // QT_NO_MENU-
1285#ifndef QT_NO_MENUBAR-
1286 case CE_MenuBarItem:
never executed: case CE_MenuBarItem:
0
1287 if (const QStyleOptionMenuItem *mbi = qstyleoption_cast<const QStyleOptionMenuItem *>(opt)) {
const QStyleOp...nuItem *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
1288 bool active = mbi->state & State_Selected;-
1289 bool hasFocus = mbi->state & State_HasFocus;-
1290 bool down = mbi->state & State_Sunken;-
1291 QStyleOptionMenuItem newMbi = *mbi;-
1292 p->fillRect(mbi->rect, mbi->palette.brush(QPalette::Button));-
1293 if (active || hasFocus) {
activeDescription
TRUEnever evaluated
FALSEnever evaluated
hasFocusDescription
TRUEnever evaluated
FALSEnever evaluated
0
1294 QBrush b = mbi->palette.brush(QPalette::Button);-
1295 if (active && down)
activeDescription
TRUEnever evaluated
FALSEnever evaluated
downDescription
TRUEnever evaluated
FALSEnever evaluated
0
1296 p->setBrushOrigin(p->brushOrigin() + QPoint(1, 1));
never executed: p->setBrushOrigin(p->brushOrigin() + QPoint(1, 1));
0
1297 if (active && hasFocus)
activeDescription
TRUEnever evaluated
FALSEnever evaluated
hasFocusDescription
TRUEnever evaluated
FALSEnever evaluated
0
1298 qDrawShadeRect(p, mbi->rect.x(), mbi->rect.y(), mbi->rect.width(),
never executed: qDrawShadeRect(p, mbi->rect.x(), mbi->rect.y(), mbi->rect.width(), mbi->rect.height(), mbi->palette, active && down, 1, 0, &b);
0
1299 mbi->rect.height(), mbi->palette, active && down, 1, 0, &b);
never executed: qDrawShadeRect(p, mbi->rect.x(), mbi->rect.y(), mbi->rect.width(), mbi->rect.height(), mbi->palette, active && down, 1, 0, &b);
0
1300 if (active && down) {
activeDescription
TRUEnever evaluated
FALSEnever evaluated
downDescription
TRUEnever evaluated
FALSEnever evaluated
0
1301 newMbi.rect.translate(proxy()->pixelMetric(PM_ButtonShiftHorizontal, mbi, widget),-
1302 proxy()->pixelMetric(PM_ButtonShiftVertical, mbi, widget));-
1303 p->setBrushOrigin(p->brushOrigin() - QPoint(1, 1));-
1304 }
never executed: end of block
0
1305 }
never executed: end of block
0
1306 QCommonStyle::drawControl(ce, &newMbi, p, widget);-
1307 }
never executed: end of block
0
1308 break;
never executed: break;
0
1309#endif // QT_NO_MENUBAR-
1310#ifndef QT_NO_TABBAR-
1311 case CE_TabBarTabShape:
never executed: case CE_TabBarTabShape:
0
1312 if (const QStyleOptionTab *tab = qstyleoption_cast<const QStyleOptionTab *>(opt)) {
const QStyleOp...ionTab *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
1313 bool rtlHorTabs = (tab->direction == Qt::RightToLeft
tab->direction...t::RightToLeftDescription
TRUEnever evaluated
FALSEnever evaluated
0
1314 && (tab->shape == QTabBar::RoundedNorth
tab->shape == ...::RoundedNorthDescription
TRUEnever evaluated
FALSEnever evaluated
0
1315 || tab->shape == QTabBar::RoundedSouth));
tab->shape == ...::RoundedSouthDescription
TRUEnever evaluated
FALSEnever evaluated
0
1316 bool selected = tab->state & State_Selected;-
1317 bool lastTab = ((!rtlHorTabs && tab->position == QStyleOptionTab::End)
!rtlHorTabsDescription
TRUEnever evaluated
FALSEnever evaluated
tab->position ...OptionTab::EndDescription
TRUEnever evaluated
FALSEnever evaluated
0
1318 || (rtlHorTabs
rtlHorTabsDescription
TRUEnever evaluated
FALSEnever evaluated
0
1319 && tab->position == QStyleOptionTab::Beginning));
tab->position ...Tab::BeginningDescription
TRUEnever evaluated
FALSEnever evaluated
0
1320 bool firstTab = ((!rtlHorTabs
!rtlHorTabsDescription
TRUEnever evaluated
FALSEnever evaluated
0
1321 && tab->position == QStyleOptionTab::Beginning)
tab->position ...Tab::BeginningDescription
TRUEnever evaluated
FALSEnever evaluated
0
1322 || (rtlHorTabs
rtlHorTabsDescription
TRUEnever evaluated
FALSEnever evaluated
0
1323 && tab->position == QStyleOptionTab::End));
tab->position ...OptionTab::EndDescription
TRUEnever evaluated
FALSEnever evaluated
0
1324 bool onlyOne = tab->position == QStyleOptionTab::OnlyOneTab;-
1325 bool previousSelected =-
1326 ((!rtlHorTabs
!rtlHorTabsDescription
TRUEnever evaluated
FALSEnever evaluated
0
1327 && tab->selectedPosition == QStyleOptionTab::PreviousIsSelected)
tab->selectedP...iousIsSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1328 || (rtlHorTabs
rtlHorTabsDescription
TRUEnever evaluated
FALSEnever evaluated
0
1329 && tab->selectedPosition == QStyleOptionTab::NextIsSelected));
tab->selectedP...NextIsSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1330 bool nextSelected =-
1331 ((!rtlHorTabs
!rtlHorTabsDescription
TRUEnever evaluated
FALSEnever evaluated
0
1332 && tab->selectedPosition == QStyleOptionTab::NextIsSelected)
tab->selectedP...NextIsSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1333 || (rtlHorTabs
rtlHorTabsDescription
TRUEnever evaluated
FALSEnever evaluated
0
1334 && tab->selectedPosition
tab->selectedP...iousIsSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1335 == QStyleOptionTab::PreviousIsSelected));
tab->selectedP...iousIsSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1336 int tabBarAlignment = proxy()->styleHint(SH_TabBar_Alignment, tab, widget);-
1337 bool leftAligned = (!rtlHorTabs && tabBarAlignment == Qt::AlignLeft)
!rtlHorTabsDescription
TRUEnever evaluated
FALSEnever evaluated
tabBarAlignmen... Qt::AlignLeftDescription
TRUEnever evaluated
FALSEnever evaluated
0
1338 || (rtlHorTabs
rtlHorTabsDescription
TRUEnever evaluated
FALSEnever evaluated
0
1339 && tabBarAlignment == Qt::AlignRight);
tabBarAlignmen...Qt::AlignRightDescription
TRUEnever evaluated
FALSEnever evaluated
0
1340-
1341 bool rightAligned = (!rtlHorTabs && tabBarAlignment == Qt::AlignRight)
!rtlHorTabsDescription
TRUEnever evaluated
FALSEnever evaluated
tabBarAlignmen...Qt::AlignRightDescription
TRUEnever evaluated
FALSEnever evaluated
0
1342 || (rtlHorTabs
rtlHorTabsDescription
TRUEnever evaluated
FALSEnever evaluated
0
1343 && tabBarAlignment == Qt::AlignLeft);
tabBarAlignmen... Qt::AlignLeftDescription
TRUEnever evaluated
FALSEnever evaluated
0
1344-
1345 QColor light = tab->palette.light().color();-
1346 QColor dark = tab->palette.dark().color();-
1347 QColor shadow = tab->palette.shadow().color();-
1348 int borderThinkness = proxy()->pixelMetric(PM_TabBarBaseOverlap, tab, widget);-
1349 if (selected)
selectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1350 borderThinkness /= 2;
never executed: borderThinkness /= 2;
0
1351 QRect r2(opt->rect);-
1352 int x1 = r2.left();-
1353 int x2 = r2.right();-
1354 int y1 = r2.top();-
1355 int y2 = r2.bottom();-
1356 switch (tab->shape) {-
1357 default:
never executed: default:
0
1358 QCommonStyle::drawControl(ce, tab, p, widget);-
1359 break;
never executed: break;
0
1360 case QTabBar::RoundedNorth: {
never executed: case QTabBar::RoundedNorth:
0
1361 if (!selected) {
!selectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1362 y1 += 2;-
1363 x1 += onlyOne || firstTab ? borderThinkness : 0;
onlyOneDescription
TRUEnever evaluated
FALSEnever evaluated
firstTabDescription
TRUEnever evaluated
FALSEnever evaluated
0
1364 x2 -= onlyOne || lastTab ? borderThinkness : 0;
onlyOneDescription
TRUEnever evaluated
FALSEnever evaluated
lastTabDescription
TRUEnever evaluated
FALSEnever evaluated
0
1365 }
never executed: end of block
0
1366-
1367 p->fillRect(QRect(x1 + 1, y1 + 1, (x2 - x1) - 1, (y2 - y1) - 2), tab->palette.background());-
1368-
1369 // Delete border-
1370 if (selected) {
selectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1371 p->fillRect(QRect(x1,y2-1,x2-x1,1), tab->palette.background());-
1372 p->fillRect(QRect(x1,y2,x2-x1,1), tab->palette.background());-
1373 }
never executed: end of block
0
1374 // Left-
1375 if (firstTab || selected || onlyOne || !previousSelected) {
firstTabDescription
TRUEnever evaluated
FALSEnever evaluated
selectedDescription
TRUEnever evaluated
FALSEnever evaluated
onlyOneDescription
TRUEnever evaluated
FALSEnever evaluated
!previousSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1376 p->setPen(light);-
1377 p->drawLine(x1, y1 + 2, x1, y2 - ((onlyOne || firstTab) && selected && leftAligned ? 0 : borderThinkness));-
1378 p->drawPoint(x1 + 1, y1 + 1);-
1379 }
never executed: end of block
0
1380 // Top-
1381 {-
1382 int beg = x1 + (previousSelected ? 0 : 2);
previousSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1383 int end = x2 - (nextSelected ? 0 : 2);
nextSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1384 p->setPen(light);-
1385 p->drawLine(beg, y1, end, y1);-
1386 }-
1387 // Right-
1388 if (lastTab || selected || onlyOne || !nextSelected) {
lastTabDescription
TRUEnever evaluated
FALSEnever evaluated
selectedDescription
TRUEnever evaluated
FALSEnever evaluated
onlyOneDescription
TRUEnever evaluated
FALSEnever evaluated
!nextSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1389 p->setPen(shadow);-
1390 p->drawLine(x2, y1 + 2, x2, y2 - ((onlyOne || lastTab) && selected && rightAligned ? 0 : borderThinkness));-
1391 p->drawPoint(x2 - 1, y1 + 1);-
1392 p->setPen(dark);-
1393 p->drawLine(x2 - 1, y1 + 2, x2 - 1, y2 - ((onlyOne || lastTab) && selected && rightAligned ? 0 : borderThinkness));-
1394 }
never executed: end of block
0
1395 break; }
never executed: break;
0
1396 case QTabBar::RoundedSouth: {
never executed: case QTabBar::RoundedSouth:
0
1397 if (!selected) {
!selectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1398 y2 -= 2;-
1399 x1 += firstTab ? borderThinkness : 0;
firstTabDescription
TRUEnever evaluated
FALSEnever evaluated
0
1400 x2 -= lastTab ? borderThinkness : 0;
lastTabDescription
TRUEnever evaluated
FALSEnever evaluated
0
1401 }
never executed: end of block
0
1402-
1403 p->fillRect(QRect(x1 + 1, y1 + 2, (x2 - x1) - 1, (y2 - y1) - 1), tab->palette.background());-
1404-
1405 // Delete border-
1406 if (selected) {
selectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1407 p->fillRect(QRect(x1, y1 + 1, (x2 - 1)-x1, 1), tab->palette.background());-
1408 p->fillRect(QRect(x1, y1, (x2 - 1)-x1, 1), tab->palette.background());-
1409 }
never executed: end of block
0
1410 // Left-
1411 if (firstTab || selected || onlyOne || !previousSelected) {
firstTabDescription
TRUEnever evaluated
FALSEnever evaluated
selectedDescription
TRUEnever evaluated
FALSEnever evaluated
onlyOneDescription
TRUEnever evaluated
FALSEnever evaluated
!previousSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1412 p->setPen(light);-
1413 p->drawLine(x1, y2 - 2, x1, y1 + ((onlyOne || firstTab) && selected && leftAligned ? 0 : borderThinkness));-
1414 p->drawPoint(x1 + 1, y2 - 1);-
1415 }
never executed: end of block
0
1416 // Bottom-
1417 {-
1418 int beg = x1 + (previousSelected ? 0 : 2);
previousSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1419 int end = x2 - (nextSelected ? 0 : 2);
nextSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1420 p->setPen(shadow);-
1421 p->drawLine(beg, y2, end, y2);-
1422 p->setPen(dark);-
1423 p->drawLine(beg, y2 - 1, end, y2 - 1);-
1424 }-
1425 // Right-
1426 if (lastTab || selected || onlyOne || !nextSelected) {
lastTabDescription
TRUEnever evaluated
FALSEnever evaluated
selectedDescription
TRUEnever evaluated
FALSEnever evaluated
onlyOneDescription
TRUEnever evaluated
FALSEnever evaluated
!nextSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1427 p->setPen(shadow);-
1428 p->drawLine(x2, y2 - 2, x2, y1 + ((onlyOne || lastTab) && selected && rightAligned ? 0 : borderThinkness));-
1429 p->drawPoint(x2 - 1, y2 - 1);-
1430 p->setPen(dark);-
1431 p->drawLine(x2 - 1, y2 - 2, x2 - 1, y1 + ((onlyOne || lastTab) && selected && rightAligned ? 0 : borderThinkness));-
1432 }
never executed: end of block
0
1433 break; }
never executed: break;
0
1434 case QTabBar::RoundedWest: {
never executed: case QTabBar::RoundedWest:
0
1435 if (!selected) {
!selectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1436 x1 += 2;-
1437 y1 += firstTab ? borderThinkness : 0;
firstTabDescription
TRUEnever evaluated
FALSEnever evaluated
0
1438 y2 -= lastTab ? borderThinkness : 0;
lastTabDescription
TRUEnever evaluated
FALSEnever evaluated
0
1439 }
never executed: end of block
0
1440-
1441 p->fillRect(QRect(x1 + 1, y1 + 1, (x2 - x1) - 2, (y2 - y1) - 1), tab->palette.background());-
1442-
1443 // Delete border-
1444 if (selected) {
selectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1445 p->fillRect(QRect(x2 - 1, y1, 1, y2-y1), tab->palette.background());-
1446 p->fillRect(QRect(x2, y1, 1, y2-y1), tab->palette.background());-
1447 }
never executed: end of block
0
1448 // Top-
1449 if (firstTab || selected || onlyOne || !previousSelected) {
firstTabDescription
TRUEnever evaluated
FALSEnever evaluated
selectedDescription
TRUEnever evaluated
FALSEnever evaluated
onlyOneDescription
TRUEnever evaluated
FALSEnever evaluated
!previousSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1450 p->setPen(light);-
1451 p->drawLine(x1 + 2, y1, x2 - ((onlyOne || firstTab) && selected && leftAligned ? 0 : borderThinkness), y1);-
1452 p->drawPoint(x1 + 1, y1 + 1);-
1453 }
never executed: end of block
0
1454 // Left-
1455 {-
1456 int beg = y1 + (previousSelected ? 0 : 2);
previousSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1457 int end = y2 - (nextSelected ? 0 : 2);
nextSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1458 p->setPen(light);-
1459 p->drawLine(x1, beg, x1, end);-
1460 }-
1461 // Bottom-
1462 if (lastTab || selected || onlyOne || !nextSelected) {
lastTabDescription
TRUEnever evaluated
FALSEnever evaluated
selectedDescription
TRUEnever evaluated
FALSEnever evaluated
onlyOneDescription
TRUEnever evaluated
FALSEnever evaluated
!nextSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1463 p->setPen(shadow);-
1464 p->drawLine(x1 + 3, y2, x2 - ((onlyOne || lastTab) && selected && rightAligned ? 0 : borderThinkness), y2);-
1465 p->drawPoint(x1 + 2, y2 - 1);-
1466 p->setPen(dark);-
1467 p->drawLine(x1 + 3, y2 - 1, x2 - ((onlyOne || lastTab) && selected && rightAligned ? 0 : borderThinkness), y2 - 1);-
1468 p->drawPoint(x1 + 1, y2 - 1);-
1469 p->drawPoint(x1 + 2, y2);-
1470 }
never executed: end of block
0
1471 break; }
never executed: break;
0
1472 case QTabBar::RoundedEast: {
never executed: case QTabBar::RoundedEast:
0
1473 if (!selected) {
!selectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1474 x2 -= 2;-
1475 y1 += firstTab ? borderThinkness : 0;
firstTabDescription
TRUEnever evaluated
FALSEnever evaluated
0
1476 y2 -= lastTab ? borderThinkness : 0;
lastTabDescription
TRUEnever evaluated
FALSEnever evaluated
0
1477 }
never executed: end of block
0
1478-
1479 p->fillRect(QRect(x1 + 2, y1 + 1, (x2 - x1) - 1, (y2 - y1) - 1), tab->palette.background());-
1480-
1481 // Delete border-
1482 if (selected) {
selectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1483 p->fillRect(QRect(x1 + 1, y1, 1, (y2 - 1)-y1),tab->palette.background());-
1484 p->fillRect(QRect(x1, y1, 1, (y2-1)-y1), tab->palette.background());-
1485 }
never executed: end of block
0
1486 // Top-
1487 if (firstTab || selected || onlyOne || !previousSelected) {
firstTabDescription
TRUEnever evaluated
FALSEnever evaluated
selectedDescription
TRUEnever evaluated
FALSEnever evaluated
onlyOneDescription
TRUEnever evaluated
FALSEnever evaluated
!previousSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1488 p->setPen(light);-
1489 p->drawLine(x2 - 2, y1, x1 + ((onlyOne || firstTab) && selected && leftAligned ? 0 : borderThinkness), y1);-
1490 p->drawPoint(x2 - 1, y1 + 1);-
1491 }
never executed: end of block
0
1492 // Right-
1493 {-
1494 int beg = y1 + (previousSelected ? 0 : 2);
previousSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1495 int end = y2 - (nextSelected ? 0 : 2);
nextSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1496 p->setPen(shadow);-
1497 p->drawLine(x2, beg, x2, end);-
1498 p->setPen(dark);-
1499 p->drawLine(x2 - 1, beg, x2 - 1, end);-
1500 }-
1501 // Bottom-
1502 if (lastTab || selected || onlyOne || !nextSelected) {
lastTabDescription
TRUEnever evaluated
FALSEnever evaluated
selectedDescription
TRUEnever evaluated
FALSEnever evaluated
onlyOneDescription
TRUEnever evaluated
FALSEnever evaluated
!nextSelectedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1503 p->setPen(shadow);-
1504 p->drawLine(x2 - 2, y2, x1 + ((onlyOne || lastTab) && selected && rightAligned ? 0 : borderThinkness), y2);-
1505 p->drawPoint(x2 - 1, y2 - 1);-
1506 p->setPen(dark);-
1507 p->drawLine(x2 - 2, y2 - 1, x1 + ((onlyOne || lastTab) && selected && rightAligned ? 0 : borderThinkness), y2 - 1);-
1508 }
never executed: end of block
0
1509 break; }
never executed: break;
0
1510 }-
1511 }-
1512 break;
never executed: break;
0
1513#endif // QT_NO_TABBAR-
1514 case CE_ToolBoxTabShape:
never executed: case CE_ToolBoxTabShape:
0
1515 qDrawShadePanel(p, opt->rect, opt->palette,-
1516 opt->state & (State_Sunken | State_On), 1,-
1517 &opt->palette.brush(QPalette::Button));-
1518 break;
never executed: break;
0
1519#ifndef QT_NO_SPLITTER-
1520 case CE_Splitter:
never executed: case CE_Splitter:
0
1521 p->eraseRect(opt->rect);-
1522 break;
never executed: break;
0
1523#endif // QT_NO_SPLITTER-
1524#ifndef QT_NO_SCROLLBAR-
1525 case CE_ScrollBarSubLine:
never executed: case CE_ScrollBarSubLine:
0
1526 case CE_ScrollBarAddLine: {
never executed: case CE_ScrollBarAddLine:
0
1527 if ((opt->state & State_Sunken)) {
(opt->state & State_Sunken)Description
TRUEnever evaluated
FALSEnever evaluated
0
1528 p->setPen(opt->palette.dark().color());-
1529 p->setBrush(opt->palette.brush(QPalette::Button));-
1530 p->drawRect(opt->rect.adjusted(0, 0, -1, -1));-
1531 } else {
never executed: end of block
0
1532 QStyleOption buttonOpt = *opt;-
1533 if (!(buttonOpt.state & State_Sunken))
!(buttonOpt.st... State_Sunken)Description
TRUEnever evaluated
FALSEnever evaluated
0
1534 buttonOpt.state |= State_Raised;
never executed: buttonOpt.state |= State_Raised;
0
1535 QPalette pal(opt->palette);-
1536 pal.setColor(QPalette::Button, opt->palette.light().color());-
1537 pal.setColor(QPalette::Light, opt->palette.button().color());-
1538 qDrawWinButton(p, opt->rect, pal, opt->state & (State_Sunken | State_On),-
1539 &opt->palette.brush(QPalette::Button));-
1540 }
never executed: end of block
0
1541 PrimitiveElement arrow;-
1542 if (opt->state & State_Horizontal) {
opt->state & State_HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
0
1543 if (ce == CE_ScrollBarAddLine)
ce == CE_ScrollBarAddLineDescription
TRUEnever evaluated
FALSEnever evaluated
0
1544 arrow = opt->direction == Qt::LeftToRight ? PE_IndicatorArrowRight : PE_IndicatorArrowLeft;
never executed: arrow = opt->direction == Qt::LeftToRight ? PE_IndicatorArrowRight : PE_IndicatorArrowLeft;
opt->direction...t::LeftToRightDescription
TRUEnever evaluated
FALSEnever evaluated
0
1545 else-
1546 arrow = opt->direction == Qt::LeftToRight ? PE_IndicatorArrowLeft : PE_IndicatorArrowRight;
never executed: arrow = opt->direction == Qt::LeftToRight ? PE_IndicatorArrowLeft : PE_IndicatorArrowRight;
opt->direction...t::LeftToRightDescription
TRUEnever evaluated
FALSEnever evaluated
0
1547 } else {-
1548 if (ce == CE_ScrollBarAddLine)
ce == CE_ScrollBarAddLineDescription
TRUEnever evaluated
FALSEnever evaluated
0
1549 arrow = PE_IndicatorArrowDown;
never executed: arrow = PE_IndicatorArrowDown;
0
1550 else-
1551 arrow = PE_IndicatorArrowUp;
never executed: arrow = PE_IndicatorArrowUp;
0
1552 }-
1553 QStyleOption arrowOpt = *opt;-
1554 arrowOpt.rect = opt->rect.adjusted(4, 4, -4, -4);-
1555 proxy()->drawPrimitive(arrow, &arrowOpt, p, widget);-
1556 break; }
never executed: break;
0
1557 case CE_ScrollBarAddPage:
never executed: case CE_ScrollBarAddPage:
0
1558 case CE_ScrollBarSubPage: {
never executed: case CE_ScrollBarSubPage:
0
1559 QBrush br;-
1560 QBrush bg = p->background();-
1561 Qt::BGMode bg_mode = p->backgroundMode();-
1562 p->setPen(Qt::NoPen);-
1563 p->setBackgroundMode(Qt::OpaqueMode);-
1564-
1565 if (opt->state & State_Sunken) {
opt->state & State_SunkenDescription
TRUEnever evaluated
FALSEnever evaluated
0
1566 br = QBrush(opt->palette.shadow().color(), Qt::Dense4Pattern);-
1567 p->setBackground(opt->palette.dark().color());-
1568 p->setBrush(br);-
1569 } else {
never executed: end of block
0
1570 const QBrush paletteBrush = opt->palette.brush(QPalette::Light);-
1571 if (paletteBrush.style() == Qt::TexturePattern) {
paletteBrush.s...TexturePatternDescription
TRUEnever evaluated
FALSEnever evaluated
0
1572 if (qHasPixmapTexture(paletteBrush))
qHasPixmapText...(paletteBrush)Description
TRUEnever evaluated
FALSEnever evaluated
0
1573 br = QBrush(paletteBrush.texture());
never executed: br = QBrush(paletteBrush.texture());
0
1574 else-
1575 br = QBrush(paletteBrush.textureImage());
never executed: br = QBrush(paletteBrush.textureImage());
0
1576 } else-
1577 br = QBrush(opt->palette.light().color(), Qt::Dense4Pattern);
never executed: br = QBrush(opt->palette.light().color(), Qt::Dense4Pattern);
0
1578 p->setBackground(opt->palette.background().color());-
1579 p->setBrush(br);-
1580 }
never executed: end of block
0
1581 p->drawRect(opt->rect);-
1582 p->setBackground(bg);-
1583 p->setBackgroundMode(bg_mode);-
1584 break; }
never executed: break;
0
1585 case CE_ScrollBarSlider:
never executed: case CE_ScrollBarSlider:
0
1586 if (!(opt->state & State_Enabled)) {
!(opt->state & State_Enabled)Description
TRUEnever evaluated
FALSEnever evaluated
0
1587 QBrush br;-
1588 const QBrush paletteBrush = opt->palette.brush(QPalette::Light);-
1589 if (paletteBrush.style() == Qt::TexturePattern) {
paletteBrush.s...TexturePatternDescription
TRUEnever evaluated
FALSEnever evaluated
0
1590 if (qHasPixmapTexture(paletteBrush))
qHasPixmapText...(paletteBrush)Description
TRUEnever evaluated
FALSEnever evaluated
0
1591 br = QBrush(paletteBrush.texture());
never executed: br = QBrush(paletteBrush.texture());
0
1592 else-
1593 br = QBrush(paletteBrush.textureImage());
never executed: br = QBrush(paletteBrush.textureImage());
0
1594 } else-
1595 br = QBrush(opt->palette.light().color(), Qt::Dense4Pattern);
never executed: br = QBrush(opt->palette.light().color(), Qt::Dense4Pattern);
0
1596 p->setPen(Qt::NoPen);-
1597 p->setBrush(br);-
1598 p->setBackgroundMode(Qt::OpaqueMode);-
1599 p->drawRect(opt->rect);-
1600 } else {
never executed: end of block
0
1601 QStyleOptionButton buttonOpt;-
1602 buttonOpt.QStyleOption::operator=(*opt);-
1603 buttonOpt.state = State_Enabled | State_Raised;-
1604-
1605 QPalette pal(opt->palette);-
1606 pal.setColor(QPalette::Button, opt->palette.light().color());-
1607 pal.setColor(QPalette::Light, opt->palette.button().color());-
1608 qDrawWinButton(p, opt->rect, pal, false, &opt->palette.brush(QPalette::Button));-
1609 }
never executed: end of block
0
1610 break;
never executed: break;
0
1611#endif // QT_NO_SCROLLBAR-
1612 case CE_HeaderSection: {
never executed: case CE_HeaderSection:
0
1613 QBrush fill;-
1614 if (opt->state & State_On)
opt->state & State_OnDescription
TRUEnever evaluated
FALSEnever evaluated
0
1615 fill = QBrush(opt->palette.light().color(), Qt::Dense4Pattern);
never executed: fill = QBrush(opt->palette.light().color(), Qt::Dense4Pattern);
0
1616 else-
1617 fill = opt->palette.brush(QPalette::Button);
never executed: fill = opt->palette.brush(QPalette::Button);
0
1618-
1619 if (opt->state & (State_Raised | State_Sunken)) {
opt->state & (... State_Sunken)Description
TRUEnever evaluated
FALSEnever evaluated
0
1620 qDrawWinButton(p, opt->rect, opt->palette, opt->state & State_Sunken, &fill);-
1621 } else {
never executed: end of block
0
1622 p->fillRect(opt->rect, fill);-
1623 }
never executed: end of block
0
1624 break; }
never executed: break;
0
1625#ifndef QT_NO_TOOLBAR-
1626 case CE_ToolBar:
never executed: case CE_ToolBar:
0
1627 if (const QStyleOptionToolBar *toolbar = qstyleoption_cast<const QStyleOptionToolBar *>(opt)) {
const QStyleOp...oolBar *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
1628 // Reserve the beveled appearance only for mainwindow toolbars-
1629 if (!(widget && qobject_cast<const QMainWindow*> (widget->parentWidget())))
widgetDescription
TRUEnever evaluated
FALSEnever evaluated
qobject_cast<c...arentWidget())Description
TRUEnever evaluated
FALSEnever evaluated
0
1630 break;
never executed: break;
0
1631-
1632 QRect rect = opt->rect;-
1633 bool paintLeftBorder = true;-
1634 bool paintRightBorder = true;-
1635 bool paintBottomBorder = true;-
1636-
1637 switch (toolbar->toolBarArea){-
1638 case Qt::BottomToolBarArea :
never executed: case Qt::BottomToolBarArea :
0
1639 switch(toolbar->positionOfLine){-
1640 case QStyleOptionToolBar::Beginning:
never executed: case QStyleOptionToolBar::Beginning:
0
1641 case QStyleOptionToolBar::OnlyOne:
never executed: case QStyleOptionToolBar::OnlyOne:
0
1642 paintBottomBorder = false;-
1643 default:
code before this statement never executed: default:
never executed: default:
0
1644 break;
never executed: break;
0
1645 }-
1646 case Qt::TopToolBarArea :
code before this statement never executed: case Qt::TopToolBarArea :
never executed: case Qt::TopToolBarArea :
0
1647 switch(toolbar->positionWithinLine){-
1648 case QStyleOptionToolBar::Beginning:
never executed: case QStyleOptionToolBar::Beginning:
0
1649 paintLeftBorder = false;-
1650 break;
never executed: break;
0
1651 case QStyleOptionToolBar::End:
never executed: case QStyleOptionToolBar::End:
0
1652 paintRightBorder = false;-
1653 break;
never executed: break;
0
1654 case QStyleOptionToolBar::OnlyOne:
never executed: case QStyleOptionToolBar::OnlyOne:
0
1655 paintRightBorder = false;-
1656 paintLeftBorder = false;-
1657 default:
code before this statement never executed: default:
never executed: default:
0
1658 break;
never executed: break;
0
1659 }-
1660 if(opt->direction == Qt::RightToLeft){ //reverse layout changes the order of Beginning/end
opt->direction...t::RightToLeftDescription
TRUEnever evaluated
FALSEnever evaluated
0
1661 bool tmp = paintLeftBorder;-
1662 paintRightBorder=paintLeftBorder;-
1663 paintLeftBorder=tmp;-
1664 }
never executed: end of block
0
1665 break;
never executed: break;
0
1666 case Qt::RightToolBarArea :
never executed: case Qt::RightToolBarArea :
0
1667 switch (toolbar->positionOfLine){-
1668 case QStyleOptionToolBar::Beginning:
never executed: case QStyleOptionToolBar::Beginning:
0
1669 case QStyleOptionToolBar::OnlyOne:
never executed: case QStyleOptionToolBar::OnlyOne:
0
1670 paintRightBorder = false;-
1671 break;
never executed: break;
0
1672 default:
never executed: default:
0
1673 break;
never executed: break;
0
1674 }-
1675 break;
never executed: break;
0
1676 case Qt::LeftToolBarArea :
never executed: case Qt::LeftToolBarArea :
0
1677 switch (toolbar->positionOfLine){-
1678 case QStyleOptionToolBar::Beginning:
never executed: case QStyleOptionToolBar::Beginning:
0
1679 case QStyleOptionToolBar::OnlyOne:
never executed: case QStyleOptionToolBar::OnlyOne:
0
1680 paintLeftBorder = false;-
1681 break;
never executed: break;
0
1682 default:
never executed: default:
0
1683 break;
never executed: break;
0
1684 }-
1685 break;
never executed: break;
0
1686 default:
never executed: default:
0
1687 break;
never executed: break;
0
1688 }-
1689-
1690-
1691 //draw top border-
1692 p->setPen(QPen(opt->palette.light().color()));-
1693 p->drawLine(rect.topLeft().x(),-
1694 rect.topLeft().y(),-
1695 rect.topRight().x(),-
1696 rect.topRight().y());-
1697-
1698 if (paintLeftBorder){
paintLeftBorderDescription
TRUEnever evaluated
FALSEnever evaluated
0
1699 p->setPen(QPen(opt->palette.light().color()));-
1700 p->drawLine(rect.topLeft().x(),-
1701 rect.topLeft().y(),-
1702 rect.bottomLeft().x(),-
1703 rect.bottomLeft().y());-
1704 }
never executed: end of block
0
1705-
1706 if (paintRightBorder){
paintRightBorderDescription
TRUEnever evaluated
FALSEnever evaluated
0
1707 p->setPen(QPen(opt->palette.dark().color()));-
1708 p->drawLine(rect.topRight().x(),-
1709 rect.topRight().y(),-
1710 rect.bottomRight().x(),-
1711 rect.bottomRight().y());-
1712 }
never executed: end of block
0
1713-
1714 if (paintBottomBorder){
paintBottomBorderDescription
TRUEnever evaluated
FALSEnever evaluated
0
1715 p->setPen(QPen(opt->palette.dark().color()));-
1716 p->drawLine(rect.bottomLeft().x(),-
1717 rect.bottomLeft().y(),-
1718 rect.bottomRight().x(),-
1719 rect.bottomRight().y());-
1720 }
never executed: end of block
0
1721 }
never executed: end of block
0
1722 break;
never executed: break;
0
1723-
1724-
1725#endif // QT_NO_TOOLBAR-
1726-
1727 case CE_ProgressBarContents:
never executed: case CE_ProgressBarContents:
0
1728 if (const QStyleOptionProgressBar *pb = qstyleoption_cast<const QStyleOptionProgressBar *>(opt)) {
const QStyleOp...essBar *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
1729 QRect rect = pb->rect;-
1730 if (!rect.isValid())
!rect.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
0
1731 return;
never executed: return;
0
1732-
1733 const bool vertical = pb->orientation == Qt::Vertical;-
1734 const bool inverted = pb->invertedAppearance;-
1735-
1736 QMatrix m;-
1737 if (vertical) {
verticalDescription
TRUEnever evaluated
FALSEnever evaluated
0
1738 rect = QRect(rect.y(), rect.x(), rect.height(), rect.width()); // flip width and height-
1739 m.rotate(90);-
1740 m.translate(0, -(rect.height() + rect.y()*2));-
1741 }
never executed: end of block
0
1742 QPalette pal2 = pb->palette;-
1743 // Correct the highlight color if it is the same as the background-
1744 if (pal2.highlight() == pal2.background())
pal2.highlight...2.background()Description
TRUEnever evaluated
FALSEnever evaluated
0
1745 pal2.setColor(QPalette::Highlight, pb->palette.color(QPalette::Active,
never executed: pal2.setColor(QPalette::Highlight, pb->palette.color(QPalette::Active, QPalette::Highlight));
0
1746 QPalette::Highlight));
never executed: pal2.setColor(QPalette::Highlight, pb->palette.color(QPalette::Active, QPalette::Highlight));
0
1747 bool reverse = ((!vertical && (pb->direction == Qt::RightToLeft)) || vertical);
!verticalDescription
TRUEnever evaluated
FALSEnever evaluated
(pb->direction...::RightToLeft)Description
TRUEnever evaluated
FALSEnever evaluated
verticalDescription
TRUEnever evaluated
FALSEnever evaluated
0
1748 if (inverted)
invertedDescription
TRUEnever evaluated
FALSEnever evaluated
0
1749 reverse = !reverse;
never executed: reverse = !reverse;
0
1750 int w = rect.width();-
1751 Q_D(const QWindowsStyle);-
1752 if (pb->minimum == 0 && pb->maximum == 0) {
pb->minimum == 0Description
TRUEnever evaluated
FALSEnever evaluated
pb->maximum == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1753 const int unit_width = proxy()->pixelMetric(PM_ProgressBarChunkWidth, pb, widget);-
1754 QStyleOptionProgressBar pbBits = *pb;-
1755 Q_ASSERT(unit_width >0);-
1756-
1757 pbBits.rect = rect;-
1758 pbBits.palette = pal2;-
1759-
1760 int step = 0;-
1761 int chunkCount = w / unit_width + 1;-
1762 if (QProgressStyleAnimation *animation = qobject_cast<QProgressStyleAnimation*>(d->animation(opt->styleObject)))
QProgressStyle...>styleObject))Description
TRUEnever evaluated
FALSEnever evaluated
0
1763 step = (animation->animationStep() / 3) % chunkCount;
never executed: step = (animation->animationStep() / 3) % chunkCount;
0
1764 else-
1765 d->startAnimation(new QProgressStyleAnimation(d->animationFps, opt->styleObject));
never executed: d->startAnimation(new QProgressStyleAnimation(d->animationFps, opt->styleObject));
0
1766 int chunksInRow = 5;-
1767 int myY = pbBits.rect.y();-
1768 int myHeight = pbBits.rect.height();-
1769 int chunksToDraw = chunksInRow;-
1770-
1771 if(step > chunkCount - 5)chunksToDraw = (chunkCount - step);
never executed: chunksToDraw = (chunkCount - step);
step > chunkCount - 5Description
TRUEnever evaluated
FALSEnever evaluated
0
1772 p->save();-
1773 p->setClipRect(m.mapRect(QRectF(rect)).toRect());-
1774-
1775 int x0 = reverse ? rect.left() + rect.width() - unit_width*(step) - unit_width : rect.left() + unit_width * step;
reverseDescription
TRUEnever evaluated
FALSEnever evaluated
0
1776 int x = 0;-
1777-
1778 for (int i = 0; i < chunksToDraw ; ++i) {
i < chunksToDrawDescription
TRUEnever evaluated
FALSEnever evaluated
0
1779 pbBits.rect.setRect(x0 + x, myY, unit_width, myHeight);-
1780 pbBits.rect = m.mapRect(QRectF(pbBits.rect)).toRect();-
1781 proxy()->drawPrimitive(PE_IndicatorProgressChunk, &pbBits, p, widget);-
1782 x += reverse ? -unit_width : unit_width;
reverseDescription
TRUEnever evaluated
FALSEnever evaluated
0
1783 }
never executed: end of block
0
1784 //Draw wrap-around chunks-
1785 if( step > chunkCount-5){
step > chunkCount-5Description
TRUEnever evaluated
FALSEnever evaluated
0
1786 x0 = reverse ? rect.left() + rect.width() - unit_width : rect.left() ;
reverseDescription
TRUEnever evaluated
FALSEnever evaluated
0
1787 x = 0;-
1788 int chunksToDraw = step - (chunkCount - chunksInRow);-
1789 for (int i = 0; i < chunksToDraw ; ++i) {
i < chunksToDrawDescription
TRUEnever evaluated
FALSEnever evaluated
0
1790 pbBits.rect.setRect(x0 + x, myY, unit_width, myHeight);-
1791 pbBits.rect = m.mapRect(QRectF(pbBits.rect)).toRect();-
1792 proxy()->drawPrimitive(PE_IndicatorProgressChunk, &pbBits, p, widget);-
1793 x += reverse ? -unit_width : unit_width;
reverseDescription
TRUEnever evaluated
FALSEnever evaluated
0
1794 }
never executed: end of block
0
1795 }
never executed: end of block
0
1796 p->restore(); //restore state-
1797 }
never executed: end of block
0
1798 else {-
1799 d->stopAnimation(opt->styleObject);-
1800 QCommonStyle::drawControl(ce, opt, p, widget);-
1801 }
never executed: end of block
0
1802 }-
1803 break;
never executed: break;
0
1804-
1805#ifndef QT_NO_DOCKWIDGET-
1806 case CE_DockWidgetTitle:
never executed: case CE_DockWidgetTitle:
0
1807-
1808 if (const QStyleOptionDockWidget *dwOpt = qstyleoption_cast<const QStyleOptionDockWidget *>(opt)) {
const QStyleOp...Widget *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
1809 Q_D(const QWindowsStyle);-
1810-
1811 const bool verticalTitleBar = dwOpt->verticalTitleBar;-
1812-
1813 QRect rect = dwOpt->rect;-
1814 QRect r = rect;-
1815-
1816 if (verticalTitleBar) {
verticalTitleBarDescription
TRUEnever evaluated
FALSEnever evaluated
0
1817 r.setSize(r.size().transposed());-
1818-
1819 p->save();-
1820 p->translate(r.left(), r.top() + r.width());-
1821 p->rotate(-90);-
1822 p->translate(-r.left(), -r.top());-
1823 }
never executed: end of block
0
1824-
1825 bool floating = false;-
1826 bool active = dwOpt->state & State_Active;-
1827 QColor inactiveCaptionTextColor = d->inactiveCaptionText;-
1828 if (dwOpt->movable) {
dwOpt->movableDescription
TRUEnever evaluated
FALSEnever evaluated
0
1829 QColor left, right;-
1830-
1831 //Titlebar gradient-
1832 if (opt->state & QStyle::State_Window) {
opt->state & Q...::State_WindowDescription
TRUEnever evaluated
FALSEnever evaluated
0
1833 floating = true;-
1834 if (active) {
activeDescription
TRUEnever evaluated
FALSEnever evaluated
0
1835 left = d->activeCaptionColor;-
1836 right = d->activeGradientCaptionColor;-
1837 } else {
never executed: end of block
0
1838 left = d->inactiveCaptionColor;-
1839 right = d->inactiveGradientCaptionColor;-
1840 }
never executed: end of block
0
1841 QBrush fillBrush(left);-
1842 if (left != right) {
left != rightDescription
TRUEnever evaluated
FALSEnever evaluated
0
1843 QPoint p1(r.x(), r.top() + r.height()/2);-
1844 QPoint p2(rect.right(), r.top() + r.height()/2);-
1845 QLinearGradient lg(p1, p2);-
1846 lg.setColorAt(0, left);-
1847 lg.setColorAt(1, right);-
1848 fillBrush = lg;-
1849 }
never executed: end of block
0
1850 p->fillRect(r.adjusted(0, 0, 0, -3), fillBrush);-
1851 }
never executed: end of block
0
1852 }
never executed: end of block
0
1853 if (!dwOpt->title.isEmpty()) {
!dwOpt->title.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
0
1854 QFont oldFont = p->font();-
1855 if (floating) {
floatingDescription
TRUEnever evaluated
FALSEnever evaluated
0
1856 QFont font = oldFont;-
1857 font.setBold(true);-
1858 p->setFont(font);-
1859 }
never executed: end of block
0
1860 QPalette palette = dwOpt->palette;-
1861 palette.setColor(QPalette::Window, inactiveCaptionTextColor);-
1862 QRect titleRect = subElementRect(SE_DockWidgetTitleBarText, opt, widget);-
1863 if (verticalTitleBar) {
verticalTitleBarDescription
TRUEnever evaluated
FALSEnever evaluated
0
1864 titleRect = QRect(r.left() + rect.bottom()-
1865 - titleRect.bottom(),-
1866 r.top() + titleRect.left() - rect.left(),-
1867 titleRect.height(), titleRect.width());-
1868 }
never executed: end of block
0
1869 proxy()->drawItemText(p, titleRect,-
1870 Qt::AlignLeft | Qt::AlignVCenter | Qt::TextShowMnemonic, palette,-
1871 dwOpt->state & State_Enabled, dwOpt->title,-
1872 floating ? (active ? QPalette::BrightText : QPalette::Window) : QPalette::WindowText);-
1873 p->setFont(oldFont);-
1874 }
never executed: end of block
0
1875 if (verticalTitleBar)
verticalTitleBarDescription
TRUEnever evaluated
FALSEnever evaluated
0
1876 p->restore();
never executed: p->restore();
0
1877 }
never executed: end of block
0
1878 return;
never executed: return;
0
1879#endif // QT_NO_DOCKWIDGET-
1880#ifndef QT_NO_COMBOBOX-
1881 case CE_ComboBoxLabel:
never executed: case CE_ComboBoxLabel:
0
1882 if (const QStyleOptionComboBox *cb = qstyleoption_cast<const QStyleOptionComboBox *>(opt)) {
const QStyleOp...mboBox *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
1883 if (cb->state & State_HasFocus) {
cb->state & State_HasFocusDescription
TRUEnever evaluated
FALSEnever evaluated
0
1884 p->setPen(cb->palette.highlightedText().color());-
1885 p->setBackground(cb->palette.highlight());-
1886 } else {
never executed: end of block
0
1887 p->setPen(cb->palette.text().color());-
1888 p->setBackground(cb->palette.background());-
1889 }
never executed: end of block
0
1890 }-
1891 QCommonStyle::drawControl(ce, opt, p, widget);-
1892 break;
never executed: break;
0
1893#endif // QT_NO_COMBOBOX-
1894 default:
never executed: default:
0
1895 QCommonStyle::drawControl(ce, opt, p, widget);-
1896 }
never executed: end of block
0
1897}-
1898-
1899/*! \reimp */-
1900QRect QWindowsStyle::subElementRect(SubElement sr, const QStyleOption *opt, const QWidget *w) const-
1901{-
1902 QRect r;-
1903 switch (sr) {-
1904 case SE_SliderFocusRect:
never executed: case SE_SliderFocusRect:
0
1905 case SE_ToolBoxTabContents:
never executed: case SE_ToolBoxTabContents:
0
1906 r = visualRect(opt->direction, opt->rect, opt->rect);-
1907 break;
never executed: break;
0
1908 case SE_DockWidgetTitleBarText: {
never executed: case SE_DockWidgetTitleBarText:
0
1909 r = QCommonStyle::subElementRect(sr, opt, w);-
1910 const QStyleOptionDockWidget *dwOpt-
1911 = qstyleoption_cast<const QStyleOptionDockWidget*>(opt);-
1912 const bool verticalTitleBar = dwOpt && dwOpt->verticalTitleBar;
dwOptDescription
TRUEnever evaluated
FALSEnever evaluated
dwOpt->verticalTitleBarDescription
TRUEnever evaluated
FALSEnever evaluated
0
1913 int m = proxy()->pixelMetric(PM_DockWidgetTitleMargin, opt, w);-
1914 if (verticalTitleBar) {
verticalTitleBarDescription
TRUEnever evaluated
FALSEnever evaluated
0
1915 r.adjust(0, 0, 0, -m);-
1916 } else {
never executed: end of block
0
1917 if (opt->direction == Qt::LeftToRight)
opt->direction...t::LeftToRightDescription
TRUEnever evaluated
FALSEnever evaluated
0
1918 r.adjust(m, 0, 0, 0);
never executed: r.adjust(m, 0, 0, 0);
0
1919 else-
1920 r.adjust(0, 0, -m, 0);
never executed: r.adjust(0, 0, -m, 0);
0
1921 }-
1922 break;
never executed: break;
0
1923 }-
1924 case SE_ProgressBarContents:
never executed: case SE_ProgressBarContents:
0
1925 r = QCommonStyle::subElementRect(SE_ProgressBarGroove, opt, w);-
1926 r.adjust(3, 3, -3, -3);-
1927 break;
never executed: break;
0
1928 default:
never executed: default:
0
1929 r = QCommonStyle::subElementRect(sr, opt, w);-
1930 }
never executed: end of block
0
1931 return r;
never executed: return r;
0
1932}-
1933-
1934-
1935/*! \reimp */-
1936void QWindowsStyle::drawComplexControl(ComplexControl cc, const QStyleOptionComplex *opt,-
1937 QPainter *p, const QWidget *widget) const-
1938{-
1939 switch (cc) {-
1940#ifndef QT_NO_SLIDER-
1941 case CC_Slider:
never executed: case CC_Slider:
0
1942 if (const QStyleOptionSlider *slider = qstyleoption_cast<const QStyleOptionSlider *>(opt)) {
const QStyleOp...Slider *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
1943 int thickness = proxy()->pixelMetric(PM_SliderControlThickness, slider, widget);-
1944 int len = proxy()->pixelMetric(PM_SliderLength, slider, widget);-
1945 int ticks = slider->tickPosition;-
1946 QRect groove = proxy()->subControlRect(CC_Slider, slider, SC_SliderGroove, widget);-
1947 QRect handle = proxy()->subControlRect(CC_Slider, slider, SC_SliderHandle, widget);-
1948-
1949 if ((slider->subControls & SC_SliderGroove) && groove.isValid()) {
(slider->subCo..._SliderGroove)Description
TRUEnever evaluated
FALSEnever evaluated
groove.isValid()Description
TRUEnever evaluated
FALSEnever evaluated
0
1950 int mid = thickness / 2;-
1951-
1952 if (ticks & QSlider::TicksAbove)
ticks & QSlider::TicksAboveDescription
TRUEnever evaluated
FALSEnever evaluated
0
1953 mid += len / 8;
never executed: mid += len / 8;
0
1954 if (ticks & QSlider::TicksBelow)
ticks & QSlider::TicksBelowDescription
TRUEnever evaluated
FALSEnever evaluated
0
1955 mid -= len / 8;
never executed: mid -= len / 8;
0
1956-
1957 p->setPen(slider->palette.shadow().color());-
1958 if (slider->orientation == Qt::Horizontal) {
slider->orient...Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
0
1959 qDrawWinPanel(p, groove.x(), groove.y() + mid - 2,-
1960 groove.width(), 4, slider->palette, true);-
1961 p->drawLine(groove.x() + 1, groove.y() + mid - 1,-
1962 groove.x() + groove.width() - 3, groove.y() + mid - 1);-
1963 } else {
never executed: end of block
0
1964 qDrawWinPanel(p, groove.x() + mid - 2, groove.y(),-
1965 4, groove.height(), slider->palette, true);-
1966 p->drawLine(groove.x() + mid - 1, groove.y() + 1,-
1967 groove.x() + mid - 1, groove.y() + groove.height() - 3);-
1968 }
never executed: end of block
0
1969 }-
1970-
1971 if (slider->subControls & SC_SliderTickmarks) {
slider->subCon...liderTickmarksDescription
TRUEnever evaluated
FALSEnever evaluated
0
1972 QStyleOptionSlider tmpSlider = *slider;-
1973 tmpSlider.subControls = SC_SliderTickmarks;-
1974 QCommonStyle::drawComplexControl(cc, &tmpSlider, p, widget);-
1975 }
never executed: end of block
0
1976-
1977 if (slider->subControls & SC_SliderHandle) {
slider->subCon...C_SliderHandleDescription
TRUEnever evaluated
FALSEnever evaluated
0
1978 // 4444440-
1979 // 4333310-
1980 // 4322210-
1981 // 4322210-
1982 // 4322210-
1983 // 4322210-
1984 // *43210*-
1985 // **410**-
1986 // ***0***-
1987 const QColor c0 = slider->palette.shadow().color();-
1988 const QColor c1 = slider->palette.dark().color();-
1989 // const QColor c2 = g.button();-
1990 const QColor c3 = slider->palette.midlight().color();-
1991 const QColor c4 = slider->palette.light().color();-
1992 QBrush handleBrush;-
1993-
1994 if (slider->state & State_Enabled) {
slider->state & State_EnabledDescription
TRUEnever evaluated
FALSEnever evaluated
0
1995 handleBrush = slider->palette.color(QPalette::Button);-
1996 } else {
never executed: end of block
0
1997 handleBrush = QBrush(slider->palette.color(QPalette::Button),-
1998 Qt::Dense4Pattern);-
1999 }
never executed: end of block
0
2000-
2001-
2002 int x = handle.x(), y = handle.y(),-
2003 wi = handle.width(), he = handle.height();-
2004-
2005 int x1 = x;-
2006 int x2 = x+wi-1;-
2007 int y1 = y;-
2008 int y2 = y+he-1;-
2009-
2010 Qt::Orientation orient = slider->orientation;-
2011 bool tickAbove = slider->tickPosition == QSlider::TicksAbove;-
2012 bool tickBelow = slider->tickPosition == QSlider::TicksBelow;-
2013-
2014 if (slider->state & State_HasFocus) {
slider->state & State_HasFocusDescription
TRUEnever evaluated
FALSEnever evaluated
0
2015 QStyleOptionFocusRect fropt;-
2016 fropt.QStyleOption::operator=(*slider);-
2017 fropt.rect = subElementRect(SE_SliderFocusRect, slider, widget);-
2018 proxy()->drawPrimitive(PE_FrameFocusRect, &fropt, p, widget);-
2019 }
never executed: end of block
0
2020-
2021 if ((tickAbove && tickBelow) || (!tickAbove && !tickBelow)) {
tickAboveDescription
TRUEnever evaluated
FALSEnever evaluated
tickBelowDescription
TRUEnever evaluated
FALSEnever evaluated
!tickAboveDescription
TRUEnever evaluated
FALSEnever evaluated
!tickBelowDescription
TRUEnever evaluated
FALSEnever evaluated
0
2022 Qt::BGMode oldMode = p->backgroundMode();-
2023 p->setBackgroundMode(Qt::OpaqueMode);-
2024 qDrawWinButton(p, QRect(x, y, wi, he), slider->palette, false,-
2025 &handleBrush);-
2026 p->setBackgroundMode(oldMode);-
2027 return;
never executed: return;
0
2028 }-
2029-
2030 QSliderDirection dir;-
2031-
2032 if (orient == Qt::Horizontal)
orient == Qt::HorizontalDescription
TRUEnever evaluated
FALSEnever evaluated
0
2033 if (tickAbove)
tickAboveDescription
TRUEnever evaluated
FALSEnever evaluated
0
2034 dir = SlUp;
never executed: dir = SlUp;
0
2035 else-
2036 dir = SlDown;
never executed: dir = SlDown;
0
2037 else-
2038 if (tickAbove)
tickAboveDescription
TRUEnever evaluated
FALSEnever evaluated
0
2039 dir = SlLeft;
never executed: dir = SlLeft;
0
2040 else-
2041 dir = SlRight;
never executed: dir = SlRight;
0
2042-
2043 QPolygon a;-
2044-
2045 int d = 0;-
2046 switch (dir) {-
2047 case SlUp:
never executed: case SlUp:
0
2048 y1 = y1 + wi/2;-
2049 d = (wi + 1) / 2 - 1;-
2050 a.setPoints(5, x1,y1, x1,y2, x2,y2, x2,y1, x1+d,y1-d);-
2051 break;
never executed: break;
0
2052 case SlDown:
never executed: case SlDown:
0
2053 y2 = y2 - wi/2;-
2054 d = (wi + 1) / 2 - 1;-
2055 a.setPoints(5, x1,y1, x1,y2, x1+d,y2+d, x2,y2, x2,y1);-
2056 break;
never executed: break;
0
2057 case SlLeft:
never executed: case SlLeft:
0
2058 d = (he + 1) / 2 - 1;-
2059 x1 = x1 + he/2;-
2060 a.setPoints(5, x1,y1, x1-d,y1+d, x1,y2, x2,y2, x2,y1);-
2061 break;
never executed: break;
0
2062 case SlRight:
never executed: case SlRight:
0
2063 d = (he + 1) / 2 - 1;-
2064 x2 = x2 - he/2;-
2065 a.setPoints(5, x1,y1, x1,y2, x2,y2, x2+d,y1+d, x2,y1);-
2066 break;
never executed: break;
0
2067 }-
2068-
2069 QBrush oldBrush = p->brush();-
2070 bool oldQt4CompatiblePainting = p->testRenderHint(QPainter::Qt4CompatiblePainting);-
2071 p->setPen(Qt::NoPen);-
2072 p->setBrush(handleBrush);-
2073 p->setRenderHint(QPainter::Qt4CompatiblePainting);-
2074 Qt::BGMode oldMode = p->backgroundMode();-
2075 p->setBackgroundMode(Qt::OpaqueMode);-
2076 p->drawRect(x1, y1, x2-x1+1, y2-y1+1);-
2077 p->drawPolygon(a);-
2078 p->setBrush(oldBrush);-
2079 p->setBackgroundMode(oldMode);-
2080-
2081 if (dir != SlUp) {
dir != SlUpDescription
TRUEnever evaluated
FALSEnever evaluated
0
2082 p->setPen(c4);-
2083 p->drawLine(x1, y1, x2, y1);-
2084 p->setPen(c3);-
2085 p->drawLine(x1, y1+1, x2, y1+1);-
2086 }
never executed: end of block
0
2087 if (dir != SlLeft) {
dir != SlLeftDescription
TRUEnever evaluated
FALSEnever evaluated
0
2088 p->setPen(c3);-
2089 p->drawLine(x1+1, y1+1, x1+1, y2);-
2090 p->setPen(c4);-
2091 p->drawLine(x1, y1, x1, y2);-
2092 }
never executed: end of block
0
2093 if (dir != SlRight) {
dir != SlRightDescription
TRUEnever evaluated
FALSEnever evaluated
0
2094 p->setPen(c0);-
2095 p->drawLine(x2, y1, x2, y2);-
2096 p->setPen(c1);-
2097 p->drawLine(x2-1, y1+1, x2-1, y2-1);-
2098 }
never executed: end of block
0
2099 if (dir != SlDown) {
dir != SlDownDescription
TRUEnever evaluated
FALSEnever evaluated
0
2100 p->setPen(c0);-
2101 p->drawLine(x1, y2, x2, y2);-
2102 p->setPen(c1);-
2103 p->drawLine(x1+1, y2-1, x2-1, y2-1);-
2104 }
never executed: end of block
0
2105-
2106 switch (dir) {-
2107 case SlUp:
never executed: case SlUp:
0
2108 p->setPen(c4);-
2109 p->drawLine(x1, y1, x1+d, y1-d);-
2110 p->setPen(c0);-
2111 d = wi - d - 1;-
2112 p->drawLine(x2, y1, x2-d, y1-d);-
2113 d--;-
2114 p->setPen(c3);-
2115 p->drawLine(x1+1, y1, x1+1+d, y1-d);-
2116 p->setPen(c1);-
2117 p->drawLine(x2-1, y1, x2-1-d, y1-d);-
2118 break;
never executed: break;
0
2119 case SlDown:
never executed: case SlDown:
0
2120 p->setPen(c4);-
2121 p->drawLine(x1, y2, x1+d, y2+d);-
2122 p->setPen(c0);-
2123 d = wi - d - 1;-
2124 p->drawLine(x2, y2, x2-d, y2+d);-
2125 d--;-
2126 p->setPen(c3);-
2127 p->drawLine(x1+1, y2, x1+1+d, y2+d);-
2128 p->setPen(c1);-
2129 p->drawLine(x2-1, y2, x2-1-d, y2+d);-
2130 break;
never executed: break;
0
2131 case SlLeft:
never executed: case SlLeft:
0
2132 p->setPen(c4);-
2133 p->drawLine(x1, y1, x1-d, y1+d);-
2134 p->setPen(c0);-
2135 d = he - d - 1;-
2136 p->drawLine(x1, y2, x1-d, y2-d);-
2137 d--;-
2138 p->setPen(c3);-
2139 p->drawLine(x1, y1+1, x1-d, y1+1+d);-
2140 p->setPen(c1);-
2141 p->drawLine(x1, y2-1, x1-d, y2-1-d);-
2142 break;
never executed: break;
0
2143 case SlRight:
never executed: case SlRight:
0
2144 p->setPen(c4);-
2145 p->drawLine(x2, y1, x2+d, y1+d);-
2146 p->setPen(c0);-
2147 d = he - d - 1;-
2148 p->drawLine(x2, y2, x2+d, y2-d);-
2149 d--;-
2150 p->setPen(c3);-
2151 p->drawLine(x2, y1+1, x2+d, y1+1+d);-
2152 p->setPen(c1);-
2153 p->drawLine(x2, y2-1, x2+d, y2-1-d);-
2154 break;
never executed: break;
0
2155 }-
2156 p->setRenderHint(QPainter::Qt4CompatiblePainting, oldQt4CompatiblePainting);-
2157 }
never executed: end of block
0
2158 }
never executed: end of block
0
2159 break;
never executed: break;
0
2160#endif // QT_NO_SLIDER-
2161#ifndef QT_NO_SCROLLBAR-
2162 case CC_ScrollBar:
never executed: case CC_ScrollBar:
0
2163 if (const QStyleOptionSlider *scrollbar = qstyleoption_cast<const QStyleOptionSlider *>(opt)) {
const QStyleOp...Slider *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
2164 QStyleOptionSlider newScrollbar = *scrollbar;-
2165 if (scrollbar->minimum == scrollbar->maximum)
scrollbar->min...llbar->maximumDescription
TRUEnever evaluated
FALSEnever evaluated
0
2166 newScrollbar.state &= ~State_Enabled; //do not draw the slider.
never executed: newScrollbar.state &= ~State_Enabled;
0
2167 QCommonStyle::drawComplexControl(cc, &newScrollbar, p, widget);-
2168 }
never executed: end of block
0
2169 break;
never executed: break;
0
2170#endif // QT_NO_SCROLLBAR-
2171#ifndef QT_NO_COMBOBOX-
2172 case CC_ComboBox:
never executed: case CC_ComboBox:
0
2173 if (const QStyleOptionComboBox *cmb = qstyleoption_cast<const QStyleOptionComboBox *>(opt)) {
const QStyleOp...mboBox *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
2174 QBrush editBrush = cmb->palette.brush(QPalette::Base);-
2175 if ((cmb->subControls & SC_ComboBoxFrame)) {
(cmb->subContr...ComboBoxFrame)Description
TRUEnever evaluated
FALSEnever evaluated
0
2176 if (cmb->frame) {
cmb->frameDescription
TRUEnever evaluated
FALSEnever evaluated
0
2177 QPalette shadePal = opt->palette;-
2178 shadePal.setColor(QPalette::Midlight, shadePal.button().color());-
2179 qDrawWinPanel(p, opt->rect, shadePal, true, &editBrush);-
2180 }
never executed: end of block
0
2181 else {-
2182 p->fillRect(opt->rect, editBrush);-
2183 }
never executed: end of block
0
2184 }-
2185 if (cmb->subControls & SC_ComboBoxArrow) {
cmb->subContro..._ComboBoxArrowDescription
TRUEnever evaluated
FALSEnever evaluated
0
2186 State flags = State_None;-
2187-
2188 QRect ar = proxy()->subControlRect(CC_ComboBox, cmb, SC_ComboBoxArrow, widget);-
2189 bool sunkenArrow = cmb->activeSubControls == SC_ComboBoxArrow
cmb->activeSub..._ComboBoxArrowDescription
TRUEnever evaluated
FALSEnever evaluated
0
2190 && cmb->state & State_Sunken;
cmb->state & State_SunkenDescription
TRUEnever evaluated
FALSEnever evaluated
0
2191 if (sunkenArrow) {
sunkenArrowDescription
TRUEnever evaluated
FALSEnever evaluated
0
2192 p->setPen(cmb->palette.dark().color());-
2193 p->setBrush(cmb->palette.brush(QPalette::Button));-
2194 p->drawRect(ar.adjusted(0,0,-1,-1));-
2195 } else {
never executed: end of block
0
2196 // Make qDrawWinButton use the right colors for drawing the shade of the button-
2197 QPalette pal(cmb->palette);-
2198 pal.setColor(QPalette::Button, cmb->palette.light().color());-
2199 pal.setColor(QPalette::Light, cmb->palette.button().color());-
2200 qDrawWinButton(p, ar, pal, false,-
2201 &cmb->palette.brush(QPalette::Button));-
2202 }
never executed: end of block
0
2203-
2204 ar.adjust(2, 2, -2, -2);-
2205 if (opt->state & State_Enabled)
opt->state & State_EnabledDescription
TRUEnever evaluated
FALSEnever evaluated
0
2206 flags |= State_Enabled;
never executed: flags |= State_Enabled;
0
2207 if (opt->state & State_HasFocus)
opt->state & State_HasFocusDescription
TRUEnever evaluated
FALSEnever evaluated
0
2208 flags |= State_HasFocus;
never executed: flags |= State_HasFocus;
0
2209-
2210 if (sunkenArrow)
sunkenArrowDescription
TRUEnever evaluated
FALSEnever evaluated
0
2211 flags |= State_Sunken;
never executed: flags |= State_Sunken;
0
2212 QStyleOption arrowOpt = *cmb;-
2213 arrowOpt.rect = ar.adjusted(1, 1, -1, -1);-
2214 arrowOpt.state = flags;-
2215 proxy()->drawPrimitive(PE_IndicatorArrowDown, &arrowOpt, p, widget);-
2216 }
never executed: end of block
0
2217-
2218 if (cmb->subControls & SC_ComboBoxEditField) {
cmb->subContro...boBoxEditFieldDescription
TRUEnever evaluated
FALSEnever evaluated
0
2219 QRect re = proxy()->subControlRect(CC_ComboBox, cmb, SC_ComboBoxEditField, widget);-
2220 if (cmb->state & State_HasFocus && !cmb->editable)
cmb->state & State_HasFocusDescription
TRUEnever evaluated
FALSEnever evaluated
!cmb->editableDescription
TRUEnever evaluated
FALSEnever evaluated
0
2221 p->fillRect(re.x(), re.y(), re.width(), re.height(),
never executed: p->fillRect(re.x(), re.y(), re.width(), re.height(), cmb->palette.brush(QPalette::Highlight));
0
2222 cmb->palette.brush(QPalette::Highlight));
never executed: p->fillRect(re.x(), re.y(), re.width(), re.height(), cmb->palette.brush(QPalette::Highlight));
0
2223-
2224 if (cmb->state & State_HasFocus) {
cmb->state & State_HasFocusDescription
TRUEnever evaluated
FALSEnever evaluated
0
2225 p->setPen(cmb->palette.highlightedText().color());-
2226 p->setBackground(cmb->palette.highlight());-
2227-
2228 } else {
never executed: end of block
0
2229 p->setPen(cmb->palette.text().color());-
2230 p->setBackground(cmb->palette.background());-
2231 }
never executed: end of block
0
2232-
2233 if (cmb->state & State_HasFocus && !cmb->editable) {
cmb->state & State_HasFocusDescription
TRUEnever evaluated
FALSEnever evaluated
!cmb->editableDescription
TRUEnever evaluated
FALSEnever evaluated
0
2234 QStyleOptionFocusRect focus;-
2235 focus.QStyleOption::operator=(*cmb);-
2236 focus.rect = subElementRect(SE_ComboBoxFocusRect, cmb, widget);-
2237 focus.state |= State_FocusAtBorder;-
2238 focus.backgroundColor = cmb->palette.highlight().color();-
2239 proxy()->drawPrimitive(PE_FrameFocusRect, &focus, p, widget);-
2240 }
never executed: end of block
0
2241 }
never executed: end of block
0
2242 }
never executed: end of block
0
2243 break;
never executed: break;
0
2244#endif // QT_NO_COMBOBOX-
2245#ifndef QT_NO_SPINBOX-
2246 case CC_SpinBox:
never executed: case CC_SpinBox:
0
2247 if (const QStyleOptionSpinBox *sb = qstyleoption_cast<const QStyleOptionSpinBox *>(opt)) {
const QStyleOp...pinBox *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
2248 QStyleOptionSpinBox copy = *sb;-
2249 PrimitiveElement pe;-
2250 bool enabled = opt->state & State_Enabled;-
2251 if (sb->frame && (sb->subControls & SC_SpinBoxFrame)) {
sb->frameDescription
TRUEnever evaluated
FALSEnever evaluated
(sb->subContro..._SpinBoxFrame)Description
TRUEnever evaluated
FALSEnever evaluated
0
2252 QBrush editBrush = sb->palette.brush(QPalette::Base);-
2253 QRect r = proxy()->subControlRect(CC_SpinBox, sb, SC_SpinBoxFrame, widget);-
2254 QPalette shadePal = sb->palette;-
2255 shadePal.setColor(QPalette::Midlight, shadePal.button().color());-
2256 qDrawWinPanel(p, r, shadePal, true, &editBrush);-
2257 }
never executed: end of block
0
2258-
2259 QPalette shadePal(opt->palette);-
2260 shadePal.setColor(QPalette::Button, opt->palette.light().color());-
2261 shadePal.setColor(QPalette::Light, opt->palette.button().color());-
2262-
2263 if (sb->subControls & SC_SpinBoxUp) {
sb->subControls & SC_SpinBoxUpDescription
TRUEnever evaluated
FALSEnever evaluated
0
2264 copy.subControls = SC_SpinBoxUp;-
2265 QPalette pal2 = sb->palette;-
2266 if (!(sb->stepEnabled & QAbstractSpinBox::StepUpEnabled)) {
!(sb->stepEnab...StepUpEnabled)Description
TRUEnever evaluated
FALSEnever evaluated
0
2267 pal2.setCurrentColorGroup(QPalette::Disabled);-
2268 copy.state &= ~State_Enabled;-
2269 }
never executed: end of block
0
2270-
2271 copy.palette = pal2;-
2272-
2273 if (sb->activeSubControls == SC_SpinBoxUp && (sb->state & State_Sunken)) {
sb->activeSubC...= SC_SpinBoxUpDescription
TRUEnever evaluated
FALSEnever evaluated
(sb->state & State_Sunken)Description
TRUEnever evaluated
FALSEnever evaluated
0
2274 copy.state |= State_On;-
2275 copy.state |= State_Sunken;-
2276 } else {
never executed: end of block
0
2277 copy.state |= State_Raised;-
2278 copy.state &= ~State_Sunken;-
2279 }
never executed: end of block
0
2280 pe = (sb->buttonSymbols == QAbstractSpinBox::PlusMinus ? PE_IndicatorSpinPlus
sb->buttonSymb...Box::PlusMinusDescription
TRUEnever evaluated
FALSEnever evaluated
0
2281 : PE_IndicatorSpinUp);-
2282-
2283 copy.rect = proxy()->subControlRect(CC_SpinBox, sb, SC_SpinBoxUp, widget);-
2284 qDrawWinButton(p, copy.rect, shadePal, copy.state & (State_Sunken | State_On),-
2285 &copy.palette.brush(QPalette::Button));-
2286 copy.rect.adjust(4, 1, -5, -1);-
2287 if ((!enabled || !(sb->stepEnabled & QAbstractSpinBox::StepUpEnabled))
!enabledDescription
TRUEnever evaluated
FALSEnever evaluated
!(sb->stepEnab...StepUpEnabled)Description
TRUEnever evaluated
FALSEnever evaluated
0
2288 && proxy()->styleHint(SH_EtchDisabledText, opt, widget) )
proxy()->style..., opt, widget)Description
TRUEnever evaluated
FALSEnever evaluated
0
2289 {-
2290 QStyleOptionSpinBox lightCopy = copy;-
2291 lightCopy.rect.adjust(1, 1, 1, 1);-
2292 lightCopy.palette.setBrush(QPalette::ButtonText, copy.palette.light());-
2293 proxy()->drawPrimitive(pe, &lightCopy, p, widget);-
2294 }
never executed: end of block
0
2295 proxy()->drawPrimitive(pe, &copy, p, widget);-
2296 }
never executed: end of block
0
2297-
2298 if (sb->subControls & SC_SpinBoxDown) {
sb->subControl...SC_SpinBoxDownDescription
TRUEnever evaluated
FALSEnever evaluated
0
2299 copy.subControls = SC_SpinBoxDown;-
2300 copy.state = sb->state;-
2301 QPalette pal2 = sb->palette;-
2302 if (!(sb->stepEnabled & QAbstractSpinBox::StepDownEnabled)) {
!(sb->stepEnab...epDownEnabled)Description
TRUEnever evaluated
FALSEnever evaluated
0
2303 pal2.setCurrentColorGroup(QPalette::Disabled);-
2304 copy.state &= ~State_Enabled;-
2305 }
never executed: end of block
0
2306 copy.palette = pal2;-
2307-
2308 if (sb->activeSubControls == SC_SpinBoxDown && (sb->state & State_Sunken)) {
sb->activeSubC...SC_SpinBoxDownDescription
TRUEnever evaluated
FALSEnever evaluated
(sb->state & State_Sunken)Description
TRUEnever evaluated
FALSEnever evaluated
0
2309 copy.state |= State_On;-
2310 copy.state |= State_Sunken;-
2311 } else {
never executed: end of block
0
2312 copy.state |= State_Raised;-
2313 copy.state &= ~State_Sunken;-
2314 }
never executed: end of block
0
2315 pe = (sb->buttonSymbols == QAbstractSpinBox::PlusMinus ? PE_IndicatorSpinMinus
sb->buttonSymb...Box::PlusMinusDescription
TRUEnever evaluated
FALSEnever evaluated
0
2316 : PE_IndicatorSpinDown);-
2317-
2318 copy.rect = proxy()->subControlRect(CC_SpinBox, sb, SC_SpinBoxDown, widget);-
2319 qDrawWinButton(p, copy.rect, shadePal, copy.state & (State_Sunken | State_On),-
2320 &copy.palette.brush(QPalette::Button));-
2321 copy.rect.adjust(4, 0, -5, -1);-
2322 if ((!enabled || !(sb->stepEnabled & QAbstractSpinBox::StepDownEnabled))
!enabledDescription
TRUEnever evaluated
FALSEnever evaluated
!(sb->stepEnab...epDownEnabled)Description
TRUEnever evaluated
FALSEnever evaluated
0
2323 && proxy()->styleHint(SH_EtchDisabledText, opt, widget) )
proxy()->style..., opt, widget)Description
TRUEnever evaluated
FALSEnever evaluated
0
2324 {-
2325 QStyleOptionSpinBox lightCopy = copy;-
2326 lightCopy.rect.adjust(1, 1, 1, 1);-
2327 lightCopy.palette.setBrush(QPalette::ButtonText, copy.palette.light());-
2328 proxy()->drawPrimitive(pe, &lightCopy, p, widget);-
2329 }
never executed: end of block
0
2330 proxy()->drawPrimitive(pe, &copy, p, widget);-
2331 }
never executed: end of block
0
2332 }
never executed: end of block
0
2333 break;
never executed: break;
0
2334#endif // QT_NO_SPINBOX-
2335-
2336 default:
never executed: default:
0
2337 QCommonStyle::drawComplexControl(cc, opt, p, widget);-
2338 }
never executed: end of block
0
2339}-
2340-
2341/*! \reimp */-
2342QSize QWindowsStyle::sizeFromContents(ContentsType ct, const QStyleOption *opt,-
2343 const QSize &csz, const QWidget *widget) const-
2344{-
2345 QSize sz(csz);-
2346 switch (ct) {-
2347 case CT_PushButton:
never executed: case CT_PushButton:
0
2348 if (const QStyleOptionButton *btn = qstyleoption_cast<const QStyleOptionButton *>(opt)) {
const QStyleOp...Button *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
2349 sz = QCommonStyle::sizeFromContents(ct, opt, csz, widget);-
2350 int w = sz.width(),-
2351 h = sz.height();-
2352 int defwidth = 0;-
2353 if (btn->features & QStyleOptionButton::AutoDefaultButton)
btn->features ...oDefaultButtonDescription
TRUEnever evaluated
FALSEnever evaluated
0
2354 defwidth = 2 * proxy()->pixelMetric(PM_ButtonDefaultIndicator, btn, widget);
never executed: defwidth = 2 * proxy()->pixelMetric(PM_ButtonDefaultIndicator, btn, widget);
0
2355 int minwidth = int(QStyleHelper::dpiScaled(75.));-
2356 int minheight = int(QStyleHelper::dpiScaled(23.));-
2357-
2358#ifndef QT_QWS_SMALL_PUSHBUTTON-
2359 if (w < minwidth + defwidth && !btn->text.isEmpty())
w < minwidth + defwidthDescription
TRUEnever evaluated
FALSEnever evaluated
!btn->text.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
0
2360 w = minwidth + defwidth;
never executed: w = minwidth + defwidth;
0
2361 if (h < minheight + defwidth)
h < minheight + defwidthDescription
TRUEnever evaluated
FALSEnever evaluated
0
2362 h = minheight + defwidth;
never executed: h = minheight + defwidth;
0
2363#endif-
2364 sz = QSize(w, h);-
2365 }
never executed: end of block
0
2366 break;
never executed: break;
0
2367#ifndef QT_NO_MENU-
2368 case CT_MenuItem:
never executed: case CT_MenuItem:
0
2369 if (const QStyleOptionMenuItem *mi = qstyleoption_cast<const QStyleOptionMenuItem *>(opt)) {
const QStyleOp...nuItem *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
2370 int w = sz.width();-
2371 sz = QCommonStyle::sizeFromContents(ct, opt, csz, widget);-
2372-
2373 if (mi->menuItemType == QStyleOptionMenuItem::Separator) {
mi->menuItemTy...tem::SeparatorDescription
TRUEnever evaluated
FALSEnever evaluated
0
2374 sz = QSize(10, QWindowsStylePrivate::windowsSepHeight);-
2375 }
never executed: end of block
0
2376 else if (mi->icon.isNull()) {
mi->icon.isNull()Description
TRUEnever evaluated
FALSEnever evaluated
0
2377 sz.setHeight(sz.height() - 2);-
2378 w -= 6;-
2379 }
never executed: end of block
0
2380-
2381 if (mi->menuItemType != QStyleOptionMenuItem::Separator && !mi->icon.isNull()) {
mi->menuItemTy...tem::SeparatorDescription
TRUEnever evaluated
FALSEnever evaluated
!mi->icon.isNull()Description
TRUEnever evaluated
FALSEnever evaluated
0
2382 int iconExtent = proxy()->pixelMetric(PM_SmallIconSize, opt, widget);-
2383 sz.setHeight(qMax(sz.height(),-
2384 mi->icon.actualSize(QSize(iconExtent, iconExtent)).height()-
2385 + 2 * QWindowsStylePrivate::windowsItemFrame));-
2386 }
never executed: end of block
0
2387 int maxpmw = mi->maxIconWidth;-
2388 int tabSpacing = 20;-
2389 if (mi->text.contains(QLatin1Char('\t')))
mi->text.conta...in1Char('\t'))Description
TRUEnever evaluated
FALSEnever evaluated
0
2390 w += tabSpacing;
never executed: w += tabSpacing;
0
2391 else if (mi->menuItemType == QStyleOptionMenuItem::SubMenu)
mi->menuItemTy...uItem::SubMenuDescription
TRUEnever evaluated
FALSEnever evaluated
0
2392 w += 2 * QWindowsStylePrivate::windowsArrowHMargin;
never executed: w += 2 * QWindowsStylePrivate::windowsArrowHMargin;
0
2393 else if (mi->menuItemType == QStyleOptionMenuItem::DefaultItem) {
mi->menuItemTy...m::DefaultItemDescription
TRUEnever evaluated
FALSEnever evaluated
0
2394 // adjust the font and add the difference in size.-
2395 // it would be better if the font could be adjusted in the initStyleOption qmenu func!!-
2396 QFontMetrics fm(mi->font);-
2397 QFont fontBold = mi->font;-
2398 fontBold.setBold(true);-
2399 QFontMetrics fmBold(fontBold);-
2400 w += fmBold.width(mi->text) - fm.width(mi->text);-
2401 }
never executed: end of block
0
2402-
2403 int checkcol = qMax<int>(maxpmw, QWindowsStylePrivate::windowsCheckMarkWidth); // Windows always shows a check column-
2404 w += checkcol;-
2405 w += int(QWindowsStylePrivate::windowsRightBorder) + 10;-
2406 sz.setWidth(w);-
2407 }
never executed: end of block
0
2408 break;
never executed: break;
0
2409#endif // QT_NO_MENU-
2410#ifndef QT_NO_MENUBAR-
2411 case CT_MenuBarItem:
never executed: case CT_MenuBarItem:
0
2412 if (!sz.isEmpty())
!sz.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
0
2413 sz += QSize(QWindowsStylePrivate::windowsItemHMargin * 4, QWindowsStylePrivate::windowsItemVMargin * 2);
never executed: sz += QSize(QWindowsStylePrivate::windowsItemHMargin * 4, QWindowsStylePrivate::windowsItemVMargin * 2);
0
2414 break;
never executed: break;
0
2415#endif-
2416 case CT_ToolButton:
never executed: case CT_ToolButton:
0
2417 if (qstyleoption_cast<const QStyleOptionToolButton *>(opt))
qstyleoption_c...Button *>(opt)Description
TRUEnever evaluated
FALSEnever evaluated
0
2418 return sz += QSize(7, 6);
never executed: return sz += QSize(7, 6);
0
2419 // Otherwise, fall through-
2420-
2421 default:
code before this statement never executed: default:
never executed: default:
0
2422 sz = QCommonStyle::sizeFromContents(ct, opt, csz, widget);-
2423 }
never executed: end of block
0
2424 return sz;
never executed: return sz;
0
2425}-
2426-
2427/*!-
2428 \reimp-
2429*/-
2430QIcon QWindowsStyle::standardIcon(StandardPixmap standardIcon, const QStyleOption *option,-
2431 const QWidget *widget) const-
2432{-
2433 return QCommonStyle::standardIcon(standardIcon, option, widget);
never executed: return QCommonStyle::standardIcon(standardIcon, option, widget);
0
2434}-
2435-
2436-
2437-
2438QT_END_NAMESPACE-
2439-
2440#include "moc_qwindowsstyle_p.cpp"-
2441-
2442#endif // QT_NO_STYLE_WINDOWS-
Source codeSwitch to Preprocessed file

Generated by Squish Coco Non-Commercial 4.3.0-BETA-master-30-08-2018-4cb69e9