diff options
author | Fabien Freling <fabien.freling@nokia.com> | 2011-01-27 09:24:02 (GMT) |
---|---|---|
committer | Fabien Freling <fabien.freling@nokia.com> | 2011-01-27 09:38:40 (GMT) |
commit | b0d682080023dc07e912bf273d007306e758dd01 (patch) | |
tree | 73b3aac760523029ef2c810202ce06e9f7977d4a | |
parent | e10a438a90b369c894b5f39cc1ab61ae68ff200c (diff) | |
download | Qt-b0d682080023dc07e912bf273d007306e758dd01.zip Qt-b0d682080023dc07e912bf273d007306e758dd01.tar.gz Qt-b0d682080023dc07e912bf273d007306e758dd01.tar.bz2 |
Move all display: utility functions.
All utility functions to call display: are now
placed in qt_cocoa_helpers_mac.mm
Reviewed-by: Richard Moe Gustavsen
-rw-r--r-- | src/gui/kernel/qt_cocoa_helpers_mac.mm | 19 | ||||
-rw-r--r-- | src/gui/kernel/qt_cocoa_helpers_mac_p.h | 3 | ||||
-rw-r--r-- | src/gui/kernel/qwidget_mac.mm | 23 | ||||
-rw-r--r-- | src/gui/painting/qwindowsurface_raster.cpp | 2 |
4 files changed, 23 insertions, 24 deletions
diff --git a/src/gui/kernel/qt_cocoa_helpers_mac.mm b/src/gui/kernel/qt_cocoa_helpers_mac.mm index 74d44a3..71f59e3 100644 --- a/src/gui/kernel/qt_cocoa_helpers_mac.mm +++ b/src/gui/kernel/qt_cocoa_helpers_mac.mm @@ -1590,13 +1590,30 @@ void qt_mac_display(QWidget *widget) return; } -void qt_mac_setneedsdisplay(QWidget *widget) +void qt_mac_setNeedsDisplay(QWidget *widget) { NSView *theNSView = qt_mac_nativeview_for(widget); [theNSView setNeedsDisplay:YES]; return; } +void qt_mac_setNeedsDisplayInRect(QWidget *widget, QRegion region) +{ + NSView *theNSView = qt_mac_nativeview_for(widget); + if (region.isEmpty()) { + [theNSView setNeedsDisplay:YES]; + return; + } + + QVector<QRect> rects = region.rects(); + for (int i = 0; i < rects.count(); ++i) { + const QRect &rect = rects.at(i); + NSRect nsrect = NSMakeRect(rect.x(), rect.y(), rect.width(), rect.height()); + [theNSView setNeedsDisplayInRect:nsrect]; + } + +} + #endif // QT_MAC_USE_COCOA QT_END_NAMESPACE diff --git a/src/gui/kernel/qt_cocoa_helpers_mac_p.h b/src/gui/kernel/qt_cocoa_helpers_mac_p.h index b177210..a80c2e1 100644 --- a/src/gui/kernel/qt_cocoa_helpers_mac_p.h +++ b/src/gui/kernel/qt_cocoa_helpers_mac_p.h @@ -229,7 +229,8 @@ void qt_mac_post_retranslateAppMenu(); #ifdef QT_MAC_USE_COCOA void qt_mac_display(QWidget *widget); -void qt_mac_setneedsdisplay(QWidget *widget); +void qt_mac_setNeedsDisplay(QWidget *widget); +void qt_mac_setNeedsDisplayInRect(QWidget *widget, QRegion region); #endif // QT_MAC_USE_COCOA diff --git a/src/gui/kernel/qwidget_mac.mm b/src/gui/kernel/qwidget_mac.mm index 3c5c458..83483f5 100644 --- a/src/gui/kernel/qwidget_mac.mm +++ b/src/gui/kernel/qwidget_mac.mm @@ -580,25 +580,6 @@ inline static void qt_mac_set_window_group_to_popup(OSWindowRef window) } #endif -#ifdef QT_MAC_USE_COCOA -void qt_mac_set_needs_display(QWidget *widget, QRegion region) -{ - NSView *theNSView = qt_mac_nativeview_for(widget); - if (region.isEmpty()) { - [theNSView setNeedsDisplay:YES]; - return; - } - - QVector<QRect> rects = region.rects(); - for (int i = 0; i<rects.count(); ++i) { - const QRect &rect = rects.at(i); - NSRect nsrect = NSMakeRect(rect.x(), rect.y(), rect.width(), rect.height()); - [theNSView setNeedsDisplayInRect:nsrect]; - } - -} -#endif - inline static bool updateRedirectedToGraphicsProxyWidget(QWidget *widget, const QRect &rect) { if (!widget) @@ -3352,7 +3333,7 @@ void QWidgetPrivate::update_sys(const QRect &r) #ifndef QT_MAC_USE_COCOA HIViewSetNeedsDisplay(qt_mac_nativeview_for(q), true); #else - qt_mac_set_needs_display(q, QRegion()); + qt_mac_setNeedsDisplayInRect(q, QRegion()); #endif return; } @@ -4928,7 +4909,7 @@ void QWidgetPrivate::finishCocoaMaskSetup() [window setOpaque:(extra->imageMask == 0)]; [window invalidateShadow]; } - qt_mac_set_needs_display(q, QRegion()); + qt_mac_setNeedsDisplayInRect(q, QRegion()); } #endif diff --git a/src/gui/painting/qwindowsurface_raster.cpp b/src/gui/painting/qwindowsurface_raster.cpp index 92e9425..8e09c58 100644 --- a/src/gui/painting/qwindowsurface_raster.cpp +++ b/src/gui/painting/qwindowsurface_raster.cpp @@ -268,7 +268,7 @@ void QRasterWindowSurface::flush(QWidget *widget, const QRegion &rgn, const QPoi this->regionToFlush += rgn; // The actual flushing will be processed in [view drawRect:rect] - qt_mac_setneedsdisplay(widget); + qt_mac_setNeedsDisplay(widget); // Unified toolbar hack. // We issue a flush call for each QToolBar so they get repainted right after |