diff options
author | Richard Moe Gustavsen <richard.gustavsen@qt.io> | 2020-12-16 15:35:35 +0100 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2021-01-13 15:37:15 +0000 |
commit | 3fb7d9353682f5bf7a8101309ce699cf332eba4d (patch) | |
tree | 29eba0d020d633a483d3b57e9d808984aaf0589b | |
parent | a6c754daf833f21e157bd78c90d404962402a56c (diff) |
Windows: add 9p margins to scrollbar
Change-Id: I8d56f7b7071c51d4dfc88e12864bc3e0e7c5ab10
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
(cherry picked from commit 435ddb66acfa0dc7fa086577df4975d9ed0a3d47)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r-- | src/imports/nativestyle/qstyle/windows/qquickwindowsxpstyle.cpp | 26 | ||||
-rw-r--r-- | src/imports/nativestyle/qstyle/windows/qquickwindowsxpstyle_p.h | 2 |
2 files changed, 28 insertions, 0 deletions
diff --git a/src/imports/nativestyle/qstyle/windows/qquickwindowsxpstyle.cpp b/src/imports/nativestyle/qstyle/windows/qquickwindowsxpstyle.cpp index 0f07aef0..bd6afc40 100644 --- a/src/imports/nativestyle/qstyle/windows/qquickwindowsxpstyle.cpp +++ b/src/imports/nativestyle/qstyle/windows/qquickwindowsxpstyle.cpp @@ -3629,6 +3629,32 @@ int QWindowsXPStyle::styleHint(StyleHint hint, const QStyleOption *option, return res; } +QMargins QWindowsXPStyle::ninePatchMargins(QStyle::ComplexControl cc, const QStyleOptionComplex *opt, const QSize &imageSize) const +{ + QMargins margins; + + switch (cc) { + case CC_ScrollBar: { + margins = QWindowsStyle::ninePatchMargins(cc, opt, imageSize); + if (const auto option = qstyleoption_cast<const QStyleOptionSlider *>(opt)) { + if (option->orientation == Qt::Horizontal) { + margins.setTop(-1); + margins.setBottom(-1); + } else { + margins.setLeft(-1); + margins.setRight(-1); + } + } + break; } + default: + margins = QWindowsStyle::ninePatchMargins(cc, opt, imageSize); + break; + } + + return margins; +} + + /*! \reimp */ QPalette QWindowsXPStyle::standardPalette() const { diff --git a/src/imports/nativestyle/qstyle/windows/qquickwindowsxpstyle_p.h b/src/imports/nativestyle/qstyle/windows/qquickwindowsxpstyle_p.h index a6a10405..5d8d5e20 100644 --- a/src/imports/nativestyle/qstyle/windows/qquickwindowsxpstyle_p.h +++ b/src/imports/nativestyle/qstyle/windows/qquickwindowsxpstyle_p.h @@ -87,6 +87,8 @@ public: QPixmap standardPixmap(StandardPixmap standardIcon, const QStyleOption *option) const override; QIcon standardIcon(StandardPixmap standardIcon, const QStyleOption *option = nullptr) const override; + QMargins ninePatchMargins(QStyle::ComplexControl cc, const QStyleOptionComplex *opt, const QSize &imageSize) const; + private: Q_DISABLE_COPY_MOVE(QWindowsXPStyle) Q_DECLARE_PRIVATE(QWindowsXPStyle) |