summaryrefslogtreecommitdiff
path: root/src/gui/render/RenderModel.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/render/RenderModel.h')
-rw-r--r--src/gui/render/RenderModel.h35
1 files changed, 35 insertions, 0 deletions
diff --git a/src/gui/render/RenderModel.h b/src/gui/render/RenderModel.h
new file mode 100644
index 0000000..2cd24a5
--- /dev/null
+++ b/src/gui/render/RenderModel.h
@@ -0,0 +1,35 @@
+#ifndef RENDERMODEL_H_
+#define RENDERMODEL_H_
+
+#include <vector>
+#include "RenderView.h"
+#include "graphics/Renderer.h"
+
+using namespace std;
+
+class RenderView;
+class RenderModel {
+ vector<RenderView*> observers;
+ Renderer * renderer;
+ void notifyRendererChanged();
+ void notifyRenderChanged();
+ void notifyDisplayChanged();
+ void notifyColourChanged();
+public:
+ RenderModel();
+ Renderer * GetRenderer();
+ void AddObserver(RenderView * observer);
+ void SetRenderer(Renderer * ren);
+ void SetRenderMode(unsigned int renderMode);
+ void UnsetRenderMode(unsigned int renderMode);
+ unsigned int GetRenderMode();
+ void SetDisplayMode(unsigned int displayMode);
+ void UnsetDisplayMode(unsigned int displayMode);
+ unsigned int GetDisplayMode();
+ void SetColourMode(unsigned int colourMode);
+ unsigned int GetColourMode();
+ void LoadRenderPreset(int presetNum);
+ virtual ~RenderModel();
+};
+
+#endif /* RENDERMODEL_H_ */