Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QWindow Class Reference

\inmodule QtGui More...

#include <qwindow.h>

+ Inheritance diagram for QWindow:
+ Collaboration diagram for QWindow:

Public Slots

 Q_REVISION (2, 1) void requestActivate()
 
void setVisible (bool visible)
 
void show ()
 Shows the window.
 
void hide ()
 Hides the window.
 
void showMinimized ()
 Shows the window as minimized.
 
void showMaximized ()
 Shows the window as maximized.
 
void showFullScreen ()
 Shows the window as fullscreen.
 
void showNormal ()
 Shows the window as normal, i.e.
 
bool close ()
 Close the window.
 
void raise ()
 Raise the window in the windowing system.
 
void lower ()
 Lower the window in the windowing system.
 
bool startSystemResize (Qt::Edges edges)
 Start a system-specific resize operation.
 
bool startSystemMove ()
 Start a system-specific move operation.
 
void setTitle (const QString &)
 
void setX (int arg)
 
void setY (int arg)
 
void setWidth (int arg)
 
void setHeight (int arg)
 
void setGeometry (int posx, int posy, int w, int h)
 Sets the geometry of the window, excluding its window frame, to a rectangle constructed from posx, posy, w and h.
 
void setGeometry (const QRect &rect)
 Sets the geometry of the window, excluding its window frame, to rect.
 
void setMinimumWidth (int w)
 
void setMinimumHeight (int h)
 
void setMaximumWidth (int w)
 
void setMaximumHeight (int h)
 
 Q_REVISION (2, 1) void alert(int msec)
 
 Q_REVISION (2, 3) void requestUpdate()
 
- Public Slots inherited from QObject
void deleteLater ()
 \threadsafe
 

Signals

void screenChanged (QScreen *screen)
 This signal is emitted when a window's screen changes, either by being set explicitly with setScreen(), or automatically when the window's screen is removed.
 
void modalityChanged (Qt::WindowModality modality)
 This signal is emitted when the Qwindow::modality property changes to modality.
 
void windowStateChanged (Qt::WindowState windowState)
 This signal is emitted when the windowState changes, either by being set explicitly with setWindowStates(), or automatically when the user clicks one of the titlebar buttons or by other means.
 
 Q_REVISION (2, 2) void windowTitleChanged(const QString &title)
 
void xChanged (int arg)
 
void yChanged (int arg)
 
void widthChanged (int arg)
 
void heightChanged (int arg)
 
void minimumWidthChanged (int arg)
 
void minimumHeightChanged (int arg)
 
void maximumWidthChanged (int arg)
 
void maximumHeightChanged (int arg)
 
void visibleChanged (bool arg)
 
