From 2a682d24182f53aad88ac6b585c5e565772f746f Mon Sep 17 00:00:00 2001 From: Gunnar Sletta Date: Thu, 4 Aug 2011 10:46:27 +0200 Subject: Added some convenience to QWindow MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I367f5e3f586661322184cfa5f7653814569cb6e3 Reviewed-on: http://codereview.qt.nokia.com/2611 Reviewed-by: Qt Sanity Bot Reviewed-by: Samuel Rødal --- src/gui/kernel/qwindow.cpp | 13 +++++++++++++ src/gui/kernel/qwindow.h | 13 +++++++++++++ 2 files changed, 26 insertions(+) (limited to 'src') diff --git a/src/gui/kernel/qwindow.cpp b/src/gui/kernel/qwindow.cpp index 84c02170c7..95331a2415 100644 --- a/src/gui/kernel/qwindow.cpp +++ b/src/gui/kernel/qwindow.cpp @@ -80,6 +80,19 @@ QWindow::QWindow(QWindow *parent) QGuiApplicationPrivate::window_list.prepend(this); } +QWindow::QWindow(QWindowPrivate &dd, QWindow *parent) + : QObject(dd, parent) + , QSurface(QSurface::Window) +{ + Q_D(QWindow); + d->parentWindow = parent; + if (parent) + d->screen = parent->screen(); + if (!d->screen) + d->screen = QGuiApplication::primaryScreen(); + QGuiApplicationPrivate::window_list.prepend(this); +} + QWindow::~QWindow() { if (QGuiApplicationPrivate::active_window == this) diff --git a/src/gui/kernel/qwindow.h b/src/gui/kernel/qwindow.h index adf948b65e..5b9ad4a3ed 100644 --- a/src/gui/kernel/qwindow.h +++ b/src/gui/kernel/qwindow.h @@ -45,6 +45,7 @@ #include #include #include +#include #include #include @@ -157,6 +158,16 @@ public: void setGeometry(const QRect &rect); QRect geometry() const; + inline int width() const { return geometry().width(); } + inline int height() const { return geometry().height(); } + inline int x() const { return geometry().x(); } + inline int y() const { return geometry().y(); } + + inline QSize size() const { return geometry().size(); } + inline QPoint pos() const { return geometry().topLeft(); } + + inline void resize(const QSize &size) { setGeometry(QRect(pos(), size)); } + QMargins frameMargins() const; void setWindowIcon(const QImage &icon) const; @@ -208,6 +219,8 @@ protected: virtual void wheelEvent(QWheelEvent *); #endif + QWindow(QWindowPrivate &dd, QWindow *parent); + private: QPlatformSurface *surfaceHandle() const; -- cgit v1.2.3