diff options
Diffstat (limited to 'src/libs/advanceddockingsystem/ads_globals.cpp')
-rw-r--r-- | src/libs/advanceddockingsystem/ads_globals.cpp | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/src/libs/advanceddockingsystem/ads_globals.cpp b/src/libs/advanceddockingsystem/ads_globals.cpp index 36df8ed869..a93139bd7c 100644 --- a/src/libs/advanceddockingsystem/ads_globals.cpp +++ b/src/libs/advanceddockingsystem/ads_globals.cpp @@ -41,6 +41,7 @@ #include <QAbstractButton> #include <QPainter> +#include <QStyle> #include <QVariant> namespace ADS { @@ -93,7 +94,7 @@ void hideEmptyParentSplitters(DockSplitter *splitter) } } -void setButtonIcon(QAbstractButton* button, +void setButtonIcon(QAbstractButton *button, QStyle::StandardPixmap standarPixmap, ADS::eIcon customIconId) { @@ -116,5 +117,25 @@ void setButtonIcon(QAbstractButton* button, } } +void repolishStyle(QWidget *widget, eRepolishChildOptions options) +{ + if (!widget) + return; + + widget->style()->unpolish(widget); + widget->style()->polish(widget); + + if (RepolishIgnoreChildren == options) + return; + + QList<QWidget*> children = widget->findChildren<QWidget *>(QString(), + (RepolishDirectChildren == options) ? Qt::FindDirectChildrenOnly : Qt::FindChildrenRecursively); + for (auto w : children) + { + w->style()->unpolish(w); + w->style()->polish(w); + } +} + } // namespace internal } // namespace ADS |