Q_REVISION(2, 1) void visibilityChanged(QWindow Q_REVISION (2, 1) void activeChanged()
 
void contentOrientationChanged (Qt::ScreenOrientation orientation)
 
void focusObjectChanged (QObject *object)
 This signal is emitted when the final receiver of events tied to focus is changed to object.
 
 Q_REVISION (2, 1) void opacityChanged(qreal opacity)
 
 Q_REVISION (2, 13) void transientParentChanged(QWindow *transientParent)
 
- Signals inherited from QObject
void destroyed (QObject *=nullptr)
 This signal is emitted immediately before the object obj is destroyed, after any instances of QPointer have been notified, and cannot be blocked.
 
void objectNameChanged (const QString &objectName, QPrivateSignal)
 This signal is emitted after the object's name has been changed.
 

Protected Member Functions

virtual void exposeEvent (QExposeEvent *)
 The expose event (ev) is sent by the window system when a window moves between the un-exposed and exposed states.
 
virtual void resizeEvent (QResizeEvent *)
 Override this to handle resize events (ev).
 
virtual void paintEvent (QPaintEvent *)
 The paint event (ev) is sent by the window system whenever an area of the window needs a repaint, for example when initially showing the window, or due to parts of the window being uncovered by moving another window.
 
virtual void moveEvent (QMoveEvent *)
 Override this to handle window move events (ev).
 
virtual void focusInEvent (QFocusEvent *)
 Override this to handle focus in events (ev).
 
virtual void focusOutEvent (QFocusEvent *)
 Override this to handle focus out events (ev).
 
virtual void showEvent (QShowEvent *)
 Override this to handle show events (ev).
 
virtual void hideEvent (QHideEvent *)
 Override this to handle hide events (ev).
 
virtual void closeEvent (QCloseEvent *)
 Override this to handle close events (ev).
 
virtual bool event (QEvent *) override
 Override this to handle any event (ev) sent to the window.
 
virtual void keyPressEvent (QKeyEvent *)
 Override this to handle key press events (ev).
 
virtual void keyReleaseEvent (QKeyEvent *)
 Override this to handle key release events (ev).
 
virtual void mousePressEvent (QMouseEvent *)
 Override this to handle mouse press events (ev).
 
virtual void mouseReleaseEvent (QMouseEvent *)
 Override this to handle mouse release events (ev).
 
virtual void mouseDoubleClickEvent (QMouseEvent *)
 Override this to handle mouse double click events (ev).
 
virtual void mouseMoveEvent (QMouseEvent *)
 Override this to handle mouse move events (ev).
 
virtual void touchEvent (QTouchEvent *)
 Override this to handle touch events (ev).
 
virtual bool nativeEvent (const QByteArray &eventType, void *message, qintptr *result)
 Override this to handle platform dependent events.
 
 QWindow (QWindowPrivate &dd, QWindow *parent)
 Creates a window as a child of the given parent window with the dd private implementation.
 
- Protected Member Functions inherited from QObject
QObjectsender () const
 Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns \nullptr.
 
int senderSignalIndex () const
 
int receivers (const char *signal) const
 Returns the number of receivers connected to the signal.
 
bool isSignalConnected (const QMetaMethod &signal) const
 
virtual void timerEvent (QTimerEvent *event)
 This event handler can be reimplemented in a subclass to receive timer events for the object.
 
virtual void childEvent (QChildEvent *event)
 This event handler can be reimplemented in a subclass to receive child events.
 
virtual void customEvent (QEvent *event)
 This event handler can be reimplemented in a subclass to receive custom events.
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
 QObject (QObjectPrivate &dd, QObject *parent=nullptr)
 
- Protected Member Functions inherited from QSurface
 QSurface (SurfaceClass type)
 Creates a surface with the given type.
 

Properties

QString title
 the window's title in the windowing system
 
Qt::WindowModality modality
 the modality of the window
 
Qt::WindowFlags flags
 the window flags of the window
 
int x
 the x position of the window's geometry
 
int y
 the y position of the window's geometry
 
int width
 the width of the window's geometry
 
int height
 the height of the window's geometry
 
int minimumWidth
 the minimum width of the window's geometry
 
int minimumHeight
 the minimum height of the window's geometry
 
int maximumWidth
 the maximum width of the window's geometry
 
int maximumHeight
 the maximum height of the window's geometry
 
bool visible
 whether the window is visible or not
 
bool active
 the active status of the window
 
Visibility visibility
 the screen-occupation state of the window
 
Qt::ScreenOrientation contentOrientation
 the orientation of the window's contents
 
qreal opacity
 The opacity of the window in the windowing system.
 
- Properties inherited from QObject
QString objectName
 the name of this object
 

Private Member Functions

SurfaceType surfaceType () const override
 Returns the surface type of the window.
 
QSurfaceFormat format () const override
 Returns the actual format of this window.
 
QSize size () const override
 Returns the size of the window excluding any window frame.
 
virtual QAccessibleInterface * accessibleRoot () const
 Returns the accessibility interface for the object that the window represents.
 
virtual QObjectfocusObject () const
 Returns the QObject that will be the final receiver of events tied focus, such as key events.
 
 Q_PRIVATE_SLOT (d_func(), void _q_clearAlert()) QPlatformSurface *surfaceHandle() const override
 

Friends

class QGuiApplication
 
class QGuiApplicationPrivate
 
class QWindowContainer
 
Q_GUI_EXPORT QWindowPrivateqt_window_private (QWindow *window)
 

Additional Inherited Members

- Public Types inherited from QSurface
enum  SurfaceClass { Window , Offscreen }
 The SurfaceClass enum describes the actual subclass of the surface. More...
 
enum  SurfaceType {
  RasterSurface , OpenGLSurface , RasterGLSurface , OpenVGSurface ,
  VulkanSurface , MetalSurface , Direct3DSurface
}
 The SurfaceType enum describes what type of surface this is. More...
 
- Public Member Functions inherited from QObject
Q_INVOKABLE QObject (QObject *parent=nullptr)
 Constructs an object with parent object parent.
 
virtual ~QObject ()
 Destroys the object, deleting all its child objects.
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 Filters events if this object has been installed as an event filter for the watched object.
 
QString objectName () const
 
Q_WEAK_OVERLOAD void setObjectName (const QString &name)
 Sets the object's name to name.
 
void setObjectName (QAnyStringView name)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
QBindable< QStringbindableObjectName ()
 
bool isWidgetType () const
 Returns true if the object is a widget; otherwise returns false.
 
bool isWindowType () const
 Returns true if the object is a window; otherwise returns false.
 
bool isQuickItemType () const
 Returns true if the object is a QQuickItem; otherwise returns false.
 
bool signalsBlocked () const noexcept
 Returns true if signals are blocked; otherwise returns false.
 
bool blockSignals (bool b) noexcept
 If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it).
 
QThreadthread () const
 Returns the thread in which the object lives.
 
bool moveToThread (QThread *thread QT6_DECL_NEW_OVERLOAD_TAIL)
 Changes the thread affinity for this object and its children and returns true on success.
 
int startTimer (int interval, Qt::TimerType timerType=Qt::CoarseTimer)
 This is an overloaded function that will start a timer of type timerType and a timeout of interval milliseconds.
 
int startTimer (std::chrono::nanoseconds time, Qt::TimerType timerType=Qt::CoarseTimer)
 
void killTimer (int id)
 Kills the timer with timer identifier, id.
 
void killTimer (Qt::TimerId id)
 
template<typename T >
findChild (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 Returns the child of this object that can be cast into type T and that is called name, or \nullptr if there is no such object.
 
template<typename T >
QList< T > findChildren (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 Returns all children of this object with the given name that can be cast to type T, or an empty list if there are no such objects.
 
template<typename T >
findChild (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
template<typename T >
QList< T > findChildren (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
const QObjectListchildren () const
 Returns a list of child objects.
 
void setParent (QObject *parent)
 Makes the object a child of parent.
 
void installEventFilter (QObject *filterObj)
 Installs an event filter filterObj on this object.
 
void removeEventFilter (QObject *obj)
 Removes an event filter object obj from this object.
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const
 
bool disconnect (const char *signal=nullptr, const QObject *receiver=nullptr, const char *member=nullptr) const
 
bool disconnect (const QObject *receiver, const char *member=nullptr) const
 
void dumpObjectTree () const
 Dumps a tree of children to the debug output.
 
void dumpObjectInfo () const
 Dumps information about signal connections, etc.
 
bool setProperty (const char *name, const QVariant &value)
 Sets the value of the object's name property to value.
 
bool setProperty (const char *name, QVariant &&value)
 
QVariant property (const char *name) const
 Returns the value of the object's name property.
 
QList< QByteArraydynamicPropertyNames () const
 
QBindingStoragebindingStorage ()
 
const QBindingStoragebindingStorage () const
 
QObjectparent () const
 Returns a pointer to the parent object.
 
bool inherits (const char *classname) const
 Returns true if this object is an instance of a class that inherits className or a QObject subclass that inherits className; otherwise returns false.
 
- Public Member Functions inherited from QSurface
virtual ~QSurface ()
 Destroys the surface.
 
SurfaceClass surfaceClass () const
 Returns the surface class of this surface.
 
virtual QPlatformSurfacesurfaceHandle () const =0
 Returns a handle to the platform-specific implementation of the surface.
 
bool supportsOpenGL () const
 Returns true if the surface is OpenGL compatible and can be used in conjunction with QOpenGLContext; otherwise returns false.
 
- Static Public Member Functions inherited from QObject
static QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
 \threadsafe
 
static QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection)
 
template<typename Func1 , typename Func2 >
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::ContextTypeForFunctor< Func2 >::ContextType *context, Func2 &&slot, Qt::ConnectionType type=Qt::AutoConnection)
 
template<typename Func1 , typename Func2 >
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, Func2 &&slot)
 
static bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member)
 \threadsafe
 
static bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member)
 
static bool disconnect (const QMetaObject::Connection &)
 Disconnect a connection.
 
template<typename Func1 , typename Func2 >
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiver, Func2 slot)
 
template<typename Func1 >
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const QObject *receiver, void **zero)
 
- Protected Attributes inherited from QObject
QScopedPointer< QObjectDatad_ptr
 
- Protected Attributes inherited from QSurface
SurfaceClass m_type
 
QSurfacePrivate * m_reserved
 

Detailed Description

\inmodule QtGui

Since
5.0

The QWindow class represents a window in the underlying windowing system.

A window that is supplied a parent becomes a native child window of their parent window.

An application will typically use QWidget or QQuickView for its UI, and not QWindow directly. Still, it is possible to render directly to a QWindow with QBackingStore or QOpenGLContext, when wanting to keep dependencies to a minimum or when wanting to use OpenGL directly. The \l{Raster Window Example} and \l{OpenGL Window Example} are useful reference examples for how to render to a QWindow using either approach.

Definition at line 62 of file qwindow.h.

Constructor & Destructor Documentation

◆ QWindow()

QWindow::QWindow ( QWindowPrivate & dd,
QWindow * parent )
protected

Creates a window as a child of the given parent window with the dd private implementation.

The window will be embedded inside the parent window, its coordinates relative to the parent.

The screen is inherited from the parent.

See also
setParent()

Definition at line 171 of file qwindow.cpp.

References d, nonDesktopParent(), and QObject::parent().

+ Here is the call graph for this function:

Member Function Documentation

◆ accessibleRoot()

QAccessibleInterface * QWindow::accessibleRoot ( ) const
privatevirtual

Returns the accessibility interface for the object that the window represents.

See also
QAccessible

Definition at line 2222 of file qwindow.cpp.

◆ close

bool QWindow::close ( )
slot

Close the window.

This closes the window, effectively calling destroy(), and potentially quitting the application. Returns true on success, false if it has a parent window (in which case the top level window should be closed instead).

See also
destroy(), QGuiApplication::quitOnLastWindowClosed(), closeEvent()

Definition at line 2354 of file qwindow.cpp.

References d.

Referenced by QQuick3DLightmapBaker::~QQuick3DLightmapBaker(), QQuick3DLightmapBaker::bake(), QWasmWindow::onCloseClicked(), and QtWaylandClient::QWaylandQtSurface::zqt_shell_surface_v1_close().

+ Here is the caller graph for this function:

◆ closeEvent()

void QWindow::closeEvent ( QCloseEvent * ev)
protectedvirtual

Override this to handle close events (ev).

The function is called when the window is requested to close. Call \l{QEvent::ignore()} on the event if you want to prevent the window from being closed.

See also
close()

Reimplemented in QWidgetWindow, and QQuickWindow.

Definition at line 2499 of file qwindow.cpp.

References Q_UNUSED.

Referenced by event().

+ Here is the caller graph for this function:

◆ contentOrientationChanged

void QWindow::contentOrientationChanged ( Qt::ScreenOrientation orientation)
signal

◆ event()

bool QWindow::event ( QEvent * ev)
overrideprotectedvirtual

Override this to handle any event (ev) sent to the window.

Return true if the event was recognized and processed.

Remember to call the base class version if you wish for mouse events, key events, resize events, etc to be dispatched as usual.

Reimplemented from QObject.

Reimplemented in QWidgetWindow, QQuickWindow, QQuickWindowQmlImpl, src_gui_vulkan_qvulkaninstance2::VulkanWindow, QVideoWindow, and QPaintDeviceWindow.

Definition at line 2511 of file qwindow.cpp.

References QEvent::ApplicationWindowIconChange, QEvent::Close, closeEvent(), context, QPlatformTheme::ContextMenuOnMouseRelease, QOpenGLContext::currentContext(), d, QObject::event(), QEvent::Expose, exposeEvent(), QEvent::FocusIn, focusInEvent(), QEvent::FocusOut, focusOutEvent(), QEvent::Hide, hideEvent(), icon, QGuiApplicationPrivate::instance(), QEvent::KeyPress, keyPressEvent(), QEvent::KeyRelease, keyReleaseEvent(), QContextMenuEvent::Mouse, QEvent::MouseButtonDblClick, QEvent::MouseButtonPress, QEvent::MouseButtonRelease, mouseDoubleClickEvent(), QEvent::MouseMove, mouseMoveEvent(), mousePressEvent(), mouseReleaseEvent(), QEvent::Move, moveEvent(), nullptr, QEvent::Paint, paintEvent(), QEvent::PlatformSurface, QGuiApplicationPrivate::platformTheme(), QEvent::Resize, resizeEvent(), Qt::RightButton, QCoreApplication::sendEvent(), QEvent::Show, showEvent(), state, QPlatformSurfaceEvent::SurfaceAboutToBeDestroyed, QEvent::TabletMove, QEvent::TabletPress, QEvent::TabletRelease, QEvent::TouchBegin, QEvent::TouchCancel, QEvent::TouchEnd, touchEvent(), QEvent::TouchUpdate, QEvent::type(), and QEvent::Wheel.

