Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qt_windows.h
Go to the documentation of this file.
1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3// Qt-Security score:significant reason:default
4
5#ifndef QT_WINDOWS_H
6#define QT_WINDOWS_H
7
8#if 0
9#pragma qt_sync_skip_header_check
10#pragma qt_sync_stop_processing
11#endif
12
13#ifndef WINVER
14# define WINVER 0x0A00 // _WIN32_WINNT_WIN10
15#endif
16#ifndef _WIN32_WINNT
17# define _WIN32_WINNT 0x0A00
18#endif
19#ifndef _WIN32_IE
20# define _WIN32_IE 0x0A00
21#endif
22#ifndef NTDDI_VERSION
23# define NTDDI_VERSION 0x0A00000C // NTDDI_WIN10_NI
24#endif
25
26#ifndef NOMINMAX
27# define NOMINMAX
28#endif
29#include <windows.h>
30
31// already defined when compiled with WINVER >= 0x0500
32#ifndef SPI_SETMENUANIMATION
33#define SPI_SETMENUANIMATION 0x1003
34#endif
35#ifndef SPI_SETMENUFADE
36#define SPI_SETMENUFADE 0x1013
37#endif
38#ifndef SPI_SETCOMBOBOXANIMATION
39#define SPI_SETCOMBOBOXANIMATION 0x1005
40#endif
41#ifndef SPI_SETTOOLTIPANIMATION
42#define SPI_SETTOOLTIPANIMATION 0x1017
43#endif
44#ifndef SPI_SETTOOLTIPFADE
45#define SPI_SETTOOLTIPFADE 0x1019
46#endif
47#ifndef SPI_SETUIEFFECTS
48#define SPI_SETUIEFFECTS 0x103F
49#endif
50#ifndef SPI_GETMENUANIMATION
51#define SPI_GETMENUANIMATION 0x1002
52#endif
53#ifndef SPI_GETMENUFADE
54#define SPI_GETMENUFADE 0x1012
55#endif
56#ifndef SPI_GETCOMBOBOXANIMATION
57#define SPI_GETCOMBOBOXANIMATION 0x1004
58#endif
59#ifndef SPI_GETTOOLTIPANIMATION
60#define SPI_GETTOOLTIPANIMATION 0x1016
61#endif
62#ifndef SPI_GETTOOLTIPFADE
63#define SPI_GETTOOLTIPFADE 0x1018
64#endif
65#ifndef SPI_GETUIEFFECTS
66#define SPI_GETUIEFFECTS 0x103E
67#endif
68#ifndef SPI_GETKEYBOARDCUES
69#define SPI_GETKEYBOARDCUES 0x100A
70#endif
71#ifndef SPI_GETGRADIENTCAPTIONS
72#define SPI_GETGRADIENTCAPTIONS 0x1008
73#endif
74#ifndef IDC_HAND
75#define IDC_HAND MAKEINTRESOURCE(32649)
76#endif
77#ifndef WM_MOUSEWHEEL
78#define WM_MOUSEWHEEL 0x020A
79#endif
80#ifndef WM_MOUSEHWHEEL
81#define WM_MOUSEHWHEEL 0x020E
82#endif
83#ifndef ETO_PDY
84#define ETO_PDY 0x2000
85#endif
86#ifndef COLOR_GRADIENTACTIVECAPTION
87#define COLOR_GRADIENTACTIVECAPTION 27
88#endif
89#ifndef COLOR_GRADIENTINACTIVECAPTION
90#define COLOR_GRADIENTINACTIVECAPTION 28
91#endif
92
93// already defined when compiled with WINVER >= 0x0600
94#ifndef SPI_GETFLATMENU
95#define SPI_GETFLATMENU 0x1022
96#endif
97#ifndef CS_DROPSHADOW
98#define CS_DROPSHADOW 0x00020000
99#endif
100#ifndef CLEARTYPE_QUALITY
101#define CLEARTYPE_QUALITY 5
102#endif
103
104#endif // QT_WINDOWS_H
friend class QPainter
friend class QWidgetPrivate
friend class QWidget
Definition qpainter.h:432
uint is_closing
Definition qwidget.h:82
QPalette pal
Definition qwidget.h:91
uint focus_policy
Definition qwidget.h:80
uint in_show
Definition qwidget.h:83
uint unused
Definition qwidget.h:89
uint fstrut_dirty
Definition qwidget.h:85
QRect wrect
Definition qwidget.h:93
QRect crect
Definition qwidget.h:90
uint in_destructor
Definition qwidget.h:88
uint sizehint_forced
Definition qwidget.h:81
uint in_set_window_state
Definition qwidget.h:84
Qt::WindowFlags window_flags
Definition qwidget.h:78
QFont fnt
Definition qwidget.h:92
uint window_modality
Definition qwidget.h:87
uint window_state
Definition qwidget.h:79
WId winid
Definition qwidget.h:76
uint context_menu_policy
Definition qwidget.h:86
uint widget_attributes
Definition qwidget.h:77
The QWidget class is the base class of all user interface objects.
Definition qwidget.h:99
QVarLengthFlatMap< QWindows11Style::Icon, QIcon, 16 > m_standardIcons
The QWindows11Style class provides a look and feel suitable for applications on Microsoft Windows 11.
void drawControl(ControlElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget) const override
QWindows11Style()
Constructs a QWindows11Style object.
bool eventFilter(QObject *obj, QEvent *event) override
void unpolish(QWidget *widget) override
void polish(QWidget *widget) override
void drawComplexControl(ComplexControl control, const QStyleOptionComplex *option, QPainter *painter, const QWidget *widget) const override
QSize sizeFromContents(ContentsType type, const QStyleOption *option, const QSize &size, const QWidget *widget) const override
void unpolish(QApplication *app) override
QRect subControlRect(ComplexControl control, const QStyleOptionComplex *option, SubControl subControl, const QWidget *widget) const override
QWindows11Style(QWindows11StylePrivate &dd)
QPixmap standardPixmap(StandardPixmap standardPixmap, const QStyleOption *option=nullptr, const QWidget *widget=nullptr) const override
void polish(QPalette &pal) override
QPixmap generatedIconPixmap(QIcon::Mode iconMode, const QPixmap &pixmap, const QStyleOption *option) const override
int pixelMetric(PixelMetric metric, const QStyleOption *option=nullptr, const QWidget *widget=nullptr) const override
int styleHint(StyleHint hint, const QStyleOption *opt=nullptr, const QWidget *widget=nullptr, QStyleHintReturn *returnData=nullptr) const override
void drawPrimitive(PrimitiveElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget) const override
QRect subElementRect(QStyle::SubElement element, const QStyleOption *option, const QWidget *widget=nullptr) const override
QIcon standardIcon(StandardPixmap standardIcon, const QStyleOption *option=nullptr, const QWidget *widget=nullptr) const override
void polish(QApplication *app) override
~QWindows11Style() override
Destructor.
HBITMAP buffer(int w=0, int h=0)
static int fixedPixelMetric(QStyle::PixelMetric pm)
static HDC hdcForWidgetBackingStore(const QWidget *widget)
static QBackingStore * backingStoreForWidget(const QWidget *widget)
bool swapAlphaChannel(const QRect &rect, bool allPixels=false)
bool drawBackgroundThruNativeBuffer(QWindowsThemeData &QWindowsThemeData, qreal aditionalDevicePixelRatio, qreal correctionFactor)
static HWND winId(const QWidget *widget)
void init(bool force=false)
static bool isLineEditBaseColorSet(const QStyleOption *option, const QWidget *widget)
bool drawBackgroundDirectly(HDC dc, QWindowsThemeData &QWindowsThemeData, qreal aditionalDevicePixelRatio)
static bool isItemViewDelegateLineEdit(const QWidget *widget)
static bool useVista(bool update=false)
bool fixAlphaChannel(const QRect &rect)
void cleanup(bool force=false)
bool isTransparent(QWindowsThemeData &QWindowsThemeData)
bool hasAlphaChannel(const QRect &rect)
QRegion region(QWindowsThemeData &QWindowsThemeData)
bool drawBackground(QWindowsThemeData &QWindowsThemeData, qreal correctionFactor=1)
QFont assetFont(qreal pointSize) const
static HTHEME createTheme(int theme, const QWidget *widget)
static int pixelMetricFromSystemDp(QStyle::PixelMetric pm, const QStyleOption *option=nullptr, const QWidget *widget=nullptr)
static QString themeName(int theme)
The QWindowsVistaStyle class provides a look and feel suitable for applications on Microsoft Windows ...
QRect subElementRect(SubElement element, const QStyleOption *option, const QWidget *widget) const override
QRect subControlRect(ComplexControl cc, const QStyleOptionComplex *opt, SubControl sc, const QWidget *widget) const override
int styleHint(StyleHint hint, const QStyleOption *opt=nullptr, const QWidget *widget=nullptr, QStyleHintReturn *returnData=nullptr) const override
SubControl hitTestComplexControl(ComplexControl control, const QStyleOptionComplex *option, const QPoint &pos, const QWidget *widget=nullptr) const override
void drawControl(ControlElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget) const override
void polish(QWidget *widget) override
int pixelMetric(PixelMetric metric, const QStyleOption *option=nullptr, const QWidget *widget=nullptr) const override
QPixmap standardPixmap(StandardPixmap standardPixmap, const QStyleOption *opt, const QWidget *widget=nullptr) const override
QIcon standardIcon(StandardPixmap standardIcon, const QStyleOption *option=nullptr, const QWidget *widget=nullptr) const override
\reimp
~QWindowsVistaStyle() override
Destructor.
void polish(QPalette &pal) override
void drawPrimitive(PrimitiveElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget=nullptr) const override
QSize sizeFromContents(ContentsType type, const QStyleOption *option, const QSize &size, const QWidget *widget) const override
QWindowsVistaStyle(QWindowsVistaStylePrivate &dd)
void drawComplexControl(ComplexControl control, const QStyleOptionComplex *option, QPainter *painter, const QWidget *widget) const override
void unpolish(QWidget *widget) override
WinFontIconEngine(const QString &glyph, const QFont &font)
QString string() const override
void paint(QPainter *painter, const QRect &rect, QIcon::Mode mode, QIcon::State state) override
Uses the given painter to paint the icon with the required mode and state into the rectangle rect.
QString key() const override
\variable QIconEngine::ScaledPixmapArgument::size
QIconEngine * clone() const override
Reimplement this method to return a clone of this icon engine.
void setScale(double scale)
Combined button and popup list for selecting options.
Q_CORE_EXPORT QDebug operator<<(QDebug debug, QDir::Filters filters)
Definition qdir.cpp:2620
WINUI3Color
@ dividerStrokeDefault
@ fillControlAltSecondary
@ fillControlTertiary
@ frameColorStrongDisabled
@ textOnAccentPrimary
@ fillControlDefault
@ controlStrokeSecondary
@ frameColorStrong
@ surfaceStroke
@ fillControlDisabled
@ fillMicaAltSecondary
@ subtleHighlightColor
@ textPrimary
@ controlFillSolid
@ fillAccentSecondary
@ frameColorLight
@ subtlePressedColor
@ fillMicaAltDefault
@ textDisabled
@ fillControlSecondary
@ textSecondary
@ controlStrokeOnAccentSecondary
@ fillAccentDefault
@ textOnAccentSecondary
@ focusFrameOuterStroke
@ textOnAccentDisabled
@ fillControlAltQuarternary
@ fillControlInputActive
@ menuPanelFill
@ controlStrongFill
@ fillMicaAltTransparent
@ controlStrokePrimary
@ fillAccentDisabled
@ fillControlAltTertiary
@ fillControlAltDisabled
@ focusFrameInnerStroke
@ fillAccentTertiary
bool operator==(const ThemeMapKey &k1, const ThemeMapKey &k2)
@ UnknownAlpha
AlphaChannelType alphaType
friend size_t qHash(const ThemeMapKey &key, size_t seed=0) noexcept
ThemeMapKey(const QWindowsThemeData &data)
ThemeMapKey()=default