5#ifndef QQUICKWINDOWSXPSTYLE_P_H
6#define QQUICKWINDOWSXPSTYLE_P_H
19#include <private/qquickwindowsstyle_p.h>
34 void drawPrimitive(PrimitiveElement pe,
const QStyleOption *option, QPainter *p)
const override;
35 void drawControl(ControlElement element,
const QStyleOption *option, QPainter *p)
const override;
37 QRect subControlRect(ComplexControl cc,
const QStyleOptionComplex *option, SubControl sc)
const override;
38 void drawComplexControl(ComplexControl cc,
const QStyleOptionComplex *option, QPainter *p)
const override;
39 QSize sizeFromContents(ContentsType ct,
const QStyleOption *option,
const QSize &contentsSize)
const override;
40 int pixelMetric(PixelMetric pm,
const QStyleOption *option =
nullptr)
const override;
41 int styleHint(StyleHint hint,
const QStyleOption *option =
nullptr,
42 QStyleHintReturn *returnData =
nullptr)
const override;
46 QIcon standardIcon(StandardPixmap standardIcon,
const QStyleOption *option =
nullptr)
const override;
48 QMargins ninePatchMargins(QStyle::ComplexControl cc,
const QStyleOptionComplex *opt,
const QSize &imageSize)
const override;
bool fixAlphaChannel(const QRect &rect)
bool drawBackground(XPThemeData &themeData, qreal correctionFactor=1)
bool drawBackgroundDirectly(HDC dc, XPThemeData &themeData, qreal aditionalDevicePixelRatio)
bool hasAlphaChannel(const QRect &rect)
void init(bool force=false)
QRegion region(XPThemeData &themeData)
HBITMAP buffer(int w=0, int h=0)
bool drawBackgroundThruNativeBuffer(XPThemeData &themeData, qreal aditionalDevicePixelRatio, qreal correctionFactor)
bool isTransparent(XPThemeData &themeData)
static bool useXP(bool update=false)
void cleanup(bool force=false)
bool swapAlphaChannel(const QRect &rect, bool allPixels=false)
The QWindowsXPStyle class provides a Microsoft Windows XP-like look and feel.
QPixmap standardPixmap(StandardPixmap standardIcon, const QStyleOption *option) const override
void drawPrimitive(PrimitiveElement pe, const QStyleOption *option, QPainter *p) const override
QRect subElementRect(SubElement r, const QStyleOption *option) const override
QMargins ninePatchMargins(QStyle::ComplexControl cc, const QStyleOptionComplex *opt, const QSize &imageSize) const override
QWindowsXPStyle(QWindowsXPStylePrivate &dd)
int styleHint(StyleHint hint, const QStyleOption *option=nullptr, QStyleHintReturn *returnData=nullptr) const override
~QWindowsXPStyle() override
QSize sizeFromContents(ContentsType ct, const QStyleOption *option, const QSize &contentsSize) const override
QIcon standardIcon(StandardPixmap standardIcon, const QStyleOption *option=nullptr) const override
void drawComplexControl(ComplexControl cc, const QStyleOptionComplex *option, QPainter *p) const override
void drawControl(ControlElement element, const QStyleOption *option, QPainter *p) const override
int pixelMetric(PixelMetric pm, const QStyleOption *option=nullptr) const override
QPalette standardPalette() const override
QRect subControlRect(ComplexControl cc, const QStyleOptionComplex *option, SubControl sc) const override
static const int windowsItemHMargin
static void populateTitleBarButtonTheme(const QStyle *proxy, const QStyleOptionComplex *option, QStyle::SubControl subControl, bool isTitleBarActive, int part, XPThemeData *theme)
static HRGN qt_hrgn_from_qregion(const QRegion ®ion)
static const int windowsArrowHMargin
static HWND createTreeViewHelperWindow()
static QRegion scaleRegion(const QRegion ®ion, qreal factor)
static const int windowsRightBorder
static void qt_add_rect(HRGN &winRegion, QRect r)
static Qt::Orientation progressBarOrientation(const QStyleOption *option=nullptr)
static const int windowsItemFrame
static const int windowsItemVMargin
static const wchar_t * themeNames[QWindowsXPStylePrivate::NThemes]
static bool buttonVisible(const QStyle::SubControl sc, const QStyleOptionTitleBar *tb)
static QRectF scaleRect(const QRectF &r, qreal factor)
#define TMT_TEXTSHADOWCOLOR
AlphaChannelType alphaType
ThemeMapKey(const XPThemeData &data)