Referenced by QWidgetWindow::event(), QQuickWindow::event(), src_gui_vulkan_qvulkaninstance2::VulkanWindow::event(), QVideoWindow::event(), and QPaintDeviceWindow::event().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ exposeEvent()

void QWindow::exposeEvent ( QExposeEvent * ev)
protectedvirtual

The expose event (ev) is sent by the window system when a window moves between the un-exposed and exposed states.

An exposed window is potentially visible to the user. If the window is moved off screen, is made totally obscured by another window, is minimized, or similar, this function might be called and the value of isExposed() might change to false. You may use this event to limit expensive operations such as animations to only run when the window is exposed.

This event should not be used to paint. To handle painting implement paintEvent() instead.

A resize event will always be sent before the expose event the first time a window is shown.

See also
paintEvent(), isExposed()

Reimplemented in src_gui_vulkan_qvulkaninstance2::VulkanWindow, QPaintDeviceWindow, and QQuickWindow.

Definition at line 2423 of file qwindow.cpp.

Referenced by event(), and QPaintDeviceWindow::exposeEvent().

+ Here is the caller graph for this function:

◆ focusInEvent()

void QWindow::focusInEvent ( QFocusEvent * ev)
protectedvirtual

Override this to handle focus in events (ev).

Focus in events are sent when the window receives keyboard focus.

See also
focusOutEvent()

Reimplemented in QQuickWindow.

Definition at line 2741 of file qwindow.cpp.

Referenced by event().

+ Here is the caller graph for this function:

◆ focusObject()

QObject * QWindow::focusObject ( ) const
privatevirtual

Returns the QObject that will be the final receiver of events tied focus, such as key events.

Reimplemented in QWidgetWindow, and QQuickWindow.

Definition at line 2240 of file qwindow.cpp.

Referenced by QGuiApplicationPrivate::processFocusWindowEvent().

+ Here is the caller graph for this function:

◆ focusObjectChanged

QWindow::focusObjectChanged ( QObject * object)
signal

This signal is emitted when the final receiver of events tied to focus is changed to object.

See also
focusObject()

Referenced by QWidget::clearFocus(), QQuickDeliveryAgentPrivate::clearFocusInScope(), QQuickWindowPrivate::init(), QQuickWidgetPrivate::initOffscreenWindow(), and QQuickDeliveryAgentPrivate::setFocusInScope().

+ Here is the caller graph for this function:

◆ focusOutEvent()

void QWindow::focusOutEvent ( QFocusEvent * ev)
protectedvirtual

Override this to handle focus out events (ev).

Focus out events are sent when the window loses keyboard focus.

See also
focusInEvent()

Reimplemented in QQuickWindow.

Definition at line 2753 of file qwindow.cpp.

Referenced by event().

+ Here is the caller graph for this function:

◆ format()

QSurfaceFormat QWindow::format ( ) const
overrideprivatevirtual

Returns the actual format of this window.

After the window has been created, this function will return the actual surface format of the window. It might differ from the requested format if the requested format could not be fulfilled by the platform. It might also be a superset, for example certain buffer sizes may be larger than requested.

Note
Depending on the platform, certain values in this surface format may still contain the requested values, that is, the values that have been passed to setFormat(). Typical examples are the OpenGL version, profile and options. These may not get updated during create() since these are context specific and a single window may be used together with multiple contexts over its lifetime. Use the QOpenGLContext's format() instead to query such values.
See also
create(), requestedFormat(), QOpenGLContext::format()

Implements QSurface.

Definition at line 946 of file qwindow.cpp.

References d.

Referenced by QCALayerBackingStore::QCALayerBackingStore(), QShapedPixmapWindow::QShapedPixmapWindow(), QWindowsDragCursorWindow::QWindowsDragCursorWindow(), QBackingStoreRhiSupport::create(), QD3D11SwapChain::createOrResize(), QGles2SwapChain::createOrResize(), QBackingStoreDefaultCompositor::flush(), QCALayerBackingStore::flush(), QOpenGLWindow::grabFramebuffer(), QOpenGLWidgetPrivate::initialize(), QCocoaWindow::isOpaque(), QWindowsBackingStore::resize(), QPlatformBackingStore::setRhiConfig(), and QWindowsDirect2DWindow::setWindowFlags().

+ Here is the caller graph for this function:

◆ heightChanged

void QWindow::heightChanged ( int arg)
signal

Referenced by QWaylandOutput::initialize(), QQuickWindowContainer::setContainedWindow(), setGeometry(), and QQuickWindowAttached::windowChange().

+ Here is the caller graph for this function:

◆ hide

void QWindow::hide ( )
slot

Hides the window.

Equivalent to calling setVisible(false).

See also
show(), setVisible()

Definition at line 2277 of file qwindow.cpp.

References setVisible().

+ Here is the call graph for this function:

◆ hideEvent()

void QWindow::hideEvent ( QHideEvent * ev)
protectedvirtual

Override this to handle hide events (ev).

The function is called when the window has requested being hidden in the windowing system.

Reimplemented in QQuickWindow.

Definition at line 2486 of file qwindow.cpp.

Referenced by event(), and QWidgetWindow::handleExposeEvent().

+ Here is the caller graph for this function:

◆ keyPressEvent()

void QWindow::keyPressEvent ( QKeyEvent * ev)
protectedvirtual

Override this to handle key press events (ev).

See also
keyReleaseEvent()

Reimplemented in QQuickView, and QQuickWindow.

Definition at line 2719 of file qwindow.cpp.

Referenced by event().

+ Here is the caller graph for this function:

◆ keyReleaseEvent()

void QWindow::keyReleaseEvent ( QKeyEvent * ev)
protectedvirtual

