diff options
Diffstat (limited to 'src/widgets/kernel')
-rw-r--r-- | src/widgets/kernel/qapplication.cpp | 21 | ||||
-rw-r--r-- | src/widgets/kernel/qapplication_p.h | 2 | ||||
-rw-r--r-- | src/widgets/kernel/qwidget.cpp | 16 |
3 files changed, 17 insertions, 22 deletions
diff --git a/src/widgets/kernel/qapplication.cpp b/src/widgets/kernel/qapplication.cpp index 7b51028e6e..70c91b9aa4 100644 --- a/src/widgets/kernel/qapplication.cpp +++ b/src/widgets/kernel/qapplication.cpp @@ -399,8 +399,6 @@ void qt_cleanup(); QStyle *QApplicationPrivate::app_style = 0; // default application style bool QApplicationPrivate::overrides_native_style = false; // whether native QApplication style is // overridden, i.e. not native -QString QApplicationPrivate::styleOverride; // style override - #ifndef QT_NO_STYLE_STYLESHEET QString QApplicationPrivate::styleSheet; // default application stylesheet #endif @@ -466,6 +464,13 @@ QDesktopWidget *qt_desktopWidget = 0; // root window widgets */ void QApplicationPrivate::process_cmdline() { + if (!styleOverride.isEmpty()) { + if (app_style) { + delete app_style; + app_style = 0; + } + } + // process platform-indep command line if (!qt_is_gui_used || !argc) return; @@ -481,13 +486,8 @@ void QApplicationPrivate::process_cmdline() QByteArray arg = argv[i]; if (arg.startsWith("--")) arg.remove(0, 1); - QString s; if (arg == "-qdevel" || arg == "-qdebug") { // obsolete argument - } else if (arg.indexOf("-style=", 0) != -1) { - s = QString::fromLocal8Bit(arg.right(arg.length() - 7).toLower()); - } else if (arg == "-style" && i < argc-1) { - s = QString::fromLocal8Bit(argv[++i]).toLower(); #ifndef QT_NO_STYLE_STYLESHEET } else if (arg == "-stylesheet" && i < argc -1) { styleSheet = QLatin1String("file:///"); @@ -501,13 +501,6 @@ void QApplicationPrivate::process_cmdline() } else { argv[j++] = argv[i]; } - if (!s.isEmpty()) { - if (app_style) { - delete app_style; - app_style = 0; - } - styleOverride = s; - } } if(j < argc) { diff --git a/src/widgets/kernel/qapplication_p.h b/src/widgets/kernel/qapplication_p.h index ba8d7ff63c..75d86a5eba 100644 --- a/src/widgets/kernel/qapplication_p.h +++ b/src/widgets/kernel/qapplication_p.h @@ -219,8 +219,6 @@ public: static QApplicationPrivate *instance() { return self; } - static QString styleOverride; - #ifdef QT_KEYPAD_NAVIGATION static QWidget *oldEditFocus; static Qt::NavigationMode navigationMode; diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp index efa032453f..14eb368973 100644 --- a/src/widgets/kernel/qwidget.cpp +++ b/src/widgets/kernel/qwidget.cpp @@ -4711,9 +4711,11 @@ QFont QWidgetPrivate::naturalWidgetFont(uint inheritedMask) const if (QWidget *p = q->parentWidget()) { if (!p->testAttribute(Qt::WA_StyleSheet) || useStyleSheetPropagationInWidgetStyles) { if (!naturalFont.isCopyOf(QApplication::font())) { - QFont inheritedFont = p->font(); - inheritedFont.resolve(inheritedMask); - naturalFont = inheritedFont.resolve(naturalFont); + if (inheritedMask != 0) { + QFont inheritedFont = p->font(); + inheritedFont.resolve(inheritedMask); + naturalFont = inheritedFont.resolve(naturalFont); + } // else nothing to do (naturalFont = naturalFont) } else { naturalFont = p->font(); } @@ -4721,9 +4723,11 @@ QFont QWidgetPrivate::naturalWidgetFont(uint inheritedMask) const } #ifndef QT_NO_GRAPHICSVIEW else if (extra && extra->proxyWidget) { - QFont inheritedFont = extra->proxyWidget->font(); - inheritedFont.resolve(inheritedMask); - naturalFont = inheritedFont.resolve(naturalFont); + if (inheritedMask != 0) { + QFont inheritedFont = extra->proxyWidget->font(); + inheritedFont.resolve(inheritedMask); + naturalFont = inheritedFont.resolve(naturalFont); + } // else nothing to do (naturalFont = naturalFont) } #endif //QT_NO_GRAPHICSVIEW } |