Added function internal::setButtonIcon to unify code for setting DockAreaTitleBar and DockWidgetTab icons

This commit is contained in:
Uwe Kindler
2020-02-05 08:57:57 +01:00
parent acb423872a
commit 6a8b26f415
4 changed files with 65 additions and 50 deletions

View File

@@ -173,15 +173,7 @@ void DockWidgetTabPrivate::createLayout()
CloseButton = createCloseButton();
CloseButton->setObjectName("tabCloseButton");
QIcon CloseIcon = CDockManager::iconProvider().customIcon(TabCloseIcon);
if (CloseIcon.isNull())
{
// The standard icons do does not look good on high DPI screens
QPixmap normalPixmap = _this->style()->standardPixmap(QStyle::SP_TitleBarCloseButton, 0, CloseButton);
CloseIcon.addPixmap(normalPixmap, QIcon::Normal);
CloseIcon.addPixmap(internal::createTransparentPixmap(normalPixmap, 0.25), QIcon::Disabled);
}
CloseButton->setIcon(CloseIcon);
internal::setButtonIcon(CloseButton, QStyle::SP_TitleBarCloseButton, TabCloseIcon);
CloseButton->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
_this->onDockWidgetFeaturesChanged();
internal::setToolTip(CloseButton, QObject::tr("Close Tab"));