diff options
author | Samuel Rødal <samuel.rodal@nokia.com> | 2011-08-08 12:39:38 +0200 |
---|---|---|
committer | Gunnar Sletta <gunnar.sletta@nokia.com> | 2011-08-10 08:17:41 +0200 |
commit | 24c7776c622b29fa3bdf62f7ab681c55af0d9bf0 (patch) | |
tree | c2b947d0ad492bdf758f3f505b3223bd1b5d13c5 /src/gui/kernel/qwindow.cpp | |
parent | 2ac6eb142e4ee73309854ebf02b1dbac7a5b654b (diff) |
Made QWindow::setVisible() send show and hide events.
Change-Id: Ideae15f7bd6801d7afe2354627c0893b0b6a32ca
Reviewed-on: http://codereview.qt.nokia.com/2741
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Diffstat (limited to 'src/gui/kernel/qwindow.cpp')
-rw-r--r-- | src/gui/kernel/qwindow.cpp | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/src/gui/kernel/qwindow.cpp b/src/gui/kernel/qwindow.cpp index 95331a2415..9eb011abb1 100644 --- a/src/gui/kernel/qwindow.cpp +++ b/src/gui/kernel/qwindow.cpp @@ -123,7 +123,18 @@ void QWindow::setVisible(bool visible) if (!d->platformWindow) create(); + + if (visible) { + QShowEvent showEvent; + QGuiApplication::sendEvent(this, &showEvent); + } + d->platformWindow->setVisible(visible); + + if (!visible) { + QHideEvent hideEvent; + QGuiApplication::sendEvent(this, &hideEvent); + } } bool QWindow::visible() const @@ -515,12 +526,10 @@ void QWindow::resizeEvent(QResizeEvent *) void QWindow::showEvent(QShowEvent *) { - qDebug() << "unimplemented:" << __FILE__ << __LINE__; } void QWindow::hideEvent(QHideEvent *) { - qDebug() << "unimplemented:" << __FILE__ << __LINE__; } bool QWindow::event(QEvent *event) @@ -568,6 +577,14 @@ bool QWindow::event(QEvent *event) exposeEvent(static_cast<QExposeEvent *>(event)); break; + case QEvent::Show: + showEvent(static_cast<QShowEvent *>(event)); + break; + + case QEvent::Hide: + hideEvent(static_cast<QHideEvent *>(event)); + break; + default: return QObject::event(event); } |