Cocoa: reimplement QPlatformWindow::setOpacity()
authorBradley T. Hughes <bradley.hughes@nokia.com>
Wed, 21 Mar 2012 09:49:39 +0000 (10:49 +0100)
committerQt by Nokia <qt-info@nokia.com>
Mon, 26 Mar 2012 07:13:49 +0000 (09:13 +0200)
Qt and Cocoa opacity levels are compatible, so we just need to forward
the setOpacity() argument to [NSWindow setAlphaValue]

Change-Id: I5fd5678894fd6949811ad1c4b493e592561f01f6
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
src/plugins/platforms/cocoa/qcocoawindow.h
src/plugins/platforms/cocoa/qcocoawindow.mm

index 94d166b..184422a 100644 (file)
@@ -99,6 +99,7 @@ public:
     void raise();
     void lower();
     void propagateSizeHints();
+    void setOpacity(qreal level);
     bool setKeyboardGrabEnabled(bool grab);
     bool setMouseGrabEnabled(bool grab);
 
index b5e8ff2..7282a8d 100644 (file)
@@ -233,6 +233,12 @@ void QCocoaWindow::propagateSizeHints()
     }
 }
 
+void QCocoaWindow::setOpacity(qreal level)
+{
+    if (m_nsWindow)
+        [m_nsWindow setAlphaValue:level];
+}
+
 bool QCocoaWindow::setKeyboardGrabEnabled(bool grab)
 {
     if (!m_nsWindow)