Changeset View
Changeset View
Standalone View
Standalone View
kcm/kcm.h
Show All 18 Lines | |||||
19 | #include <KQuickAddons/ConfigModule> | 19 | #include <KQuickAddons/ConfigModule> | ||
20 | 20 | | |||
21 | namespace KScreen | 21 | namespace KScreen | ||
22 | { | 22 | { | ||
23 | class ConfigOperation; | 23 | class ConfigOperation; | ||
24 | } | 24 | } | ||
25 | 25 | | |||
26 | class ConfigHandler; | 26 | class ConfigHandler; | ||
27 | class OrientationSensor; | ||||
27 | class OutputIdentifier; | 28 | class OutputIdentifier; | ||
28 | class OutputModel; | 29 | class OutputModel; | ||
29 | 30 | | |||
30 | class KCMKScreen : public KQuickAddons::ConfigModule | 31 | class KCMKScreen : public KQuickAddons::ConfigModule | ||
31 | { | 32 | { | ||
32 | Q_OBJECT | 33 | Q_OBJECT | ||
33 | 34 | | |||
34 | Q_PROPERTY(OutputModel *outputModel READ outputModel | 35 | Q_PROPERTY(OutputModel *outputModel READ outputModel | ||
35 | NOTIFY outputModelChanged) | 36 | NOTIFY outputModelChanged) | ||
36 | Q_PROPERTY(bool backendReady READ backendReady | 37 | Q_PROPERTY(bool backendReady READ backendReady | ||
37 | NOTIFY backendReadyChanged) | 38 | NOTIFY backendReadyChanged) | ||
38 | Q_PROPERTY(bool screenNormalized READ screenNormalized | 39 | Q_PROPERTY(bool screenNormalized READ screenNormalized | ||
39 | NOTIFY screenNormalizedChanged) | 40 | NOTIFY screenNormalizedChanged) | ||
40 | Q_PROPERTY(bool perOutputScaling READ perOutputScaling | 41 | Q_PROPERTY(bool perOutputScaling READ perOutputScaling | ||
41 | NOTIFY perOutputScalingChanged) | 42 | NOTIFY perOutputScalingChanged) | ||
42 | Q_PROPERTY(bool primaryOutputSupported READ primaryOutputSupported | 43 | Q_PROPERTY(bool primaryOutputSupported READ primaryOutputSupported | ||
43 | NOTIFY primaryOutputSupportedChanged) | 44 | NOTIFY primaryOutputSupportedChanged) | ||
44 | Q_PROPERTY(bool outputReplicationSupported READ outputReplicationSupported | 45 | Q_PROPERTY(bool outputReplicationSupported READ outputReplicationSupported | ||
45 | NOTIFY outputReplicationSupportedChanged) | 46 | NOTIFY outputReplicationSupportedChanged) | ||
46 | Q_PROPERTY(qreal globalScale READ globalScale WRITE setGlobalScale | 47 | Q_PROPERTY(qreal globalScale READ globalScale WRITE setGlobalScale | ||
47 | NOTIFY globalScaleChanged) | 48 | NOTIFY globalScaleChanged) | ||
48 | Q_PROPERTY(int outputRetention READ outputRetention WRITE setOutputRetention | 49 | Q_PROPERTY(int outputRetention READ outputRetention WRITE setOutputRetention | ||
49 | NOTIFY outputRetentionChanged) | 50 | NOTIFY outputRetentionChanged) | ||
51 | Q_PROPERTY(bool autoRotationSupported READ autoRotationSupported | ||||
52 | NOTIFY autoRotationSupportedChanged) | ||||
53 | Q_PROPERTY(bool orientationSensorAvailable READ orientationSensorAvailable | ||||
54 | NOTIFY orientationSensorAvailableChanged) | ||||
55 | Q_PROPERTY(bool tabletModeAvailable READ tabletModeAvailable | ||||
56 | NOTIFY tabletModeAvailableChanged) | ||||
57 | | ||||
50 | 58 | | |||
51 | public: | 59 | public: | ||
52 | explicit KCMKScreen (QObject *parent = nullptr, | 60 | explicit KCMKScreen (QObject *parent = nullptr, | ||
53 | const QVariantList &args = QVariantList()); | 61 | const QVariantList &args = QVariantList()); | ||
54 | ~KCMKScreen() override = default; | 62 | ~KCMKScreen() override = default; | ||
55 | 63 | | |||
56 | void load() override; | 64 | void load() override; | ||
57 | void save() override; | 65 | void save() override; | ||
Show All 13 Lines | |||||
71 | bool outputReplicationSupported() const; | 79 | bool outputReplicationSupported() const; | ||
72 | 80 | | |||
73 | qreal globalScale() const; | 81 | qreal globalScale() const; | ||
74 | void setGlobalScale(qreal scale); | 82 | void setGlobalScale(qreal scale); | ||
75 | 83 | | |||
76 | int outputRetention() const; | 84 | int outputRetention() const; | ||
77 | void setOutputRetention(int retention); | 85 | void setOutputRetention(int retention); | ||
78 | 86 | | |||
87 | bool autoRotationSupported() const; | ||||
88 | bool orientationSensorAvailable() const; | ||||
89 | bool tabletModeAvailable() const; | ||||
90 | | ||||
79 | Q_INVOKABLE void forceSave(); | 91 | Q_INVOKABLE void forceSave(); | ||
80 | void doSave(bool force); | 92 | void doSave(bool force); | ||
81 | 93 | | |||
82 | Q_SIGNALS: | 94 | Q_SIGNALS: | ||
83 | void backendReadyChanged(); | 95 | void backendReadyChanged(); | ||
84 | void backendError(); | 96 | void backendError(); | ||
85 | void outputModelChanged(); | 97 | void outputModelChanged(); | ||
86 | void changed(); | 98 | void changed(); | ||
87 | void screenNormalizedChanged(); | 99 | void screenNormalizedChanged(); | ||
88 | void perOutputScalingChanged(); | 100 | void perOutputScalingChanged(); | ||
89 | void primaryOutputSupportedChanged(); | 101 | void primaryOutputSupportedChanged(); | ||
90 | void outputReplicationSupportedChanged(); | 102 | void outputReplicationSupportedChanged(); | ||
91 | void globalScaleChanged(); | 103 | void globalScaleChanged(); | ||
92 | void outputRetentionChanged(); | 104 | void outputRetentionChanged(); | ||
105 | void autoRotationSupportedChanged(); | ||||
106 | void orientationSensorAvailableChanged(); | ||||
107 | void tabletModeAvailableChanged(); | ||||
93 | void dangerousSave(); | 108 | void dangerousSave(); | ||
94 | void errorOnSave(); | 109 | void errorOnSave(); | ||
95 | void globalScaleWritten(); | 110 | void globalScaleWritten(); | ||
96 | void outputConnect(bool connected); | 111 | void outputConnect(bool connected); | ||
97 | 112 | | |||
98 | private: | 113 | private: | ||
99 | void setBackendReady(bool error); | 114 | void setBackendReady(bool error); | ||
100 | void setScreenNormalized(bool normalized); | 115 | void setScreenNormalized(bool normalized); | ||
101 | 116 | | |||
102 | void fetchGlobalScale(); | 117 | void fetchGlobalScale(); | ||
103 | void writeGlobalScale(); | 118 | void writeGlobalScale(); | ||
104 | 119 | | |||
105 | void configReady(KScreen::ConfigOperation *op); | 120 | void configReady(KScreen::ConfigOperation *op); | ||
106 | void continueNeedsSaveCheck(bool needs); | 121 | void continueNeedsSaveCheck(bool needs); | ||
107 | 122 | | |||
108 | std::unique_ptr<OutputIdentifier> m_outputIdentifier; | 123 | std::unique_ptr<OutputIdentifier> m_outputIdentifier; | ||
109 | std::unique_ptr<ConfigHandler> m_config; | 124 | std::unique_ptr<ConfigHandler> m_config; | ||
125 | OrientationSensor *m_orientationSensor; | ||||
110 | bool m_backendReady = false; | 126 | bool m_backendReady = false; | ||
111 | bool m_screenNormalized = true; | 127 | bool m_screenNormalized = true; | ||
112 | double m_globalScale = 1.; | 128 | double m_globalScale = 1.; | ||
113 | double m_initialGlobalScale = 1.; | 129 | double m_initialGlobalScale = 1.; | ||
114 | 130 | | |||
115 | QTimer *m_loadCompressor; | 131 | QTimer *m_loadCompressor; | ||
116 | }; | 132 | }; |