Override this to handle key release events (ev).

See also
keyPressEvent()

Reimplemented in QQuickView, and QQuickWindow.

Definition at line 2729 of file qwindow.cpp.

Referenced by event().

+ Here is the caller graph for this function:

◆ lower

void QWindow::lower ( )
slot

Lower the window in the windowing system.

Requests that the window be lowered to appear below other windows.

Definition at line 1130 of file qwindow.cpp.

References d, and QWindowPrivate::PositionBottom.

◆ maximumHeightChanged

void QWindow::maximumHeightChanged ( int arg)
signal

◆ maximumWidthChanged

void QWindow::maximumWidthChanged ( int arg)
signal

◆ minimumHeightChanged

void QWindow::minimumHeightChanged ( int arg)
signal

Referenced by QWindowContainer::QWindowContainer().

+ Here is the caller graph for this function:

◆ minimumWidthChanged

void QWindow::minimumWidthChanged ( int arg)
signal

Referenced by QWindowContainer::QWindowContainer().

+ Here is the caller graph for this function:

◆ modalityChanged

void QWindow::modalityChanged ( Qt::WindowModality modality)
signal

This signal is emitted when the Qwindow::modality property changes to modality.

◆ mouseDoubleClickEvent()

void QWindow::mouseDoubleClickEvent ( QMouseEvent * ev)
protectedvirtual

Override this to handle mouse double click events (ev).

See also
mousePressEvent(), QStyleHints::mouseDoubleClickInterval()

Reimplemented in QQuickWindow.

Definition at line 2783 of file qwindow.cpp.

Referenced by event().

+ Here is the caller graph for this function:

◆ mouseMoveEvent()

void QWindow::mouseMoveEvent ( QMouseEvent * ev)
protectedvirtual

Override this to handle mouse move events (ev).

Reimplemented in QQuickView, and QQuickWindow.

Definition at line 2791 of file qwindow.cpp.

Referenced by event().

+ Here is the caller graph for this function:

◆ mousePressEvent()

void QWindow::mousePressEvent ( QMouseEvent * ev)
protectedvirtual

Override this to handle mouse press events (ev).

See also
mouseReleaseEvent()

Reimplemented in QQuickView, and QQuickWindow.

Definition at line 2763 of file qwindow.cpp.

Referenced by event().

+ Here is the caller graph for this function:

◆ mouseReleaseEvent()

void QWindow::mouseReleaseEvent ( QMouseEvent * ev)
protectedvirtual

Override this to handle mouse release events (ev).

See also
mousePressEvent()

Reimplemented in QQuickView, and QQuickWindow.

Definition at line 2773 of file qwindow.cpp.

Referenced by event().

+ Here is the caller graph for this function:

◆ moveEvent()

void QWindow::moveEvent ( QMoveEvent * ev)
protectedvirtual

Override this to handle window move events (ev).

Definition at line 2450 of file qwindow.cpp.

Referenced by event().

+ Here is the caller graph for this function:

◆ nativeEvent()

bool QWindow::nativeEvent ( const QByteArray & eventType,
void * message,
qintptr * result )
protectedvirtual

Override this to handle platform dependent events.

Will be given eventType, message and result.

This might make your application non-portable.

Should return true only if the event was handled.

Reimplemented in QWidgetWindow.

Definition at line 2836 of file qwindow.cpp.

References Q_UNUSED.

◆ paintEvent()

void QWindow::paintEvent ( QPaintEvent * ev)
protectedvirtual

The paint event (ev) is sent by the window system whenever an area of the window needs a repaint, for example when initially showing the window, or due to parts of the window being uncovered by moving another window.

The application is expected to render into the window in response to the paint event, regardless of the exposed state of the window. For example, a paint event may be sent before the window is exposed, to prepare it for showing to the user.

Since
6.0
See also
exposeEvent()

Reimplemented in QShapedPixmapWindow, QWindowsDragCursorWindow, QPaintDeviceWindow, and QOpenGLWindow.

Definition at line 2442 of file qwindow.cpp.

Referenced by event().

+ Here is the caller graph for this function:

◆ Q_PRIVATE_SLOT()

QWindow::Q_PRIVATE_SLOT ( d_func() ,
void _q_clearAlert() ) const
overrideprivate

◆ Q_REVISION [1/7]

