summaryrefslogtreecommitdiffstats
path: root/src/gui/kernel/qscreen.h
blob: 9442e7525bf7121a5fd9fcbe103bd01281da6b84 (plain)
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
// Copyright (C) 2016 The Qt Company Ltd.// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only#ifndef QSCREEN_H#define QSCREEN_H#include <QtGui/qtguiglobal.h>#include <QtCore/QList>#include <QtCore/QObject>#include <QtCore/QRect>#include <QtCore/QSize>#include <QtCore/QSizeF>#include <QtGui/QTransform>#include <QtCore/qnamespace.h>#include <QtCore/qnativeinterface.h> QT_BEGIN_NAMESPACE class QPlatformScreen;class QScreenPrivate;class QWindow;class QRect;class QPixmap;#ifndef QT_NO_DEBUG_STREAMclass QDebug;#endifclass Q_GUI_EXPORT QScreen :public QObject { Q_OBJECT Q_DECLARE_PRIVATE(QScreen)Q_PROPERTY(QString name READ name CONSTANT)Q_PROPERTY(QString manufacturer READ manufacturer CONSTANT)Q_PROPERTY(QString model READ model CONSTANT)Q_PROPERTY(QString serialNumber READ serialNumber CONSTANT)Q_PROPERTY(int depth READ depth CONSTANT)Q_PROPERTY(QSize size READ size NOTIFY geometryChanged)Q_PROPERTY(QSize availableSize READ availableSize NOTIFY availableGeometryChanged)Q_PROPERTY(QSize virtualSize READ virtualSize NOTIFY virtualGeometryChanged)Q_PROPERTY(QSize availableVirtualSize READ availableVirtualSize NOTIFY virtualGeometryChanged)Q_PROPERTY(QRect geometry READ geometry NOTIFY geometryChanged)Q_PROPERTY(QRect availableGeometry READ availableGeometry NOTIFY availableGeometryChanged)Q_PROPERTY(QRect virtualGeometry READ virtualGeometry NOTIFY virtualGeometryChanged)Q_PROPERTY(QRect availableVirtualGeometry READ availableVirtualGeometry NOTIFY virtualGeometryChanged)Q_PROPERTY(QSizeF physicalSize READ physicalSize NOTIFY physicalSizeChanged)Q_PROPERTY(qreal physicalDotsPerInchX READ physicalDotsPerInchX NOTIFY physicalDotsPerInchChanged)Q_PROPERTY(qreal physicalDotsPerInchY READ physicalDotsPerInchY NOTIFY physicalDotsPerInchChanged)Q_PROPERTY(qreal physicalDotsPerInch READ physicalDotsPerInch NOTIFY physicalDotsPerInchChanged)Q_PROPERTY(qreal logicalDotsPerInchX READ logicalDotsPerInchX NOTIFY logicalDotsPerInchChanged)Q_PROPERTY(qreal logicalDotsPerInchY READ logicalDotsPerInchY NOTIFY logicalDotsPerInchChanged)Q_PROPERTY(qreal logicalDotsPerInch READ logicalDotsPerInch NOTIFY logicalDotsPerInchChanged)Q_PROPERTY(qreal devicePixelRatio READ devicePixelRatio NOTIFY physicalDotsPerInchChanged)Q_PROPERTY(Qt::ScreenOrientation primaryOrientation READ primaryOrientation NOTIFY primaryOrientationChanged)Q_PROPERTY(Qt::ScreenOrientation orientation READ orientation NOTIFY orientationChanged)Q_PROPERTY(Qt::ScreenOrientation nativeOrientation READ nativeOrientation)Q_PROPERTY(qreal refreshRate READ refreshRate NOTIFY refreshRateChanged)public:~QScreen(); QPlatformScreen *handle()const; QString name()const; QString manufacturer()const; QString model()const; QString serialNumber()const;intdepth()const; QSize size()const; QRect geometry()const; QSizeF physicalSize()const; qreal physicalDotsPerInchX()const; qreal physicalDotsPerInchY()const; qreal physicalDotsPerInch()const; qreal logicalDotsPerInchX()const; qreal logicalDotsPerInchY()const; qreal logicalDotsPerInch()const; qreal devicePixelRatio()const; QSize availableSize()const; QRect availableGeometry()const; QList<QScreen *>virtualSiblings()const; QScreen *virtualSiblingAt(QPoint point); QSize virtualSize()const; QRect virtualGeometry()const; QSize availableVirtualSize()const; QRect availableVirtualGeometry()const;Qt::ScreenOrientation primaryOrientation()const;Qt::ScreenOrientation orientation()const;Qt::ScreenOrientation nativeOrientation()const;intangleBetween(Qt::ScreenOrientation a,Qt::ScreenOrientation b)const; QTransform transformBetween(Qt::ScreenOrientation a,Qt::ScreenOrientation b,const QRect &target)const; QRect mapBetween(Qt::ScreenOrientation a,Qt::ScreenOrientation b,const QRect &rect)const;boolisPortrait(Qt::ScreenOrientation orientation)const;boolisLandscape(Qt::ScreenOrientation orientation)const; QPixmap grabWindow(WId window =0,int x =0,int y =0,int w = -1,int h = -1); qreal refreshRate()const;QT_DECLARE_NATIVE_INTERFACE_ACCESSOR(QScreen) Q_SIGNALS:voidgeometryChanged(const QRect &geometry);voidavailableGeometryChanged(const QRect &geometry);voidphysicalSizeChanged(const QSizeF &size);voidphysicalDotsPerInchChanged(qreal dpi);voidlogicalDotsPerInchChanged(qreal dpi);voidvirtualGeometryChanged(const QRect &rect);voidprimaryOrientationChanged(Qt::ScreenOrientation orientation);voidorientationChanged(Qt::ScreenOrientation orientation);voidrefreshRateChanged(qreal refreshRate);private:explicitQScreen(QPlatformScreen *screen);Q_DISABLE_COPY(QScreen)friend class QGuiApplicationPrivate;friend class QPlatformIntegration;friend class QPlatformScreen;friend class QHighDpiScaling;friend class QWindowSystemInterface;};#ifndef QT_NO_DEBUG_STREAM Q_GUI_EXPORT QDebug operator<<(QDebug,const QScreen *);#endif QT_END_NAMESPACE #include <QtGui/qscreen_platform.h>#endif// QSCREEN_H
close