summaryrefslogtreecommitdiffstats
path: root/src/gui/widgets/qtoolbutton.cpp
diff options
context:
space:
mode:
authorWarwick Allison <warwick.allison@nokia.com>2009-07-17 10:21:54 +1000
committerWarwick Allison <warwick.allison@nokia.com>2009-07-17 10:21:54 +1000
commit987aec28b950e1c9817a20a9dd71afc071cd93ea (patch)
treee3ae207dc5793947325a1deaebab76c3de959192 /src/gui/widgets/qtoolbutton.cpp
parent5344f4cb267e35cd112aea6f445f1046a5ac0a9c (diff)
parente1c019fd7ecaa59eee39f23434dd63d5656f4ee0 (diff)
Merge branch 'master' of git@scm.dev.nokia.troll.no:qt/qt
Diffstat (limited to 'src/gui/widgets/qtoolbutton.cpp')
-rw-r--r--src/gui/widgets/qtoolbutton.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/gui/widgets/qtoolbutton.cpp b/src/gui/widgets/qtoolbutton.cpp
index 6dcbfecf7..5d0a98af5 100644
--- a/src/gui/widgets/qtoolbutton.cpp
+++ b/src/gui/widgets/qtoolbutton.cpp
@@ -378,7 +378,11 @@ void QToolButton::initStyleOption(QStyleOptionToolButton *option) const
if (d->hasMenu())
option->features |= QStyleOptionToolButton::HasMenu;
#endif
- option->toolButtonStyle = d->toolButtonStyle;
+ if (d->toolButtonStyle == Qt::ToolButtonSystemDefault) {
+ option->toolButtonStyle = Qt::ToolButtonStyle(style()->styleHint(QStyle::SH_ToolButtonStyle, option, this));
+ } else
+ option->toolButtonStyle = d->toolButtonStyle;
+
if (d->icon.isNull() && d->arrowType == Qt::NoArrow && !forceNoText) {
if (!d->text.isEmpty())
option->toolButtonStyle = Qt::ToolButtonTextOnly;
@@ -476,6 +480,10 @@ QSize QToolButton::minimumSizeHint() const
The default is Qt::ToolButtonIconOnly.
+ If you want your toolbars to depend on system settings,
+ as is possible in GNOME and KDE desktop environments you should
+ use the ToolButtonSystemDefault.
+
QToolButton automatically connects this slot to the relevant
signal in the QMainWindow in which is resides.
*/