diff options
author | Morten Johan Sørvig <morten.sorvig@nokia.com> | 2010-02-15 13:06:32 (GMT) |
---|---|---|
committer | Morten Johan Sørvig <morten.sorvig@nokia.com> | 2010-03-02 10:33:16 (GMT) |
commit | 7366200d7600271c86144e70ae59ce77f39b2a16 (patch) | |
tree | 9460cd64d996dd03285e2ebcc14ed4f0ddcb802b /src/gui/kernel/qwidget_p.h | |
parent | 13f23b71cee682ccaaec455d72b1578afc2800ee (diff) | |
download | Qt-7366200d7600271c86144e70ae59ce77f39b2a16.zip Qt-7366200d7600271c86144e70ae59ce77f39b2a16.tar.gz Qt-7366200d7600271c86144e70ae59ce77f39b2a16.tar.bz2 |
Implement alien widgets on Mac/Cocoa.
This commit makes alien widgets opt in on a
per-widget basis on Mac, set the Qt::WA_NativeWindow
flag when creating the widget to enable. Setting
this flag on widgets that have native child or sibling
NSViews is not supported.
The main use case for alien widgets on Mac is to
improve performance for applications that have complex
user interfaces. Qt can handle thousands of widgets
per window, while Cocoa is designed to use a smaller
number of NSViews in combination with NSCells and
custom control implementations. This commit moves
us in the direction of having a few main NSViews with
"leaf" qwidgets implemented as a custom control.
Diffstat (limited to 'src/gui/kernel/qwidget_p.h')
-rw-r--r-- | src/gui/kernel/qwidget_p.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gui/kernel/qwidget_p.h b/src/gui/kernel/qwidget_p.h index efd9a0a..2cb8586 100644 --- a/src/gui/kernel/qwidget_p.h +++ b/src/gui/kernel/qwidget_p.h @@ -720,6 +720,7 @@ public: #elif defined(Q_WS_MAC) // <--------------------------------------------------------- MAC // This is new stuff uint needWindowChange : 1; + uint hasAlienChildren : 1; // Each wiget keeps a list of all its child and grandchild OpenGL widgets. // This list is used to update the gl context whenever a parent and a granparent |