6#include <QtCore/QObject>
7#include <QtCore/QVector>
9#include <QtGui/QScreen>
12#include <istd/IChangeable.h>
15#include <imtgui/IMonitorInfoProvider.h>
22class CMonitorInfoProvider:
public QObject,
public IMonitorInfoProvider
29 MCE_PRIMARY_SCREEN_CHANGED = 0,
34 MCE_PHYSICAL_RESOLUTION,
39 CMonitorInfoProvider();
42 virtual int GetMonitorsCount()
const override;
43 virtual QSize GetPhysicalSize(
int index)
const override;
44 virtual double GetPhysicalResolutionX(
int index)
const override;
45 virtual double GetPhysicalResolutionY(
int index)
const override;
46 virtual QRect GetGeometry(
int index)
const override;
47 virtual double GetScaling(
int index)
const override;
50 void UpdateMonitorsInfo();
56 void PrimaryScreenChanged(QScreen* screen);
57 void ScreenAdded(QScreen* screen);
58 void ScreenRemoved(QScreen* screen);
60 void LogicalDotsPerInchChanged(qreal dpi);
61 void OrientationChanged(Qt::ScreenOrientation orientation);
73 QList<MonitorInfo> m_monitors;
76 QSize RetrievePhysicalSize(
const QString& monitorId);