diff options
author | Christian Ehrlicher <ch.ehrlicher@gmx.de> | 2023-10-14 11:06:14 +0200 |
---|---|---|
committer | Christian Ehrlicher <ch.ehrlicher@gmx.de> | 2023-10-18 06:16:22 +0200 |
commit | 739864529235e61dc07ec463ef50865fcdb88e0b (patch) | |
tree | 1833dccfb12ed7bc2b61713c10c524a28d2dab22 /src/widgets/styles | |
parent | f2c2242c748e3954c647076d959c97a3025a0c92 (diff) |
QCommonStyle: misc cleanup
Simplify addIconFiles() by passing an initializer list instead an
c-array + size
Task-number: QTBUG-118122
Change-Id: Id54bbe8436a9106e59b6fede81e31c3065623b4d
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Diffstat (limited to 'src/widgets/styles')
-rw-r--r-- | src/widgets/styles/qcommonstyle.cpp | 49 |
1 files changed, 19 insertions, 30 deletions
diff --git a/src/widgets/styles/qcommonstyle.cpp b/src/widgets/styles/qcommonstyle.cpp index 25d718310f..7345055dee 100644 --- a/src/widgets/styles/qcommonstyle.cpp +++ b/src/widgets/styles/qcommonstyle.cpp @@ -5892,16 +5892,18 @@ QPixmap QCommonStyle::standardPixmap(StandardPixmap sp, const QStyleOption *opti static inline QString iconResourcePrefix() { return QStringLiteral(":/qt-project.org/styles/commonstyle/images/"); } static inline QString iconPngSuffix() { return QStringLiteral(".png"); } -static void addIconFiles(const QString &prefix, const int sizes[], size_t count, QIcon &icon) +template <typename T> +static void addIconFiles(QStringView prefix, std::initializer_list<T> sizes, QIcon &icon) { - for (size_t i = 0; i < count; ++i) - icon.addFile(prefix + QString::number(sizes[i]) + iconPngSuffix()); + const auto fullPrefix = iconResourcePrefix() + prefix; + for (int size : sizes) + icon.addFile(fullPrefix + QString::number(size) + iconPngSuffix()); } -static const int dockTitleIconSizes[] = {10, 16, 20, 32, 48, 64}; -static const int titleBarSizes[] = {16, 32, 48}; -static const int toolBarExtHSizes[] = {8, 16, 32}; -static const int toolBarExtVSizes[] = {5, 10, 20}; +static constexpr auto dockTitleIconSizes = {10, 16, 20, 32, 48, 64}; +static constexpr auto titleBarSizes = {16, 32, 48}; +static constexpr auto toolBarExtHSizes = {8, 16, 32}; +static constexpr auto toolBarExtVSizes = {5, 10, 20}; #endif // imageformat_png /*! @@ -6218,25 +6220,19 @@ QIcon QCommonStyle::standardIcon(StandardPixmap standardIcon, const QStyleOption switch (standardIcon) { #ifndef QT_NO_IMAGEFORMAT_PNG case SP_TitleBarMinButton: - addIconFiles(iconResourcePrefix() + QStringLiteral("titlebar-min-"), - titleBarSizes, sizeof(titleBarSizes)/sizeof(titleBarSizes[0]), icon); + addIconFiles(u"titlebar-min-", titleBarSizes, icon); break; case SP_TitleBarMaxButton: - addIconFiles(iconResourcePrefix() + QStringLiteral("titlebar-max-"), - titleBarSizes, sizeof(titleBarSizes)/sizeof(titleBarSizes[0]), icon); + addIconFiles(u"titlebar-max-", titleBarSizes, icon); break; case SP_TitleBarShadeButton: - addIconFiles(iconResourcePrefix() + QStringLiteral("titlebar-shade-"), - titleBarSizes, sizeof(titleBarSizes)/sizeof(titleBarSizes[0]), icon); - + addIconFiles(u"titlebar-shade-", titleBarSizes, icon); break; case SP_TitleBarUnshadeButton: - addIconFiles(iconResourcePrefix() + QStringLiteral("titlebar-unshade-"), - titleBarSizes, sizeof(titleBarSizes)/sizeof(titleBarSizes[0]), icon); + addIconFiles(u"titlebar-unshade-", titleBarSizes, icon); break; case SP_TitleBarContextHelpButton: - addIconFiles(iconResourcePrefix() + QStringLiteral("titlebar-contexthelp-"), - titleBarSizes, sizeof(titleBarSizes)/sizeof(titleBarSizes[0]), icon); + addIconFiles(u"titlebar-contexthelp-", titleBarSizes, icon); break; case SP_FileDialogNewFolder: icon.addFile(":/qt-project.org/styles/commonstyle/images/newdirectory-16.png"_L1, QSize(16, 16)); @@ -6433,8 +6429,7 @@ QIcon QCommonStyle::standardIcon(StandardPixmap standardIcon, const QStyleOption icon.addFile(":/qt-project.org/styles/commonstyle/images/media-volume-muted-16.png"_L1, QSize(16, 16)); break; case SP_TitleBarCloseButton: - addIconFiles(iconResourcePrefix() + QStringLiteral("closedock-"), - dockTitleIconSizes, sizeof(dockTitleIconSizes)/sizeof(dockTitleIconSizes[0]), icon); + addIconFiles(u"closedock-", dockTitleIconSizes, icon); break; case SP_TitleBarMenuButton: # ifndef QT_NO_IMAGEFORMAT_XPM @@ -6443,19 +6438,13 @@ QIcon QCommonStyle::standardIcon(StandardPixmap standardIcon, const QStyleOption icon.addFile(":/qt-project.org/qmessagebox/images/qtlogo-64.png"_L1); break; case SP_TitleBarNormalButton: - addIconFiles(iconResourcePrefix() + QStringLiteral("normalizedockup-"), - dockTitleIconSizes, sizeof(dockTitleIconSizes)/sizeof(dockTitleIconSizes[0]), icon); + addIconFiles(u"normalizedockup-", dockTitleIconSizes, icon); break; - case SP_ToolBarHorizontalExtensionButton: { - QString prefix = iconResourcePrefix() + QStringLiteral("toolbar-ext-h-"); - if (rtl) - prefix += QStringLiteral("rtl-"); - addIconFiles(prefix, toolBarExtHSizes, sizeof(toolBarExtHSizes)/sizeof(toolBarExtHSizes[0]), icon); - } + case SP_ToolBarHorizontalExtensionButton: + addIconFiles(rtl ? u"toolbar-ext-h-rtl-" : u"toolbar-ext-h-", toolBarExtHSizes, icon); break; case SP_ToolBarVerticalExtensionButton: - addIconFiles(iconResourcePrefix() + QStringLiteral("toolbar-ext-v-"), - toolBarExtVSizes, sizeof(toolBarExtVSizes)/sizeof(toolBarExtVSizes[0]), icon); + addIconFiles(u"toolbar-ext-v-", toolBarExtVSizes, icon); break; case SP_TabCloseButton: icon.addFile(iconResourcePrefix() + u"standardbutton-closetab-16.png", QSize(16, 16), |