5#ifndef QSCREEN_PLATFORM_H
6#define QSCREEN_PLATFORM_H
17#include <QtGui/qtguiglobal.h>
19#include <QtCore/qnativeinterface.h>
20#include <QtGui/qguiapplication.h>
22#if defined(Q_OS_WIN32)
23#include <QtGui/qwindowdefs_win.h>
30#if defined(Q_OS_MACOS)
31Q_FORWARD_DECLARE_OBJC_CLASS(NSScreen);
36namespace QNativeInterface {
38#if defined(Q_OS_WIN32) || defined(Q_QDOC)
39struct Q_GUI_EXPORT QWindowsScreen
41 QT_DECLARE_NATIVE_INTERFACE(QWindowsScreen, 1, QScreen)
42 virtual HMONITOR handle()
const = 0;
46#if QT_CONFIG(wayland) || defined(Q_QDOC)
47struct Q_GUI_EXPORT QWaylandScreen
49 QT_DECLARE_NATIVE_INTERFACE(QWaylandScreen, 1, QScreen)
50 virtual wl_output *output()
const = 0;
54#if defined(Q_OS_ANDROID) || defined(Q_QDOC)
55struct Q_GUI_EXPORT QAndroidScreen
57 QT_DECLARE_NATIVE_INTERFACE(QAndroidScreen, 1, QScreen)
58 virtual int displayId()
const = 0;
62#if defined(Q_OS_MACOS) || defined(Q_QDOC)
63struct Q_GUI_EXPORT QCocoaScreen
65 QT_DECLARE_NATIVE_INTERFACE(QCocoaScreen, 1, QScreen)
66 virtual NSScreen *nativeScreen()
const = 0;