#define MSP_GRAPHICS_VIDEOMODE_H_
#include <stdexcept>
+#include "mspgui_api.h"
namespace Msp {
namespace Graphics {
struct Monitor;
struct VideoMode;
-class unsupported_video_mode: public std::runtime_error
+class MSPGUI_API unsupported_video_mode: public std::runtime_error
{
public:
unsupported_video_mode(const VideoMode &);
- virtual ~unsupported_video_mode() throw () { }
};
-struct VideoMode
+enum VideoRotation
{
- unsigned index;
- const Monitor *monitor;
- unsigned width;
- unsigned height;
- unsigned rate;
+ ROTATE_ANY,
+ ROTATE_NORMAL,
+ ROTATE_LEFT,
+ ROTATE_RIGHT,
+ ROTATE_INVERTED
+};
- VideoMode();
+struct MSPGUI_API VideoMode
+{
+ unsigned index = 0;
+ const Monitor *monitor = nullptr;
+ unsigned width = 0;
+ unsigned height = 0;
+ float rate = 0.0f;
+ VideoRotation rotation = ROTATE_ANY;
+
+ VideoMode() = default;
VideoMode(unsigned, unsigned);
};