![]() |
Qt 6.x
The Qt SDK
|
#include <qdirectfbwindow.h>
Public Member Functions | |
QDirectFbWindow (QWindow *tlw, QDirectFbInput *inputhandler) | |
~QDirectFbWindow () override | |
void | setGeometry (const QRect &rect) override |
This function is called by Qt whenever a window is moved or resized using the QWindow API. | |
void | setOpacity (qreal level) override |
Reimplement to be able to let Qt set the opacity level of a window. | |
void | setVisible (bool visible) override |
Reimplemented in subclasses to show the surface if visible is true , and hide it if visible is false . | |
void | setWindowFlags (Qt::WindowFlags flags) override |
Requests setting the window flags of this surface to flags. | |
bool | setKeyboardGrabEnabled (bool grab) override |
bool | setMouseGrabEnabled (bool grab) override |
void | raise () override |
Reimplement to be able to let Qt raise windows to the top of the desktop. | |
void | lower () override |
Reimplement to be able to let Qt lower windows to the bottom of the desktop. | |
WId | winId () const override |
Reimplement in subclasses to return a handle to the native window. | |
virtual void | createDirectFBWindow () |
IDirectFBWindow * | dfbWindow () const |
IDirectFBSurface * | dfbSurface () |
![]() | |
QPlatformWindow (QWindow *window) | |
Constructs a platform window with the given top level window. | |
~QPlatformWindow () override | |
Virtual destructor does not delete its top level window. | |
virtual void | initialize () |
Called as part of QWindow::create(), after constructing the window. | |
QWindow * | window () const |
Returns the window which belongs to the QPlatformWindow. | |
QPlatformWindow * | parent () const |
Returns the parent platform window (or \nullptr if orphan). | |
QPlatformScreen * | screen () const override |
Returns the platform screen handle corresponding to this platform window, or null if the window is not associated with a screen. | |
virtual QSurfaceFormat | format () const override |
Returns the actual surface format of the window. | |
virtual void | setGeometry (const QRect &rect) |
This function is called by Qt whenever a window is moved or resized using the QWindow API. | |
virtual QRect | geometry () const |
Returns the current geometry of a window. | |
virtual QRect | normalGeometry () const |
Returns the geometry of a window in 'normal' state (neither maximized, fullscreen nor minimized) for saving geometries to application settings. | |
virtual QMargins | frameMargins () const |
virtual QMargins | safeAreaMargins () const |
The safe area margins of a window represent the area that is safe to place content within, without intersecting areas of the screen where system UI is placed, or where a screen bezel may cover the content. | |
virtual void | setVisible (bool visible) |
Reimplemented in subclasses to show the surface if visible is true , and hide it if visible is false . | |
virtual void | setWindowFlags (Qt::WindowFlags flags) |
Requests setting the window flags of this surface to flags. | |
virtual void | setWindowState (Qt::WindowStates state) |
Requests setting the window state of this surface to type. | |
virtual WId | winId () const |
Reimplement in subclasses to return a handle to the native window. | |
virtual void | setParent (const QPlatformWindow *window) |
This function is called to enable native child window in QPA. | |
virtual void | setWindowTitle (const QString &title) |
Reimplement to set the window title to title. | |
virtual void | setWindowFilePath (const QString &title) |
Reimplement to set the window file path to filePath. | |
virtual void | setWindowIcon (const QIcon &icon) |
Reimplement to set the window icon to icon. | |
virtual bool | close () |
Reimplement to let the platform handle non-spontaneous window close. | |
virtual void | raise () |
Reimplement to be able to let Qt raise windows to the top of the desktop. | |
virtual void | lower () |
Reimplement to be able to let Qt lower windows to the bottom of the desktop. | |
virtual bool | isExposed () const |
Returns if this window is exposed in the windowing system. | |
virtual bool | isActive () const |
Returns true if the window should appear active from a style perspective. | |
virtual bool | isAncestorOf (const QPlatformWindow *child) const |
Returns true if the window is an ancestor of the given child. | |
virtual bool | isEmbedded () const |
Returns true if the window is a child of a non-Qt window. | |
virtual bool | isForeignWindow () const |
virtual QPoint | mapToGlobal (const QPoint &pos) const |
Translates the window coordinate pos to global screen coordinates using native methods. | |
QPointF | mapToGlobalF (const QPointF &pos) const |
virtual QPoint | mapFromGlobal (const QPoint &pos) const |
Translates the global screen coordinate pos to window coordinates using native methods. | |
QPointF | mapFromGlobalF (const QPointF &pos) const |
virtual void | propagateSizeHints () |
Reimplement to propagate the size hints of the QWindow. | |
virtual void | setOpacity (qreal level) |
Reimplement to be able to let Qt set the opacity level of a window. | |
virtual void | setMask (const QRegion ®ion) |
Reimplement to be able to let Qt set the mask of a window. | |
virtual void | requestActivateWindow () |
Reimplement to let Qt be able to request activation/focus for a window. | |
virtual void | handleContentOrientationChange (Qt::ScreenOrientation orientation) |
Handle changes to the orientation of the platform window's contents. | |
virtual qreal | devicePixelRatio () const |
Reimplement this function in subclass to return the device pixel ratio for the window. | |
virtual bool | setKeyboardGrabEnabled (bool grab) |
virtual bool | setMouseGrabEnabled (bool grab) |
virtual bool | setWindowModified (bool modified) |
Reimplement to be able to let Qt indicate that the window has been modified. | |
virtual bool | windowEvent (QEvent *event) |
Reimplement this method to be able to do any platform specific event handling. | |
virtual bool | startSystemResize (Qt::Edges edges) |
Reimplement this method to start a system resize operation if the system supports it and return true to indicate success. | |
virtual bool | startSystemMove () |
Reimplement this method to start a system move operation if the system supports it and return true to indicate success. | |
virtual void | setFrameStrutEventsEnabled (bool enabled) |
Reimplement this method to set whether frame strut events should be sent to enabled. | |
virtual bool | frameStrutEventsEnabled () const |
Reimplement this method to return whether frame strut events are enabled. | |
virtual void | setAlertState (bool enabled) |
Reimplement this method to set whether the window demands attention (for example, by flashing the taskbar icon) depending on enabled. | |
virtual bool | isAlertState () const |
Reimplement this method return whether the window is in an alert state. | |
virtual void | invalidateSurface () |
Invalidates the window's surface by releasing its surface buffers. | |
virtual void | requestUpdate () |
Requests an QEvent::UpdateRequest event. | |
bool | hasPendingUpdateRequest () const |
Returns true if the window has a pending update request. | |
virtual void | deliverUpdateRequest () |
Delivers an QEvent::UpdateRequest event to the window. | |
QSize | windowMinimumSize () const |
Returns the QWindow minimum size. | |
QSize | windowMaximumSize () const |
Returns the QWindow maximum size. | |
QSize | windowBaseSize () const |
Returns the QWindow base size. | |
QSize | windowSizeIncrement () const |
Returns the QWindow size increment. | |
QRect | windowGeometry () const |
Returns the QWindow geometry. | |
QRect | windowFrameGeometry () const |
Returns the QWindow frame geometry. | |
QRectF | windowClosestAcceptableGeometry (const QRectF &nativeRect) const |
![]() | |
virtual | ~QPlatformSurface () |
virtual QSurfaceFormat | format () const =0 |
QSurface * | surface () const |
virtual QPlatformScreen * | screen () const =0 |
Protected Attributes | |
QDirectFBPointer< IDirectFBSurface > | m_dfbSurface |
QDirectFBPointer< IDirectFBWindow > | m_dfbWindow |
QDirectFbInput * | m_inputHandler |
![]() | |
QScopedPointer< QPlatformWindowPrivate > | d_ptr |
Additional Inherited Members | |
![]() | |
static QRect | initialGeometry (const QWindow *w, const QRect &initialGeometry, int defaultWidth, int defaultHeight, const QScreen **resultingScreenReturn=nullptr) |
Helper function to get initial geometry on windowing systems which do not do smart positioning and also do not provide a means of centering a transient window w.r.t. | |
static QRectF | closestAcceptableGeometry (const QWindow *w, const QRectF &nativeRect) |
Returns the closest acceptable geometry for a given geometry before a resize/move event for platforms that support it, for example to implement heightForWidth(). | |
![]() | |
static bool | isRasterSurface (QSurface *surface) |
![]() | |
QPlatformScreen * | screenForGeometry (const QRect &newGeometry) const |
Helper function for finding the new screen for newGeometry in response to a geometry changed event. | |
![]() | |
static QString | formatWindowTitle (const QString &title, const QString &separator) |
Call this method to put together a window title composed of title separator the application display name. | |
static QSize | constrainWindowSize (const QSize &size) |
Returns a size with both dimensions bounded to [0, QWINDOWSIZE_MAX]. | |
Definition at line 14 of file qdirectfbwindow.h.
QT_BEGIN_NAMESPACE QDirectFbWindow::QDirectFbWindow | ( | QWindow * | tlw, |
QDirectFbInput * | inputhandler | ||
) |
Definition at line 15 of file qdirectfbwindow.cpp.
|
override |
Definition at line 67 of file qdirectfbwindow.cpp.
References QScopedPointer< T, Cleanup >::data(), m_dfbWindow, m_inputHandler, and QDirectFbInput::removeWindow().
|
virtual |
Reimplemented in QDirectFbWindowEGL.
Definition at line 20 of file qdirectfbwindow.cpp.
References QDirectFbInput::addWindow(), QScopedPointer< T, Cleanup >::data(), Qt::Desktop, QDirectFbScreen::dfbLayer(), m_dfbWindow, m_inputHandler, QDirectFBPointer< T >::outPtr(), Q_ASSERT, qMax(), QPlatformWindow::screen(), QWindow::setGeometry(), toDfbScreen(), QPlatformWindow::window(), QWindow::x, and QWindow::y.
Referenced by QDirectFbWindowEGL::createDirectFBWindow(), and QDirectFbIntegration::createPlatformWindow().
IDirectFBSurface * QDirectFbWindow::dfbSurface | ( | ) |
Definition at line 171 of file qdirectfbwindow.cpp.
References QScopedPointer< T, Cleanup >::data(), m_dfbSurface, m_dfbWindow, QDirectFBPointer< T >::outPtr(), and QDFB_PRETTY.
Referenced by QDirectFbWindowEGL::eglSurface().
IDirectFBWindow * QDirectFbWindow::dfbWindow | ( | ) | const |
Definition at line 166 of file qdirectfbwindow.cpp.
References QScopedPointer< T, Cleanup >::data(), and m_dfbWindow.
|
overridevirtual |
Reimplement to be able to let Qt lower windows to the bottom of the desktop.
Reimplemented from QPlatformWindow.
Definition at line 129 of file qdirectfbwindow.cpp.
References QScopedPointer< T, Cleanup >::data(), Qt::Desktop, m_dfbWindow, and QPlatformWindow::window().
|
overridevirtual |
Reimplement to be able to let Qt raise windows to the top of the desktop.
Reimplemented from QPlatformWindow.
Definition at line 123 of file qdirectfbwindow.cpp.
References QScopedPointer< T, Cleanup >::data(), Qt::Desktop, m_dfbWindow, and QPlatformWindow::window().
This function is called by Qt whenever a window is moved or resized using the QWindow API.
Unless you also override QPlatformWindow::geometry(), you need to call the baseclass implementation of this function in any override of QPlatformWindow::setGeometry(), as QWindow::geometry() is expected to report back the set geometry until a confirmation (or rejection) of the new geometry comes back from the window manager and is reported via QWindowSystemInterface::handleGeometryChange().
Window move/resizes can also be triggered spontaneously by the window manager, or as a response to an earlier requested move/resize via the Qt APIs. There is no need to call this function from the window manager callback, instead call QWindowSystemInterface::handleGeometryChange().
The position(x, y) part of the rect might be inclusive or exclusive of the window frame as returned by frameMargins(). You can detect this in the plugin by checking qt_window_private(window())->positionPolicy.
Reimplemented from QPlatformWindow.
Definition at line 73 of file qdirectfbwindow.cpp.
References QScopedPointer< T, Cleanup >::data(), m_dfbWindow, rect, and QPlatformWindow::setGeometry().
|
overridevirtual |
Reimplemented from QPlatformWindow.
Definition at line 142 of file qdirectfbwindow.cpp.
References QScopedPointer< T, Cleanup >::data(), and m_dfbWindow.
|
overridevirtual |
Reimplemented from QPlatformWindow.
Definition at line 154 of file qdirectfbwindow.cpp.
References QScopedPointer< T, Cleanup >::data(), and m_dfbWindow.
Reimplement to be able to let Qt set the opacity level of a window.
Reimplemented from QPlatformWindow.
Definition at line 80 of file qdirectfbwindow.cpp.
References QScopedPointer< T, Cleanup >::data(), and m_dfbWindow.
|
overridevirtual |
Reimplemented in subclasses to show the surface if visible is true
, and hide it if visible is false
.
The default implementation sends a synchronous expose event.
Reimplemented from QPlatformWindow.
Definition at line 86 of file qdirectfbwindow.cpp.
References QScopedPointer< T, Cleanup >::data(), Qt::Desktop, QDirectFbConvenience::dfbInterface(), QPlatformWindow::geometry(), m_dfbWindow, QDirectFBPointer< T >::outPtr(), QPlatformWindow::setVisible(), QPlatformWindow::window(), QRect::x(), and QRect::y().
|
overridevirtual |
Requests setting the window flags of this surface to flags.
Reimplemented from QPlatformWindow.
Definition at line 107 of file qdirectfbwindow.cpp.
References QScopedPointer< T, Cleanup >::data(), m_dfbWindow, Qt::ToolTip, Qt::WindowStaysOnTopHint, and Qt::WindowType_Mask.
|
overridevirtual |
Reimplement in subclasses to return a handle to the native window.
Reimplemented from QPlatformWindow.
Definition at line 135 of file qdirectfbwindow.cpp.
References QScopedPointer< T, Cleanup >::data(), and m_dfbWindow.
|
protected |
Definition at line 39 of file qdirectfbwindow.h.
Referenced by dfbSurface().
|
protected |
Definition at line 40 of file qdirectfbwindow.h.
Referenced by ~QDirectFbWindow(), QDirectFbWindowEGL::createDirectFBWindow(), createDirectFBWindow(), dfbSurface(), dfbWindow(), lower(), raise(), setGeometry(), setKeyboardGrabEnabled(), setMouseGrabEnabled(), setOpacity(), setVisible(), setWindowFlags(), and winId().
|
protected |
Definition at line 41 of file qdirectfbwindow.h.
Referenced by ~QDirectFbWindow(), QDirectFbWindowEGL::createDirectFBWindow(), and createDirectFBWindow().