4#ifndef QSCREEN_PLATFORM_H
5#define QSCREEN_PLATFORM_H
16#include <QtGui/qtguiglobal.h>
18#include <QtCore/qnativeinterface.h>
19#include <QtGui/qguiapplication.h>
21#if defined(Q_OS_WIN32)
22#include <QtGui/qwindowdefs_win.h>
29#if defined(Q_OS_MACOS)
30Q_FORWARD_DECLARE_OBJC_CLASS(NSScreen);
35namespace QNativeInterface {
37#if defined(Q_OS_WIN32) || defined(Q_QDOC)
38struct Q_GUI_EXPORT QWindowsScreen
40 QT_DECLARE_NATIVE_INTERFACE(QWindowsScreen, 1, QScreen)
41 virtual HMONITOR handle()
const = 0;
45#if QT_CONFIG(wayland) || defined(Q_QDOC)
46struct Q_GUI_EXPORT QWaylandScreen
48 QT_DECLARE_NATIVE_INTERFACE(QWaylandScreen, 1, QScreen)
49 virtual wl_output *output()
const = 0;
53#if defined(Q_OS_ANDROID) || defined(Q_QDOC)
54struct Q_GUI_EXPORT QAndroidScreen
56 QT_DECLARE_NATIVE_INTERFACE(QAndroidScreen, 1, QScreen)
57 virtual int displayId()
const = 0;
61#if defined(Q_OS_MACOS) || defined(Q_QDOC)
62struct Q_GUI_EXPORT QCocoaScreen
64 QT_DECLARE_NATIVE_INTERFACE(QCocoaScreen, 1, QScreen)
65 virtual NSScreen *nativeScreen()
const = 0;