Q_REVISION(2, 1) void visibilityChanged(QWindow QWindow::Q_REVISION ( 2 ,
1  )
signal

◆ Q_REVISION [2/7]

QWindow::Q_REVISION ( 2 ,
1  )
slot

◆ Q_REVISION [3/7]

QWindow::Q_REVISION ( 2 ,
1  )
signal

◆ Q_REVISION [4/7]

QWindow::Q_REVISION ( 2 ,
1  )
slot

◆ Q_REVISION [5/7]

QWindow::Q_REVISION ( 2 ,
13  )
signal

◆ Q_REVISION [6/7]

QWindow::Q_REVISION ( 2 ,
2  ) const &
signal

◆ Q_REVISION [7/7]

QWindow::Q_REVISION ( 2 ,
3  )
slot

◆ raise

void QWindow::raise ( )
slot

Raise the window in the windowing system.

Requests that the window be raised to appear above other windows.

Definition at line 1115 of file qwindow.cpp.

References d, and QWindowPrivate::PositionTop.

◆ resizeEvent()

void QWindow::resizeEvent ( QResizeEvent * ev)
protectedvirtual

Override this to handle resize events (ev).

The resize event is called whenever the window is resized in the windowing system, either directly through the windowing system acknowledging a setGeometry() or resize() request, or indirectly through the user resizing the window manually.

Reimplemented in QQuickView, QQuickWindow, QVideoWindow, QRasterWindow, QOpenGLWindow, and QQuickApplicationWindow.

Definition at line 2462 of file qwindow.cpp.

Referenced by event(), and QQuickApplicationWindow::resizeEvent().

+ Here is the caller graph for this function:

◆ screenChanged

QWindow::screenChanged ( QScreen * screen)
signal

This signal is emitted when a window's screen changes, either by being set explicitly with setScreen(), or automatically when the window's screen is removed.

Referenced by QQuickRhiItemNode::QQuickRhiItemNode(), QQuickWindowQmlImpl::QQuickWindowQmlImpl(), QWidgetWindow::QWidgetWindow(), QQuickWindowPrivate::init(), QWindowPrivate::init(), and QWaylandOutput::initialize().

+ Here is the caller graph for this function:

◆ setGeometry [1/2]

void QWindow::setGeometry ( const QRect & rect)
slot

Sets the geometry of the window, excluding its window frame, to rect.

The geometry is in relation to the virtualGeometry() of its screen.

See also
geometry()

Definition at line 1814 of file qwindow.cpp.

References d, emit, QScreen::geometry, heightChanged(), rect, QHighDpi::toNativeWindowGeometry(), widthChanged(), QWindowPrivate::WindowFrameExclusive, xChanged(), and yChanged().

+ Here is the call graph for this function:

◆ setGeometry [2/2]

void QWindow::setGeometry ( int posx,
int posy,
int w,
int h )
slot

Sets the geometry of the window, excluding its window frame, to a rectangle constructed from posx, posy, w and h.

The geometry is in relation to the virtualGeometry() of its screen.

See also
geometry()

Definition at line 1802 of file qwindow.cpp.

References setGeometry().

Referenced by AndroidSurfaceView::AndroidSurfaceView(), QDirectFbWindow::createDirectFBWindow(), QtAndroidWindowEmbedding::createRootWindow(), QtAndroidWindowEmbedding::resizeWindow(), setGeometry(), AndroidSurfaceView::setGeometry(), setX(), setY(), QWindowContainerPrivate::updateGeometry(), and QShapedPixmapWindow::updateGeometry().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setHeight

void QWindow::setHeight ( int arg)
slot

Definition at line 1696 of file qwindow.cpp.

References width.

Referenced by QtAndroidQuickViewEmbedding::createQuickView(), QQuickTest::initView(), and QQuickWidgetPrivate::updateSize().

+ Here is the caller graph for this function:

◆ setMaximumHeight

void QWindow::setMaximumHeight ( int h)
slot

Definition at line 1747 of file qwindow.cpp.

References maximumWidth.

◆ setMaximumWidth

void QWindow::setMaximumWidth ( int w)
slot

Definition at line 1738 of file qwindow.cpp.

References maximumHeight.

◆ setMinimumHeight

void QWindow::setMinimumHeight ( int h)
slot

Definition at line 1714 of file qwindow.cpp.

References minimumWidth.

◆ setMinimumWidth

void QWindow::setMinimumWidth ( int w)
slot

Definition at line 1705 of file qwindow.cpp.

References minimumHeight.

◆ setTitle

void QWindow::setTitle ( const QString & title)
slot

Definition at line 1030 of file qwindow.cpp.

References d, Qt::Desktop, emit, and title.

Referenced by QQuickWidgetOffscreenWindow::QQuickWidgetOffscreenWindow(), and quick_test_main_with_setup().

+ Here is the caller graph for this function:

◆ setVisible

void QWindow::setVisible ( bool visible)
slot

Definition at line 689 of file qwindow.cpp.

References d, and visible.

Referenced by AndroidSurfaceView::AndroidSurfaceView(), QBasicDrag::cancel(), QBasicDrag::drop(), hide(), QtWaylandClient::QWaylandIviSurface::ivi_controller_surface_visibility(), QBasicDrag::recreateShapedPixmapWindow(), AndroidSurfaceView::setVisible(), showFullScreen(), showMaximized(), showMinimized(), and showNormal().

+ Here is the caller graph for this function:

◆ setWidth

void QWindow::setWidth ( int arg)
slot

Definition at line 1687 of file qwindow.cpp.

References height.

Referenced by QtAndroidQuickViewEmbedding::createQuickView(), QQuickTest::initView(), and QQuickWidgetPrivate::updateSize().

+ Here is the caller graph for this function:

◆ setX

void QWindow::setX ( int arg)
slot

Definition at line 1661 of file qwindow.cpp.

References arg, d, height, setGeometry(), width, x, and y.

Referenced by QQuickWindowQmlImpl::setX().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setY

void QWindow::setY ( int arg)
slot

Definition at line 1674 of file qwindow.cpp.

References arg, d, height, setGeometry(), width, x, and y.

Referenced by QQuickWindowQmlImpl::setY().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ show

void QWindow::show ( )
slot

Shows the window.

For child windows, this is equivalent to calling showNormal(). Otherwise, it is equivalent to calling showFullScreen(), showMaximized(), or showNormal(), depending on the platform's default behavior for the window type and flags.

See also
showFullScreen(), showMaximized(), showNormal(), hide(), QStyleHints::showIsFullScreen(), flags()

Definition at line 2254 of file qwindow.cpp.

References QObject::parent(), QGuiApplicationPrivate::platformIntegration(), showFullScreen(), showMaximized(), showNormal(), Qt::WindowFullScreen, and Qt::WindowMaximized.

Referenced by QQuick3DLightmapBaker::bake(), QWindowsOleDropSource::GiveFeedback(), main(), main(), main(), makeDocTeamHappyByKeepingExampleCompilable(), quick_test_main_with_setup(), QQuickTest::showView(), and snippetThatUsesMyPopulateScene().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ showEvent()

void QWindow::showEvent ( QShowEvent * ev)
protectedvirtual

Override this to handle show events (ev).

The function is called when the window has requested becoming visible.

If the window is successfully shown by the windowing system, this will be followed by a resize and an expose event.

Reimplemented in QQuickWindow.

Definition at line 2475 of file qwindow.cpp.

Referenced by event(), and QWidgetWindow::handleExposeEvent().

+ Here is the caller graph for this function:

◆ showFullScreen

void QWindow::showFullScreen ( )
slot

Shows the window as fullscreen.

Equivalent to calling setWindowStates(Qt::WindowFullScreen) and then setVisible(true).

See the \l{QWidget::showFullScreen()} documentation for platform-specific considerations and limitations.

See also
setWindowStates(), setVisible()

Definition at line 2321 of file qwindow.cpp.

References setVisible(), and Qt::WindowFullScreen.

Referenced by show().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ showMaximized

void QWindow::showMaximized ( )
slot

Shows the window as maximized.

Equivalent to calling setWindowStates(Qt::WindowMaximized) and then setVisible(true).

See also
setWindowStates(), setVisible()

Definition at line 2304 of file qwindow.cpp.

References setVisible(), and Qt::WindowMaximized.

Referenced by show().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ showMinimized

void QWindow::showMinimized ( )
slot

Shows the window as minimized.

Equivalent to calling setWindowStates(Qt::WindowMinimized) and then setVisible(true).

See also
setWindowStates(), setVisible()

Definition at line 2290 of file qwindow.cpp.

References setVisible(), and Qt::WindowMinimized.

+ Here is the call graph for this function:

◆ showNormal

void QWindow::showNormal ( )
slot

Shows the window as normal, i.e.

neither maximized, minimized, nor fullscreen.

Equivalent to calling setWindowStates(Qt::WindowNoState) and then setVisible(true).

See also
setWindowStates(), setVisible()

Definition at line 2339 of file qwindow.cpp.

References setVisible(), and Qt::WindowNoState.

Referenced by show().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ size()

QSize QWindow::size ( ) const
inlineoverrideprivatevirtual

◆ startSystemMove

bool QWindow::startSystemMove ( )
slot

Start a system-specific move operation.

Since
5.15

Calling this will start an interactive move operation on the window by platforms that support it. The actual behavior may vary depending on the platform. Usually, it will make the window follow the mouse cursor until a mouse button is released.

On platforms that support it, this method of moving windows is preferred over setPosition, because it allows a more native look-and-feel of moving windows, e.g. letting the window manager snap this window against other windows, or special tiling or resizing behavior with animations when dragged to the edge of the screen. Furthermore, on some platforms such as Wayland, setPosition is not supported, so this is the only way the application can influence its position.

Returns true if the operation was supported by the system.

Definition at line 1196 of file qwindow.cpp.

References d, and Q_UNLIKELY.

◆ startSystemResize

bool QWindow::startSystemResize ( Qt::Edges edges)
slot

Start a system-specific resize operation.

Since
5.15

Calling this will start an interactive resize operation on the window by platforms that support it. The actual behavior may vary depending on the platform. Usually, it will make the window resize so that its edge follows the mouse cursor.

On platforms that support it, this method of resizing windows is preferred over setGeometry, because it allows a more native look and feel of resizing windows, e.g. letting the window manager snap this window against other windows, or special resizing behavior with animations when dragged to the edge of the screen.

edges should either be a single edge, or two adjacent edges (a corner). Other values are not allowed.

Returns true if the operation was supported by the system.

Definition at line 1158 of file qwindow.cpp.

References Qt::BottomEdge, d, Qt::LeftEdge, Q_UNLIKELY, qWarning, Qt::RightEdge, and Qt::TopEdge.

◆ surfaceType()

QWindow::SurfaceType QWindow::surfaceType ( ) const
overrideprivatevirtual

Returns the surface type of the window.

See also
setSurfaceType()

Implements QSurface.

Definition at line 665 of file qwindow.cpp.

References d.

Referenced by QAndroidPlatformOpenGLWindow::QAndroidPlatformOpenGLWindow(), QIOSWindow::QIOSWindow(), QMetalSwapChain::createOrResize(), QRhiBackingStore::flush(), and QEglFSWindow::isRaster().

+ Here is the caller graph for this function:

◆ touchEvent()

void QWindow::touchEvent ( QTouchEvent * ev)
protectedvirtual

Override this to handle touch events (ev).

Definition at line 2809 of file qwindow.cpp.

Referenced by event().

+ Here is the caller graph for this function:

◆ visibleChanged

void QWindow::visibleChanged ( bool arg)
signal

Referenced by QQuickWindowQmlImpl::QQuickWindowQmlImpl(), and QQuickWindowContainer::setContainedWindow().

+ Here is the caller graph for this function:

◆ widthChanged

void QWindow::widthChanged ( int arg)
signal

Referenced by QWaylandOutput::initialize(), QQuickWindowContainer::setContainedWindow(), setGeometry(), and QQuickWindowAttached::windowChange().

+ Here is the caller graph for this function:

◆ windowStateChanged

QWindow::windowStateChanged ( Qt::WindowState windowState)
signal

This signal is emitted when the windowState changes, either by being set explicitly with setWindowStates(), or automatically when the user clicks one of the titlebar buttons or by other means.

◆ xChanged

void QWindow::xChanged ( int arg)
signal

Referenced by QQuickWindowQmlImpl::QQuickWindowQmlImpl(), QQuickWindowContainer::setContainedWindow(), and setGeometry().

+ Here is the caller graph for this function:

◆ yChanged

void QWindow::yChanged ( int arg)
signal

Referenced by QQuickWindowQmlImpl::QQuickWindowQmlImpl(), QQuickWindowContainer::setContainedWindow(), and setGeometry().

+ Here is the caller graph for this function:

Friends And Related Symbol Documentation

◆ QGuiApplication

friend class QGuiApplication
friend

Definition at line 359 of file qwindow.h.

◆ QGuiApplicationPrivate

friend class QGuiApplicationPrivate
friend

Definition at line 360 of file qwindow.h.

◆ qt_window_private

Q_GUI_EXPORT QWindowPrivate * qt_window_private ( QWindow * window)
friend

Definition at line 2952 of file qwindow.cpp.

◆ QWindowContainer

friend class QWindowContainer
friend

Definition at line 361 of file qwindow.h.

Property Documentation

◆ active

QWindow::active
read

the active status of the window

Since
5.1
See also
requestActivate()

Definition at line 91 of file qwindow.h.

◆ contentOrientation

QWindow::contentOrientation
readwrite

the orientation of the window's contents

This is a hint to the window manager in case it needs to display additional content like popups, dialogs, status bars, or similar in relation to the window.

The recommended orientation is QScreen::orientation() but an application doesn't have to support all possible orientations, and thus can opt to ignore the current screen orientation.

The difference between the window and the content orientation determines how much to rotate the content by. QScreen::angleBetween(), QScreen::transformBetween(), and QScreen::mapBetween() can be used to compute the necessary transform.

The default value is Qt::PrimaryOrientation

Definition at line 94 of file qwindow.h.

Referenced by QIOSWindow::QIOSWindow().

◆ flags

QWindow::flags
readwrite

the window flags of the window

The window flags control the window's appearance in the windowing system, whether it's a dialog, popup, or a regular window, and whether it should have a title bar, etc.

The actual window flags might differ from the flags set with setFlags() if the requested flags could not be fulfilled.

See also
setFlag()

Definition at line 79 of file qwindow.h.

Referenced by QHaikuWindow::QHaikuWindow(), QWasmWindow::QWasmWindow(), QXcbWindow::create(), QCocoaWindow::createNSWindow(), QWindowsBackingStore::flush(), QGuiApplicationPrivate::processFocusWindowEvent(), redirectWheelEvent(), QXcbWindow::setNetWmStateOnUnmappedWindow(), QmlJSDebugger::QQuickWindowInspector::setShowAppOnTop(), QXcbWindow::setWindowFlags(), showSystemMenu(), and QAndroidPlatformWindow::updateSystemUiVisibility().

◆ height

◆ maximumHeight

QWindow::maximumHeight
readwrite

the maximum height of the window's geometry

Definition at line 88 of file qwindow.h.

Referenced by setMaximumWidth().

◆ maximumWidth

QWindow::maximumWidth
readwrite

the maximum width of the window's geometry

Definition at line 87 of file qwindow.h.

Referenced by setMaximumHeight().

◆ minimumHeight

QWindow::minimumHeight
readwrite

the minimum height of the window's geometry

Definition at line 85 of file qwindow.h.

Referenced by setMinimumWidth().

◆ minimumWidth

QWindow::minimumWidth
readwrite

the minimum width of the window's geometry

Definition at line 84 of file qwindow.h.

Referenced by setMinimumHeight().

◆ modality

QWindow::modality
readwrite

the modality of the window

A modal window prevents other windows from receiving input events. Qt supports two types of modality: Qt::WindowModal and Qt::ApplicationModal.

By default, this property is Qt::NonModal

See also
Qt::WindowModality

Definition at line 78 of file qwindow.h.

Referenced by QCocoaWindow::createNSWindow(), QGuiApplicationPrivate::isWindowBlocked(), QHaikuWindow::setWindowFlags(), and QCocoaWindow::shouldRefuseKeyWindowAndFirstResponder().

◆ opacity

QWindow::opacity
readwrite

The opacity of the window in the windowing system.

Since
5.1

If the windowing system supports window opacity, this can be used to fade the window in and out, or to make it semitransparent.

A value of 1.0 or above is treated as fully opaque, whereas a value of 0.0 or below is treated as fully transparent. Values inbetween represent varying levels of translucency between the two extremes.

The default value is 1.0.

Definition at line 96 of file qwindow.h.

Referenced by QIOSWindow::QIOSWindow(), and QCocoaWindow::isOpaque().

◆ title

QWindow::title
readwrite

the window's title in the windowing system

The window title might appear in the title area of the window decorations, depending on the windowing system and the window flags. It might also be used by the windowing system to identify the window in other contexts, such as in the task switcher.

See also
flags()

Definition at line 77 of file qwindow.h.

Referenced by QDockWidget::changeEvent(), setTitle(), and QCocoaWindow::setWindowFlags().

◆ visibility

QWindow::visibility
readwrite

the screen-occupation state of the window

Since
5.1

Visibility is whether the window should appear in the windowing system as normal, minimized, maximized, fullscreen or hidden.

To set the visibility to AutomaticVisibility means to give the window a default visible state, which might be fullscreen or windowed depending on the platform. When reading the visibility property you will always get the actual state, never AutomaticVisibility.

Definition at line 92 of file qwindow.h.

Referenced by QQuickWindowQmlImpl::QQuickWindowQmlImpl(), QQuickWindowAttached::visibility(), and QQuickWindowAttached::windowChange().

◆ visible

QWindow::visible
readwrite

whether the window is visible or not

This property controls the visibility of the window in the windowing system.

By default, the window is not visible, you must call setVisible(true), or show() or similar to make it visible.

Note
Hiding a window does not remove the window from the windowing system, it only hides it. On windowing systems that give full screen applications a dedicated desktop (such as macOS), hiding a full screen window will not remove that desktop, but leave it blank. Another window from the same application might be shown full screen, and will fill that desktop. Use QWindow::close to completely remove a window from the windowing system.
See also
show()

Definition at line 90 of file qwindow.h.

Referenced by QWidgetWindow::setNativeWindowVisibility(), and setVisible().

◆ width

◆ x

QWindow::x
readwrite

◆ y

QWindow::y
readwrite

the y position of the window's geometry

Definition at line 81 of file qwindow.h.

Referenced by QDirectFbWindowEGL::createDirectFBWindow(), QDirectFbWindow::createDirectFBWindow(), setX(), setY(), and QQuickWindowQmlImpl::y().


The documentation for this class was generated from the following files: