![]() |
Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
|
#include <qohosplatformwindow.h>
Public Types | |
| enum class | DecorationPreset { Standard , Frameless } |
Public Member Functions | |
| QOhosPlatformWindow (QWindow *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 | setCursor (const QCursor &cursor) |
| void | setWindowTitle (const QString &title) override |
| Reimplement to set the window title to title. | |
| void | setParent (const QPlatformWindow *newParent) override |
| This function is called to enable native child window in QPA. | |
| QPlatformScreen * | screen () const override |
| void | setWindowState (Qt::WindowStates state) override |
| Requests setting the window state of this surface to type. | |
| void | setWindowFlags (Qt::WindowFlags flags) override |
| Requests setting the window flags of this surface to flags. | |
| Qt::WindowFlags | windowFlags () const |
| void | propagateSizeHints () override |
| Reimplement to propagate the size hints of the QWindow. | |
| bool | isRaster () const |
| bool | isExposed () const final |
| Returns if this window is exposed in the windowing system. | |
| void | setGeometry (const QRect &rect) override |
| This function is called by Qt whenever a window is moved or resized using the QWindow API. | |
| bool | shouldDisplayAsOhosWindow () const |
| QtOhos::InternalWindowId | internalWindowId () const |
| std::optional< double > | windowId () const override |
| virtual QOhosSurface * | ownedSurfaceOrNull () const |
| virtual QOhosView * | ownedViewOrNull () const |
| DecorationPreset | decorationPreset () const |
| QMargins | frameMargins () const override |
| QWindow * | validSubWindowOfTagValueOrNull () const |
| bool | mainWindowTagValueOrFalse () const |
| bool | floatWindowTagValueOrFalse () const |
| void | initialize () override |
| Called as part of QWindow::create(), after constructing the window. | |
| Qt::WindowStates | windowStates () const |
| void | requestActivateWindow () override |
| Reimplement to let Qt be able to request activation/focus for a window. | |
| void | handleDpiChange () |
| bool | shouldShowWindowWithoutActivating () const |
| QPixmap | makeSnapshot () const |
| bool | setMouseGrabEnabled (bool grab) override |
| bool | setKeyboardGrabEnabled (bool grab) override |
| QRect | lastRequestedWindowFrameGeometry () const |
| Public Member Functions inherited from QPlatformWindow | |
| QPlatformWindow (QWindow *window) | |
| Constructs a platform window with the given top level window. | |
| ~QPlatformWindow () override | |
| Virtual destructor does not delete its top level 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 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 | 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 WId | winId () const |
| Reimplement in subclasses to return a handle to the native window. | |
| virtual QString | windowTitle () const |
| Reimplement to return the actual window title used in the underlying windowing system unless the title set for the QWindow which belongs to this QPlatformWindow (i.e. | |
| 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 | 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 | 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 | 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 | setWindowModified (bool modified) |
| Reimplement to be able to let Qt indicate that the window has been modified. | |
| 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. | |
| virtual bool | allowsIndependentThreadedRendering () const |
| Returns whether applications can render new frames from any thread without co-ordination with the main thread. | |
| 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 |
| Public Member Functions inherited from QPlatformSurface | |
| virtual | ~QPlatformSurface () |
| QSurface * | surface () const |
Static Public Member Functions | |
| static QOhosPlatformWindow * | fromQWindow (QWindow *window) |
| static QOhosPlatformWindow * | fromQWindowOrNull (QWindow *window) |
| static void | tagWindowOrWidgetAsSubWindowOf (QObject *windowOrWidgetToTag, QWindow *targetMainWindow) |
| static void | tagWindowOrWidgetAsMainWindow (QObject *windowOrWidgetToTag, bool forceMainWindow) |
| static void | tagWindowOrWidgetAsFloatWindow (QObject *windowOrWidgetToTag, bool showAsFloatWindow) |
| static QWindow * | getWindowOrWidgetAsSubWindowOfTagValue (QObject *windowOrWidget) |
| static Qt::WindowFlags | platformWindowFlagsForQWindow (QWindow *window) |
| static void | closeAllActivePopups () |
| template<typename T, const QOhosPropertyDescriptor< T > * propertyPtr> | |
| static void | setWindowOrWidgetProperty (QObject *windowOrWidget, T propertyValue) |
| template<typename T, const QOhosPropertyDescriptor< T > * propertyPtr> | |
| static std::optional< T > | tryGetWindowOrWidgetProperty (QObject *windowOrWidget) |
| static std::shared_ptr< void > | setSurfaceConsumer (QWindow *targetWindow, QObject *surfaceConsumerContext, std::function< void(std::optional< void * >)> surfaceConsumer) |
| static bool | isWindowBeingClosedOrDestroyed (QWindow *window) |
| Static Public Member Functions inherited from QPlatformWindow | |
| 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(). | |
Protected Member Functions | |
| QOhosPlatformScreen * | platformScreen () const |
| bool | canBeShownOnScreen () const |
| void | setWindowStateFromOhos (Qt::WindowStates state) |
| void | setWindowMarginsFromOhos (const QMargins &margins) |
| void | setExposedFromOhos (bool exposed) |
| void | setDisplayIdFromOhos (std::optional< QOhosDisplayInfo::JsDisplayId > displayId) |
| void | setWindowGeometryFromOhos (const QRect &nativeWindowDrawGeometry) |
| void | notifyWindowDestroyedFromOhos () |
| bool | checkWindowAcceptsFocus () const |
| bool | checkWindowAcceptsInput () const |
| void | notifyInputSystemsWindowActiveStatusChanged (bool active) |
| QOhosPropertiesProvider | propertiesProvider () |
| virtual void | onWindowFlagsChanged (Qt::WindowFlags previousWindowFlags, Qt::WindowFlags currentWindowFlags) |
| virtual void | onWindowStateChanged (Qt::WindowStates oldWindowState, Qt::WindowStates currentWindowState) |
| bool | windowEvent (QEvent *event) override |
| Reimplement this method to be able to do any platform specific event handling. | |
| Protected Member Functions inherited from QPlatformWindow | |
| QPlatformScreen * | screenForGeometry (const QRect &newGeometry) const |
| Helper function for finding the new screen for newGeometry in response to a geometry changed event. | |
Protected Attributes | |
| Qt::WindowFlags | m_windowFlags |
| Qt::WindowStates | m_windowState |
| std::optional< Qt::WindowStates > | m_lastWindowState |
| QtOhos::InternalWindowId | m_windowId = QtOhos::InternalWindowId::invalidWindowId() |
| QRect | m_oldGeometry |
| std::unique_ptr< QMargins > | m_optFrameMargins |
| std::optional< QCursor > | m_cursor |
| Protected Attributes inherited from QPlatformWindow | |
| QScopedPointer< QPlatformWindowPrivate > | d_ptr |
Additional Inherited Members | |
| Static Protected Member Functions inherited from QPlatformWindow | |
| 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]. | |
| static bool | isSubWindow (const QWindow *window) |
| Checks whether the window has the Qt::SubWindow flag. | |
Definition at line 27 of file qohosplatformwindow.h.
|
strong |
| Enumerator | |
|---|---|
| Standard | |
| Frameless | |
Definition at line 30 of file qohosplatformwindow.h.
|
explicit |
Definition at line 70 of file qohosplatformwindow.cpp.
References QOhosPlatformWindow().
Referenced by QOhosPlatformWindow().
|
protected |
Definition at line 98 of file qohosplatformwindow.cpp.
Referenced by setVisible().
|
protected |
Definition at line 658 of file qohosplatformwindow.cpp.
|
protected |
Definition at line 664 of file qohosplatformwindow.cpp.
|
static |
Definition at line 380 of file qohosplatformwindow.cpp.
| QOhosPlatformWindow::DecorationPreset QOhosPlatformWindow::decorationPreset | ( | ) | const |
Definition at line 260 of file qohosplatformwindow.cpp.
References Frameless, and Standard.
Referenced by frameMargins().
| bool QOhosPlatformWindow::floatWindowTagValueOrFalse | ( | ) | const |
Definition at line 557 of file qohosplatformwindow.cpp.
Referenced by QT_BEGIN_NAMESPACE::determineViewTypeAndLogicalParent().
|
overridevirtual |
Reimplemented from QPlatformWindow.
Definition at line 283 of file qohosplatformwindow.cpp.
References decorationPreset(), platformScreen(), and Standard.
|
static |
Definition at line 320 of file qohosplatformwindow.cpp.
|
static |
Definition at line 312 of file qohosplatformwindow.cpp.
|
static |
Definition at line 369 of file qohosplatformwindow.cpp.
| void QOhosPlatformWindow::handleDpiChange | ( | ) |
Definition at line 452 of file qohosplatformwindow.cpp.
References QOhosView::forceGeometryUpdate(), and ownedViewOrNull().
|
overridevirtual |
Called as part of QWindow::create(), after constructing the window.
Platforms should prefer to do initialization here instead of in the constructor, as the platform window object will be fully constructed, and associated to the corresponding QWindow, allowing synchronous event delivery.
Reimplemented from QPlatformWindow.
Definition at line 394 of file qohosplatformwindow.cpp.
References QT_BEGIN_NAMESPACE::defaultWindowHeight, and QT_BEGIN_NAMESPACE::defaultWindowWidth.
Referenced by QOhosFloatingWindow::initialize().
| QtOhos::InternalWindowId QOhosPlatformWindow::internalWindowId | ( | ) | const |
Definition at line 236 of file qohosplatformwindow.cpp.
|
finalvirtual |
Returns if this window is exposed in the windowing system.
An exposeEvent() is sent every time this value changes.
Reimplemented from QPlatformWindow.
Definition at line 231 of file qohosplatformwindow.cpp.
Referenced by setWindowGeometryFromOhos().
|
inline |
Definition at line 85 of file qohosplatformwindow.h.
|
static |
Definition at line 688 of file qohosplatformwindow.cpp.
| QRect QOhosPlatformWindow::lastRequestedWindowFrameGeometry | ( | ) | const |
Definition at line 214 of file qohosplatformwindow.cpp.
| bool QOhosPlatformWindow::mainWindowTagValueOrFalse | ( | ) | const |
Definition at line 358 of file qohosplatformwindow.cpp.
Referenced by QT_BEGIN_NAMESPACE::determineViewTypeAndLogicalParent().
| QPixmap QOhosPlatformWindow::makeSnapshot | ( | ) | const |
Definition at line 562 of file qohosplatformwindow.cpp.
References ownedViewOrNull().
|
protected |
Definition at line 606 of file qohosplatformwindow.cpp.
References QOhosPlatformIntegration::instance().
|
protected |
Definition at line 600 of file qohosplatformwindow.cpp.
References QPainter::window().
|
protectedvirtual |
Reimplemented in QOhosFloatingWindow.
Definition at line 619 of file qohosplatformwindow.cpp.
|
protectedvirtual |
Reimplemented in QOhosFloatingWindow.
Definition at line 623 of file qohosplatformwindow.cpp.
|
virtual |
Reimplemented in QOhosFloatingWindow.
Definition at line 307 of file qohosplatformwindow.cpp.
|
virtual |
Reimplemented in QOhosFloatingWindow.
Definition at line 389 of file qohosplatformwindow.cpp.
Referenced by handleDpiChange(), makeSnapshot(), propagateSizeHints(), requestActivateWindow(), setCursor(), setParent(), setWindowTitle(), and windowEvent().
|
protected |
Definition at line 209 of file qohosplatformwindow.cpp.
Referenced by frameMargins().
|
static |
Definition at line 374 of file qohosplatformwindow.cpp.
|
overridevirtual |
Reimplement to propagate the size hints of the QWindow.
The size hints include QWindow::minimumSize(), QWindow::maximumSize(), QWindow::sizeIncrement(), and QWindow::baseSize().
Reimplemented from QPlatformWindow.
Definition at line 219 of file qohosplatformwindow.cpp.
References ownedViewOrNull().
|
protected |
Definition at line 627 of file qohosplatformwindow.cpp.
|
overridevirtual |
Reimplement to let Qt be able to request activation/focus for a window.
Some window systems will probably not have callbacks for this functionality, and then calling QWindowSystemInterface::handleFocusWindowChanged(QWindow *w) would be sufficient.
If the window system has some event handling/callbacks then call QWindowSystemInterface::handleFocusWindowChanged(QWindow *w) when the window system gives the notification.
Default implementation calls QWindowSystem::handleFocusWindowChanged(QWindow *w)
Reimplemented from QPlatformWindow.
Definition at line 421 of file qohosplatformwindow.cpp.
References ownedViewOrNull(), and QOhosView::requestActivate().
Referenced by QOhosFloatingWindow::requestActivateWindow().
|
overridevirtual |
Implements QPlatformSurface.
Definition at line 147 of file qohosplatformwindow.cpp.
References QOhosPlatformIntegration::instance(), QOhosScreenManager::platformScreenForDisplayIdOrNull(), and QOhosPlatformIntegration::screenManager().
Definition at line 113 of file qohosplatformwindow.cpp.
References ownedViewOrNull().
|
protected |
Definition at line 567 of file qohosplatformwindow.cpp.
|
protected |
Definition at line 446 of file qohosplatformwindow.cpp.
Referenced by QOhosForeignWindow::setVisible().
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 79 of file qohosplatformwindow.cpp.
|
overridevirtual |
Reimplemented from QPlatformWindow.
Definition at line 645 of file qohosplatformwindow.cpp.
References QOhosPlatformIntegration::inputMethodEventHandler(), QOhosPlatformIntegration::instance(), and QOhosInputMethodEventHandler::stopAnyKeyboardGrab().
|
overridevirtual |
Reimplemented from QPlatformWindow.
Definition at line 632 of file qohosplatformwindow.cpp.
References QOhosPlatformIntegration::inputMethodEventHandler(), QOhosPlatformIntegration::instance(), and QOhosInputMethodEventHandler::stopAnyMouseGrab().
|
overridevirtual |
This function is called to enable native child window in QPA.
It is common not to support this feature in Window systems, but can be faked. When this function is called all geometry of this platform window will be relative to the parent.
Reimplemented from QPlatformWindow.
Definition at line 129 of file qohosplatformwindow.cpp.
References ownedViewOrNull(), QOhosView::setParentOrReparent(), and QOhosView::tryDetachFromEmbeddedParent().
|
static |
Definition at line 470 of file qohosplatformwindow.cpp.
|
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 107 of file qohosplatformwindow.cpp.
References canBeShownOnScreen().
|
overridevirtual |
Requests setting the window flags of this surface to flags.
Reimplemented from QPlatformWindow.
Definition at line 174 of file qohosplatformwindow.cpp.
|
protected |
Definition at line 591 of file qohosplatformwindow.cpp.
References isExposed().
Definition at line 431 of file qohosplatformwindow.cpp.
|
static |
Definition at line 164 of file qohosplatformwindow.h.
|
overridevirtual |
Requests setting the window state of this surface to type.
Qt::WindowActive can be ignored.
Reimplemented from QPlatformWindow.
Definition at line 165 of file qohosplatformwindow.cpp.
|
protected |
Definition at line 412 of file qohosplatformwindow.cpp.
Reimplement to set the window title to title.
The implementation might want to append the application display name to the window title, like Windows and Linux do.
\l QPlatformWindow::windowTitle() can be used to retrieve the actual window title.
Reimplemented from QPlatformWindow.
Definition at line 122 of file qohosplatformwindow.cpp.
References ownedViewOrNull().
| bool QOhosPlatformWindow::shouldDisplayAsOhosWindow | ( | ) | const |
Definition at line 255 of file qohosplatformwindow.cpp.
| bool QOhosPlatformWindow::shouldShowWindowWithoutActivating | ( | ) | const |
Definition at line 363 of file qohosplatformwindow.cpp.
|
static |
Definition at line 338 of file qohosplatformwindow.cpp.
|
static |
Definition at line 333 of file qohosplatformwindow.cpp.
|
static |
Definition at line 328 of file qohosplatformwindow.cpp.
|
static |
Definition at line 180 of file qohosplatformwindow.h.
| QWindow * QOhosPlatformWindow::validSubWindowOfTagValueOrNull | ( | ) | const |
Definition at line 344 of file qohosplatformwindow.cpp.
|
overrideprotectedvirtual |
Reimplement this method to be able to do any platform specific event handling.
All non-synthetic events for window() are passed to this function before being sent to QWindow::event().
Return true if the event should not be passed on to the QWindow.
Subclasses should always call the base class implementation.
Reimplemented from QPlatformWindow.
Definition at line 670 of file qohosplatformwindow.cpp.
References QOhosView::handlePaletteChange(), and ownedViewOrNull().
| Qt::WindowFlags QOhosPlatformWindow::windowFlags | ( | ) | const |
Definition at line 204 of file qohosplatformwindow.cpp.
|
override |
Definition at line 241 of file qohosplatformwindow.cpp.
References QWindowProxyRegistry::instance().
| Qt::WindowStates QOhosPlatformWindow::windowStates | ( | ) | const |
Definition at line 407 of file qohosplatformwindow.cpp.
|
static |
Definition at line 58 of file qohosplatformwindow.h.
|
protected |
Definition at line 151 of file qohosplatformwindow.h.
|
protected |
Definition at line 146 of file qohosplatformwindow.h.
|
protected |
Definition at line 149 of file qohosplatformwindow.h.
|
protected |
Definition at line 150 of file qohosplatformwindow.h.
|
protected |
Definition at line 144 of file qohosplatformwindow.h.
|
protected |
Definition at line 148 of file qohosplatformwindow.h.
|
protected |
Definition at line 145 of file qohosplatformwindow.h.
|
static |
Definition at line 57 of file qohosplatformwindow.h.
|
static |
Definition at line 62 of file qohosplatformwindow.h.
|
static |
Definition at line 56 of file qohosplatformwindow.h.
|
static |
Definition at line 61 of file qohosplatformwindow.h.
|
static |
Definition at line 66 of file qohosplatformwindow.h.
|
static |
Definition at line 67 of file qohosplatformwindow.h.
|
static |
Definition at line 59 of file qohosplatformwindow.h.
|
static |
Definition at line 64 of file qohosplatformwindow.h.
|
static |
Definition at line 65 of file qohosplatformwindow.h.
|
static |
Definition at line 63 of file qohosplatformwindow.h.
|
static |
Definition at line 60 of file qohosplatformwindow.h.
|
static |
Definition at line 68 of file qohosplatformwindow.h.