summaryrefslogtreecommitdiffstats
path: root/src/gui/widgets
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2010-02-16 21:55:24 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2010-02-16 21:55:24 (GMT)
commit8776b276a828005f8b1ebfddf4d3e7a63f268866 (patch)
tree470f2d3ce6ccdff261c19f045eb25e53ecbcd08d /src/gui/widgets
parentfd3f9dd0f31efeea3aa0ec28b54c70d85712c7ba (diff)
parentb92dd64af875d62bf4f64097dedaa0b2224304db (diff)
downloadQt-8776b276a828005f8b1ebfddf4d3e7a63f268866.zip
Qt-8776b276a828005f8b1ebfddf4d3e7a63f268866.tar.gz
Qt-8776b276a828005f8b1ebfddf4d3e7a63f268866.tar.bz2
Merge branch 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into master-integration
* 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (42 commits) doc: Fixed some qdoc errors. doc: Fixed some qdoc errors. Fix copyright year. Fix broken license headers. doc: Fixed some qdoc errors. Reusing sheets on Mac OS X 10.5 & above shows painting artifacts. doc: Fixed some qdoc errors. QNetworkAccessManager: add method to send custom requests doc: Fixed some qdoc errors. Optimization: Avoid calling out to public API function Mac: submenu shows up at the wrong position Add operator< and qHash for QSharedPointer and fix operator-. Don't use QSystemLocale if QT_NO_SYSTEMLOCALE (like QWS) Don't use QSystemLocale if QT_NO_SYSTEMLOCALE (like QWS) Optimized QLocale to access system locale on demand. Fix QRegion under Mac OS X. update according to Thiago's comments. Changes: add functionality for dbus auto start to qt Add license header to this file readdir64 is not available on HP-UX ...
Diffstat (limited to 'src/gui/widgets')
-rw-r--r--src/gui/widgets/qdialogbuttonbox.cpp28
-rw-r--r--src/gui/widgets/qmenu_mac.mm15
-rw-r--r--src/gui/widgets/qmenubar_p.h1
3 files changed, 28 insertions, 16 deletions
diff --git a/src/gui/widgets/qdialogbuttonbox.cpp b/src/gui/widgets/qdialogbuttonbox.cpp
index 6a0e363..cc74a53 100644
--- a/src/gui/widgets/qdialogbuttonbox.cpp
+++ b/src/gui/widgets/qdialogbuttonbox.cpp
@@ -103,7 +103,7 @@ QT_BEGIN_NAMESPACE
You can mix and match normal buttons and standard buttons.
Currently the buttons are laid out in the following way if the button box is horizontal:
- \table 100%
+ \table
\row \o \inlineimage buttonbox-gnomelayout-horizontal.png GnomeLayout Horizontal
\o Button box laid out in horizontal GnomeLayout
\row \o \inlineimage buttonbox-kdelayout-horizontal.png KdeLayout Horizontal
@@ -116,25 +116,23 @@ QT_BEGIN_NAMESPACE
The buttons are laid out the following way if the button box is vertical:
- \table 100%
+ \table
+ \row \o GnomeLayout
+ \o KdeLayout
+ \o MacLayout
+ \o WinLayout
\row \o \inlineimage buttonbox-gnomelayout-vertical.png GnomeLayout Vertical
- \o Button box laid out in vertical GnomeLayout
- \row \o \inlineimage buttonbox-kdelayout-vertical.png KdeLayout Vertical
- \o Button box laid out in vertical KdeLayout
- \row \o \inlineimage buttonbox-maclayout-vertical.png MacLayout Vertical
- \o Button box laid out in vertical MacLayout
- \row \o \inlineimage buttonbox-winlayout-vertical.png WinLayout Vertical
- \o Button box laid out in vertical WinLayout
+ \o \inlineimage buttonbox-kdelayout-vertical.png KdeLayout Vertical
+ \o \inlineimage buttonbox-maclayout-vertical.png MacLayout Vertical
+ \o \inlineimage buttonbox-winlayout-vertical.png WinLayout Vertical
\endtable
Additionally, button boxes that contain only buttons with ActionRole or
- HelpRole can be considered modeless and have an alternate look on the mac:
+ HelpRole can be considered modeless and have an alternate look on Mac OS X:
- \table 100%
- \row \o \inlineimage buttonbox-mac-modeless-horizontal.png Screenshot of modeless horizontal MacLayout
- \o modeless horizontal MacLayout
- \row \o \inlineimage buttonbox-mac-modeless-vertical.png Screenshot of modeless vertical MacLayout
- \o modeless vertical MacLayout
+ \table
+ \row \o modeless horizontal MacLayout
+ \o \inlineimage buttonbox-mac-modeless-horizontal.png Screenshot of modeless horizontal MacLayout
\endtable
When a button is clicked in the button box, the clicked() signal is emitted
diff --git a/src/gui/widgets/qmenu_mac.mm b/src/gui/widgets/qmenu_mac.mm
index 658a020..99c550f 100644
--- a/src/gui/widgets/qmenu_mac.mm
+++ b/src/gui/widgets/qmenu_mac.mm
@@ -2030,6 +2030,18 @@ void qt_mac_clear_menubar()
*/
bool QMenuBar::macUpdateMenuBar()
{
+#ifdef QT_MAC_USE_COCOA
+ QMacCocoaAutoReleasePool pool;
+ if (!qt_cocoaPostMessage(getMenuLoader(), @selector(qtUpdateMenubar)))
+ return QMenuBarPrivate::macUpdateMenuBarImmediatly();
+ return true;
+#else
+ return QMenuBarPrivate::macUpdateMenuBarImmediatly();
+#endif
+}
+
+bool QMenuBarPrivate::macUpdateMenuBarImmediatly()
+{
bool ret = false;
cancelAllMenuTracking();
QWidget *w = findWindowThatShouldDisplayMenubar();
@@ -2095,8 +2107,9 @@ bool QMenuBar::macUpdateMenuBar()
}
}
- if(!ret)
+ if (!ret) {
qt_mac_clear_menubar();
+ }
return ret;
}
diff --git a/src/gui/widgets/qmenubar_p.h b/src/gui/widgets/qmenubar_p.h
index f2e5357..819aee4 100644
--- a/src/gui/widgets/qmenubar_p.h
+++ b/src/gui/widgets/qmenubar_p.h
@@ -196,6 +196,7 @@ public:
return 0;
}
} *mac_menubar;
+ static bool macUpdateMenuBarImmediatly();
bool macWidgetHasNativeMenubar(QWidget *widget);
void macCreateMenuBar(QWidget *);
void macDestroyMenuBar();