FusionStyle: re-add icons for dockwidget titlebar
Re-add the icon for dockwidget titlebars as png images in different resolutions to avoid a blurry icon on high-dpi displays. Also add the source svg. Task-number: QTBUG-118122 Task-number: QTBUG-118643 Change-Id: I24f710e3c7390762c7079c0e153f015475347591 Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
@ -327,6 +327,36 @@ qt_internal_add_resource(Widgets "qstyle1"
|
|||||||
${qstyle1_resource_files}
|
${qstyle1_resource_files}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
set(qstyle_resource_fusion_files
|
||||||
|
"styles/images/fusion_closedock-10.png"
|
||||||
|
"styles/images/fusion_closedock-16.png"
|
||||||
|
"styles/images/fusion_closedock-20.png"
|
||||||
|
"styles/images/fusion_closedock-32.png"
|
||||||
|
"styles/images/fusion_closedock-48.png"
|
||||||
|
"styles/images/fusion_closedock-64.png"
|
||||||
|
"styles/images/fusion_normalizedockup_10.png"
|
||||||
|
"styles/images/fusion_normalizedockup-16.png"
|
||||||
|
"styles/images/fusion_normalizedockup_20.png"
|
||||||
|
"styles/images/fusion_normalizedockup-32.png"
|
||||||
|
"styles/images/fusion_normalizedockup_48.png"
|
||||||
|
"styles/images/fusion_normalizedockup_64.png"
|
||||||
|
"styles/images/fusion_titlebar-min-10.png"
|
||||||
|
"styles/images/fusion_titlebar-min-16.png"
|
||||||
|
"styles/images/fusion_titlebar-min-20.png"
|
||||||
|
"styles/images/fusion_titlebar-min-32.png"
|
||||||
|
"styles/images/fusion_titlebar-min-48.png"
|
||||||
|
"styles/images/fusion_titlebar-min-64.png"
|
||||||
|
)
|
||||||
|
|
||||||
|
qt_internal_add_resource(Widgets "qstyle_fusion"
|
||||||
|
PREFIX
|
||||||
|
"/qt-project.org/styles/fusionstyle"
|
||||||
|
BASE
|
||||||
|
"styles"
|
||||||
|
FILES
|
||||||
|
${qstyle_resource_fusion_files}
|
||||||
|
)
|
||||||
|
|
||||||
if(QT_FEATURE_reduce_relocations AND UNIX AND GCC)
|
if(QT_FEATURE_reduce_relocations AND UNIX AND GCC)
|
||||||
target_link_options(Widgets PRIVATE
|
target_link_options(Widgets PRIVATE
|
||||||
"LINKER:--dynamic-list=${CMAKE_CURRENT_LIST_DIR}/QtWidgets.dynlist")
|
"LINKER:--dynamic-list=${CMAKE_CURRENT_LIST_DIR}/QtWidgets.dynlist")
|
||||||
|
BIN
src/widgets/styles/images/fusion_closedock-10.png
Normal file
After Width: | Height: | Size: 349 B |
BIN
src/widgets/styles/images/fusion_closedock-16.png
Normal file
After Width: | Height: | Size: 432 B |
BIN
src/widgets/styles/images/fusion_closedock-20.png
Normal file
After Width: | Height: | Size: 540 B |
BIN
src/widgets/styles/images/fusion_closedock-32.png
Normal file
After Width: | Height: | Size: 530 B |
BIN
src/widgets/styles/images/fusion_closedock-48.png
Normal file
After Width: | Height: | Size: 869 B |
BIN
src/widgets/styles/images/fusion_closedock-64.png
Normal file
After Width: | Height: | Size: 910 B |
93
src/widgets/styles/images/fusion_closedock.svg
Normal file
@ -0,0 +1,93 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg
|
||||||
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
version="1.1"
|
||||||
|
id="Layer_1"
|
||||||
|
x="0px"
|
||||||
|
y="0px"
|
||||||
|
width="8px"
|
||||||
|
height="8px"
|
||||||
|
viewBox="0 0 8 8"
|
||||||
|
style="enable-background:new 0 0 8 8;"
|
||||||
|
xml:space="preserve"
|
||||||
|
sodipodi:docname="fusion_closedock.svg"
|
||||||
|
inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"
|
||||||
|
inkscape:export-filename="/home/chehrlic/kde/qt.src/qtbase/src/widgets/styles/images/fusion_closedock-64.png"
|
||||||
|
inkscape:export-xdpi="768"
|
||||||
|
inkscape:export-ydpi="768"><metadata
|
||||||
|
id="metadata120"><rdf:RDF><cc:Work
|
||||||
|
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||||
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><defs
|
||||||
|
id="defs118">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</defs><sodipodi:namedview
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#666666"
|
||||||
|
borderopacity="1"
|
||||||
|
objecttolerance="10"
|
||||||
|
gridtolerance="10"
|
||||||
|
guidetolerance="10"
|
||||||
|
inkscape:pageopacity="0"
|
||||||
|
inkscape:pageshadow="2"
|
||||||
|
inkscape:window-width="1920"
|
||||||
|
inkscape:window-height="918"
|
||||||
|
id="namedview116"
|
||||||
|
showgrid="false"
|
||||||
|
inkscape:zoom="63.727999"
|
||||||
|
inkscape:cx="5.1718865"
|
||||||
|
inkscape:cy="4.7238684"
|
||||||
|
inkscape:window-x="0"
|
||||||
|
inkscape:window-y="0"
|
||||||
|
inkscape:window-maximized="1"
|
||||||
|
inkscape:current-layer="Layer_1"
|
||||||
|
inkscape:document-rotation="0" />
|
||||||
|
<style
|
||||||
|
type="text/css"
|
||||||
|
id="style101">
|
||||||
|
.st0{fill:none;}
|
||||||
|
.st1{fill:#353637;}
|
||||||
|
</style>
|
||||||
|
<g
|
||||||
|
id="g105">
|
||||||
|
<rect
|
||||||
|
class="st0"
|
||||||
|
width="8"
|
||||||
|
height="8"
|
||||||
|
id="rect103"
|
||||||
|
x="0"
|
||||||
|
y="0" />
|
||||||
|
</g>
|
||||||
|
<g
|
||||||
|
id="g981"><rect
|
||||||
|
x="5.1188383"
|
||||||
|
y="-2.9975181"
|
||||||
|
transform="rotate(45.000001)"
|
||||||
|
class="st1"
|
||||||
|
width="1.0760319"
|
||||||
|
height="5.9950356"
|
||||||
|
id="rect107"
|
||||||
|
style="stroke-width:0.768594;fill:#6c6a67;fill-opacity:1" /><rect
|
||||||
|
x="-0.53801638"
|
||||||
|
y="-8.6545134"
|
||||||
|
transform="rotate(135)"
|
||||||
|
class="st1"
|
||||||
|
width="1.0760319"
|
||||||
|
height="5.9950356"
|
||||||
|
id="rect109"
|
||||||
|
style="stroke-width:0.768594;fill:#6c6a67;fill-opacity:1" /><rect
|
||||||
|
style="fill:none;stroke:#6c6a67;stroke-width:0.469731;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||||
|
id="rect151"
|
||||||
|
width="6.5302691"
|
||||||
|
height="6.5302691"
|
||||||
|
x="0.73486549"
|
||||||
|
y="0.73486549" /></g></svg>
|
After Width: | Height: | Size: 2.6 KiB |
BIN
src/widgets/styles/images/fusion_normalizedockup-16.png
Normal file
After Width: | Height: | Size: 395 B |
BIN
src/widgets/styles/images/fusion_normalizedockup-32.png
Normal file
After Width: | Height: | Size: 570 B |
84
src/widgets/styles/images/fusion_normalizedockup.svg
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg
|
||||||
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
version="1.1"
|
||||||
|
id="Layer_1"
|
||||||
|
x="0px"
|
||||||
|
y="0px"
|
||||||
|
width="8px"
|
||||||
|
height="8px"
|
||||||
|
viewBox="0 0 8 8"
|
||||||
|
style="enable-background:new 0 0 8 8;"
|
||||||
|
xml:space="preserve"
|
||||||
|
sodipodi:docname="fusion_normalizedockup.svg"
|
||||||
|
inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"
|
||||||
|
inkscape:export-filename="/home/chehrlic/kde/qt.src/qtbase/src/widgets/styles/images/fusion_normalizedockup_64.png"
|
||||||
|
inkscape:export-xdpi="768"
|
||||||
|
inkscape:export-ydpi="768"><metadata
|
||||||
|
id="metadata120"><rdf:RDF><cc:Work
|
||||||
|
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||||
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><defs
|
||||||
|
id="defs118">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</defs><sodipodi:namedview
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#666666"
|
||||||
|
borderopacity="1"
|
||||||
|
objecttolerance="10"
|
||||||
|
gridtolerance="10"
|
||||||
|
guidetolerance="10"
|
||||||
|
inkscape:pageopacity="0"
|
||||||
|
inkscape:pageshadow="2"
|
||||||
|
inkscape:window-width="1920"
|
||||||
|
inkscape:window-height="918"
|
||||||
|
id="namedview116"
|
||||||
|
showgrid="false"
|
||||||
|
inkscape:zoom="63.727999"
|
||||||
|
inkscape:cx="3.979318"
|
||||||
|
inkscape:cy="4.7238684"
|
||||||
|
inkscape:window-x="0"
|
||||||
|
inkscape:window-y="0"
|
||||||
|
inkscape:window-maximized="1"
|
||||||
|
inkscape:current-layer="Layer_1"
|
||||||
|
inkscape:document-rotation="0" />
|
||||||
|
<style
|
||||||
|
type="text/css"
|
||||||
|
id="style101">
|
||||||
|
.st0{fill:none;}
|
||||||
|
.st1{fill:#353637;}
|
||||||
|
</style>
|
||||||
|
<g
|
||||||
|
id="g105">
|
||||||
|
<rect
|
||||||
|
class="st0"
|
||||||
|
width="8"
|
||||||
|
height="8"
|
||||||
|
id="rect103"
|
||||||
|
x="0"
|
||||||
|
y="0" />
|
||||||
|
</g>
|
||||||
|
<rect
|
||||||
|
style="fill:none;stroke:#6c6a67;stroke-width:0.469731;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||||
|
id="rect151"
|
||||||
|
width="6.5302691"
|
||||||
|
height="6.5302691"
|
||||||
|
x="0.73486549"
|
||||||
|
y="0.73486549" /><g
|
||||||
|
id="g1123"
|
||||||
|
transform="matrix(0.85891433,0,0,0.86643038,0.5610817,0.55019701)"><path
|
||||||
|
id="rect151-3-6"
|
||||||
|
style="fill:none;stroke:#6c6a67;stroke-width:0.5;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||||
|
d="m 2.6347656,1.6347656 v 1 h 2.7304688 v 2.7304688 h 1 V 1.6347656 Z" /><path
|
||||||
|
style="fill:none;fill-opacity:1;stroke:#6c6a67;stroke-width:0.5;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||||
|
d="M 1.634209,2.6342089 H 5.3657907 V 6.3657906 H 1.634209 Z"
|
||||||
|
id="rect151-3" /></g></svg>
|
After Width: | Height: | Size: 2.7 KiB |
BIN
src/widgets/styles/images/fusion_normalizedockup_10.png
Normal file
After Width: | Height: | Size: 310 B |
BIN
src/widgets/styles/images/fusion_normalizedockup_20.png
Normal file
After Width: | Height: | Size: 456 B |
BIN
src/widgets/styles/images/fusion_normalizedockup_48.png
Normal file
After Width: | Height: | Size: 749 B |
BIN
src/widgets/styles/images/fusion_normalizedockup_64.png
Normal file
After Width: | Height: | Size: 887 B |
BIN
src/widgets/styles/images/fusion_titlebar-min-10.png
Normal file
After Width: | Height: | Size: 191 B |
BIN
src/widgets/styles/images/fusion_titlebar-min-16.png
Normal file
After Width: | Height: | Size: 153 B |
BIN
src/widgets/styles/images/fusion_titlebar-min-20.png
Normal file
After Width: | Height: | Size: 210 B |
BIN
src/widgets/styles/images/fusion_titlebar-min-32.png
Normal file
After Width: | Height: | Size: 243 B |
BIN
src/widgets/styles/images/fusion_titlebar-min-48.png
Normal file
After Width: | Height: | Size: 187 B |
BIN
src/widgets/styles/images/fusion_titlebar-min-64.png
Normal file
After Width: | Height: | Size: 205 B |
75
src/widgets/styles/images/fusion_titlebar-min.svg
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg
|
||||||
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
version="1.1"
|
||||||
|
id="Layer_1"
|
||||||
|
x="0px"
|
||||||
|
y="0px"
|
||||||
|
width="8px"
|
||||||
|
height="8px"
|
||||||
|
viewBox="0 0 8 8"
|
||||||
|
style="enable-background:new 0 0 8 8;"
|
||||||
|
xml:space="preserve"
|
||||||
|
sodipodi:docname="fusion_titlebar-min.svg"
|
||||||
|
inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"
|
||||||
|
inkscape:export-filename="/home/chehrlic/kde/qt.src/qtbase/src/widgets/styles/images/fusion_titlebar-min-64.png"
|
||||||
|
inkscape:export-xdpi="768"
|
||||||
|
inkscape:export-ydpi="768"><metadata
|
||||||
|
id="metadata120"><rdf:RDF><cc:Work
|
||||||
|
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||||
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
|
||||||
|
id="defs118">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</defs><sodipodi:namedview
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#666666"
|
||||||
|
borderopacity="1"
|
||||||
|
objecttolerance="10"
|
||||||
|
gridtolerance="10"
|
||||||
|
guidetolerance="10"
|
||||||
|
inkscape:pageopacity="0"
|
||||||
|
inkscape:pageshadow="2"
|
||||||
|
inkscape:window-width="1920"
|
||||||
|
inkscape:window-height="918"
|
||||||
|
id="namedview116"
|
||||||
|
showgrid="false"
|
||||||
|
inkscape:zoom="45.0625"
|
||||||
|
inkscape:cx="-0.80217757"
|
||||||
|
inkscape:cy="6.6858335"
|
||||||
|
inkscape:window-x="0"
|
||||||
|
inkscape:window-y="0"
|
||||||
|
inkscape:window-maximized="1"
|
||||||
|
inkscape:current-layer="Layer_1" />
|
||||||
|
<style
|
||||||
|
type="text/css"
|
||||||
|
id="style101">
|
||||||
|
.st0{fill:none;}
|
||||||
|
.st1{fill:#353637;}
|
||||||
|
</style>
|
||||||
|
<g
|
||||||
|
id="g105">
|
||||||
|
<rect
|
||||||
|
class="st0"
|
||||||
|
width="8"
|
||||||
|
height="8"
|
||||||
|
id="rect103"
|
||||||
|
x="0"
|
||||||
|
y="0" />
|
||||||
|
</g>
|
||||||
|
<rect
|
||||||
|
style="fill:#6c6a67;fill-opacity:1;stroke:none;stroke-width:0.529435;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||||
|
id="rect1157"
|
||||||
|
width="5.5"
|
||||||
|
height="1.5"
|
||||||
|
x="1"
|
||||||
|
y="5.5" /></svg>
|
After Width: | Height: | Size: 2.1 KiB |
@ -3632,12 +3632,50 @@ QRect QFusionStyle::subElementRect(SubElement sr, const QStyleOption *opt, const
|
|||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\reimp
|
||||||
|
*/
|
||||||
|
QIcon QFusionStyle::iconFromTheme(StandardPixmap standardIcon) const
|
||||||
|
{
|
||||||
|
QIcon icon;
|
||||||
|
#if QT_CONFIG(imageformat_png)
|
||||||
|
auto addIconFiles = [](QStringView prefix, QIcon &icon)
|
||||||
|
{
|
||||||
|
const auto fullPrefix = QStringLiteral(":/qt-project.org/styles/fusionstyle/images/") + prefix;
|
||||||
|
static constexpr auto dockTitleIconSizes = {10, 16, 20, 32, 48, 64};
|
||||||
|
for (int size : dockTitleIconSizes)
|
||||||
|
icon.addFile(fullPrefix + QString::number(size) + QStringLiteral(".png"),
|
||||||
|
QSize(size, size));
|
||||||
|
};
|
||||||
|
switch (standardIcon) {
|
||||||
|
case SP_TitleBarNormalButton:
|
||||||
|
addIconFiles(u"fusion_normalizedockup-", icon);
|
||||||
|
break;
|
||||||
|
case SP_TitleBarMinButton:
|
||||||
|
addIconFiles(u"fusion_titlebar-min-", icon);
|
||||||
|
break;
|
||||||
|
case SP_TitleBarCloseButton:
|
||||||
|
case SP_DockWidgetCloseButton:
|
||||||
|
addIconFiles(u"fusion_closedock-", icon);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
#else // imageformat_png
|
||||||
|
Q_UNUSED(standardIcon);
|
||||||
|
#endif // imageformat_png
|
||||||
|
return icon;
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
\reimp
|
\reimp
|
||||||
*/
|
*/
|
||||||
QIcon QFusionStyle::standardIcon(StandardPixmap standardIcon, const QStyleOption *option,
|
QIcon QFusionStyle::standardIcon(StandardPixmap standardIcon, const QStyleOption *option,
|
||||||
const QWidget *widget) const
|
const QWidget *widget) const
|
||||||
{
|
{
|
||||||
|
const auto icon = iconFromTheme(standardIcon);
|
||||||
|
if (!icon.availableSizes().isEmpty())
|
||||||
|
return icon;
|
||||||
return QCommonStyle::standardIcon(standardIcon, option, widget);
|
return QCommonStyle::standardIcon(standardIcon, option, widget);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3647,6 +3685,13 @@ QIcon QFusionStyle::standardIcon(StandardPixmap standardIcon, const QStyleOption
|
|||||||
QPixmap QFusionStyle::standardPixmap(StandardPixmap standardPixmap, const QStyleOption *opt,
|
QPixmap QFusionStyle::standardPixmap(StandardPixmap standardPixmap, const QStyleOption *opt,
|
||||||
const QWidget *widget) const
|
const QWidget *widget) const
|
||||||
{
|
{
|
||||||
|
auto getDevicePixelRatio = [](const QWidget *widget)
|
||||||
|
{
|
||||||
|
return widget ? widget->devicePixelRatio() : qApp->devicePixelRatio();
|
||||||
|
};
|
||||||
|
const auto icon = iconFromTheme(standardPixmap);
|
||||||
|
if (!icon.availableSizes().isEmpty())
|
||||||
|
return icon.pixmap(QSize(16, 16), getDevicePixelRatio(widget));
|
||||||
return QCommonStyle::standardPixmap(standardPixmap, opt, widget);
|
return QCommonStyle::standardPixmap(standardPixmap, opt, widget);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -54,6 +54,7 @@ public:
|
|||||||
int styleHint(StyleHint hint, const QStyleOption *option = nullptr, const QWidget *widget = nullptr,
|
int styleHint(StyleHint hint, const QStyleOption *option = nullptr, const QWidget *widget = nullptr,
|
||||||
QStyleHintReturn *returnData = nullptr) const override;
|
QStyleHintReturn *returnData = nullptr) const override;
|
||||||
QRect itemPixmapRect(const QRect &r, int flags, const QPixmap &pixmap) const override;
|
QRect itemPixmapRect(const QRect &r, int flags, const QPixmap &pixmap) const override;
|
||||||
|
QIcon iconFromTheme(StandardPixmap standardIcon) const;
|
||||||
QIcon standardIcon(StandardPixmap standardIcon, const QStyleOption *option = nullptr,
|
QIcon standardIcon(StandardPixmap standardIcon, const QStyleOption *option = nullptr,
|
||||||
const QWidget *widget = nullptr) const override;
|
const QWidget *widget = nullptr) const override;
|
||||||
QPixmap standardPixmap(StandardPixmap standardPixmap, const QStyleOption *opt,
|
QPixmap standardPixmap(StandardPixmap standardPixmap, const QStyleOption *opt,
|
||||||
|