diff options
author | Fabien Freling <fabien.freling@nokia.com> | 2010-10-19 11:36:13 (GMT) |
---|---|---|
committer | Fabien Freling <fabien.freling@nokia.com> | 2010-10-19 11:36:13 (GMT) |
commit | ea614c822c0075b939cc8a56bbc53aaf9c68228d (patch) | |
tree | 4d23f2baffccea594662c5569351eda3ad93b6a7 | |
parent | 7be892eaeff8aad62b5e7ae2300322c9c1a5420e (diff) | |
download | Qt-ea614c822c0075b939cc8a56bbc53aaf9c68228d.zip Qt-ea614c822c0075b939cc8a56bbc53aaf9c68228d.tar.gz Qt-ea614c822c0075b939cc8a56bbc53aaf9c68228d.tar.bz2 |
Enable the unified toolbar with the raster
engine only in the Cocoa port.
Reviewed-by: Tor Arne Vestbø
-rw-r--r-- | src/gui/kernel/qwidget.cpp | 4 | ||||
-rw-r--r-- | src/gui/painting/qunifiedtoolbarsurface_mac.cpp | 4 | ||||
-rw-r--r-- | src/gui/painting/qunifiedtoolbarsurface_mac_p.h | 4 | ||||
-rw-r--r-- | src/gui/painting/qwindowsurface_raster.cpp | 8 | ||||
-rw-r--r-- | src/gui/widgets/qmainwindow.cpp | 2 | ||||
-rw-r--r-- | src/gui/widgets/qmainwindowlayout_mac.mm | 2 |
6 files changed, 20 insertions, 4 deletions
diff --git a/src/gui/kernel/qwidget.cpp b/src/gui/kernel/qwidget.cpp index a75fc38..a773e7a 100644 --- a/src/gui/kernel/qwidget.cpp +++ b/src/gui/kernel/qwidget.cpp @@ -5322,12 +5322,12 @@ void QWidgetPrivate::drawWidget(QPaintDevice *pdev, const QRegion &rgn, const QP if (rgn.isEmpty()) return; -#ifdef Q_WS_MAC +#if defined(Q_WS_MAC) && defined(QT_MAC_USE_COCOA) // We disable the rendering of QToolBar in the backingStore if // it's supposed to be in the unified toolbar on Mac OS X. if (backingStore && isInUnifiedToolbar) return; -#endif // Q_WS_MAC +#endif // Q_WS_MAC && QT_MAC_USE_COCOA Q_Q(QWidget); diff --git a/src/gui/painting/qunifiedtoolbarsurface_mac.cpp b/src/gui/painting/qunifiedtoolbarsurface_mac.cpp index 722355e..b90b061 100644 --- a/src/gui/painting/qunifiedtoolbarsurface_mac.cpp +++ b/src/gui/painting/qunifiedtoolbarsurface_mac.cpp @@ -39,6 +39,8 @@ ** ****************************************************************************/ +#ifdef QT_MAC_USE_COCOA + #include "qunifiedtoolbarsurface_mac_p.h" #include <private/qt_cocoa_helpers_mac_p.h> #include <private/qbackingstore_p.h> @@ -231,3 +233,5 @@ void QUnifiedToolbarSurface::prepareBuffer(QImage::Format format, QWidget *widge } QT_END_NAMESPACE + +#endif // QT_MAC_USE_COCOA diff --git a/src/gui/painting/qunifiedtoolbarsurface_mac_p.h b/src/gui/painting/qunifiedtoolbarsurface_mac_p.h index d7805e8..c2ec854 100644 --- a/src/gui/painting/qunifiedtoolbarsurface_mac_p.h +++ b/src/gui/painting/qunifiedtoolbarsurface_mac_p.h @@ -53,6 +53,8 @@ // We mean it. // +#ifdef QT_MAC_USE_COCOA + #include <private/qwindowsurface_raster_p.h> #include <QWidget> #include <private/qwidget_p.h> @@ -92,4 +94,6 @@ private: QT_END_NAMESPACE +#endif // QT_MAC_USE_COCOA + #endif // QUNIFIEDTOOLBARSURFACE_MAC_P_H diff --git a/src/gui/painting/qwindowsurface_raster.cpp b/src/gui/painting/qwindowsurface_raster.cpp index 99f8597..217723f 100644 --- a/src/gui/painting/qwindowsurface_raster.cpp +++ b/src/gui/painting/qwindowsurface_raster.cpp @@ -251,6 +251,7 @@ void QRasterWindowSurface::flush(QWidget *widget, const QRegion &rgn, const QPoi #ifdef Q_WS_MAC +#ifdef QT_MAC_USE_COCOA // Unified toolbar hack. QMainWindow* mWindow = qobject_cast<QMainWindow*>(widget->window()); if (mWindow) { @@ -267,6 +268,7 @@ void QRasterWindowSurface::flush(QWidget *widget, const QRegion &rgn, const QPoi } } } +#endif // QT_MAC_USE_COCOA Q_UNUSED(offset); // Get a context for the widget. @@ -338,7 +340,8 @@ void QRasterWindowSurface::setGeometry(const QRect &rect) prepareBuffer(QNativeImage::systemFormat(), window()); } d->inSetGeometry = false; -#ifdef Q_WS_MAC + +#if defined(Q_WS_MAC) && defined(QT_MAC_USE_COCOA) QMainWindow* mWindow = qobject_cast<QMainWindow*>(window()); if (mWindow) { QMainWindowLayout *mLayout = qobject_cast<QMainWindowLayout*>(mWindow->layout()); @@ -354,7 +357,8 @@ void QRasterWindowSurface::setGeometry(const QRect &rect) } } } -#endif // Q_WS_MAC +#endif // Q_WS_MAC && QT_MAC_USE_COCOA + } // from qwindowsurface.cpp diff --git a/src/gui/widgets/qmainwindow.cpp b/src/gui/widgets/qmainwindow.cpp index 861cfaa..d4118bd 100644 --- a/src/gui/widgets/qmainwindow.cpp +++ b/src/gui/widgets/qmainwindow.cpp @@ -1524,10 +1524,12 @@ void QMainWindow::setUnifiedTitleAndToolBarOnMac(bool set) d->useHIToolBar = set; createWinId(); // We need the hiview for down below. +#ifdef QT_MAC_USE_COCOA // Activate the unified toolbar with the raster engine. if (windowSurface()) { d->layout->unifiedSurface = new QUnifiedToolbarSurface(this); } +#endif // QT_MAC_USE_COCOA d->layout->updateHIToolBarStatus(); // Enabling the unified toolbar clears the opaque size grip setting, update it. diff --git a/src/gui/widgets/qmainwindowlayout_mac.mm b/src/gui/widgets/qmainwindowlayout_mac.mm index 21f6067..126cc4a 100644 --- a/src/gui/widgets/qmainwindowlayout_mac.mm +++ b/src/gui/widgets/qmainwindowlayout_mac.mm @@ -452,7 +452,9 @@ void QMainWindowLayout::insertIntoMacToolbar(QToolBar *before, QToolBar *toolbar for (int i = 0; i < beforeIndex; ++i) { offset.setX(offset.x() + qtoolbarsInUnifiedToolbarList.at(i)->size().width()); } +#ifdef QT_MAC_USE_COCOA unifiedSurface->insertToolbar(toolbar, offset); +#endif // QT_MAC_USE_COCOA } #ifndef QT_MAC_USE_COCOA |