]> git.tdb.fi Git - libs/gui.git/blobdiff - source/graphics/monitor.h
Avoid using std::list
[libs/gui.git] / source / graphics / monitor.h
index d5e49bb3dbb210bc420f0bef3ff7e050b2cf728a..8d86d4e0c9507673df77444195dc3e250574d2ad 100644 (file)
@@ -1,21 +1,30 @@
 #ifndef MSP_GRAPHICS_MONITOR_H_
 #define MSP_GRAPHICS_MONITOR_H_
 
-#include <list>
 #include <string>
+#include <vector>
+#include "videomode.h"
 
 namespace Msp {
 namespace Graphics {
 
-struct VideoMode;
-
 struct Monitor
 {
-       unsigned index;
-       std::list<const VideoMode *> video_modes;
-       const VideoMode *desktop_mode;
+       struct Settings
+       {
+               const VideoMode *mode = nullptr;
+               VideoRotation rotation = ROTATE_NORMAL;
+               int x = 0;
+               int y = 0;
+       };
 
-       Monitor();
+       unsigned index = 0;
+       std::string name;
+       std::vector<const VideoMode *> video_modes;
+       Settings desktop_settings;
+       Settings current_settings;
+       const Monitor *next_left = nullptr;
+       const Monitor *next_right = nullptr;
 };
 
 } // namespace Graphics