summaryrefslogtreecommitdiffstats
path: root/src/View/View.h
diff options
context:
space:
mode:
authorneoraider <devnull@localhost>2008-05-05 21:26:05 +0200
committerneoraider <devnull@localhost>2008-05-05 21:26:05 +0200
commit36d892d1f0f0a919e70f81abddaeb568f1f7625c (patch)
tree62216034393b75f992675105436b534d8b5f9bd1 /src/View/View.h
parent1d6f52984dfef698516ae3fef142c80c2029fc7b (diff)
downloadzoomedit-36d892d1f0f0a919e70f81abddaeb568f1f7625c.tar
zoomedit-36d892d1f0f0a919e70f81abddaeb568f1f7625c.zip
zoomedit:
* Use signals to inform RenderArea of view changes
Diffstat (limited to 'src/View/View.h')
-rw-r--r--src/View/View.h23
1 files changed, 14 insertions, 9 deletions
diff --git a/src/View/View.h b/src/View/View.h
index 446a4f6..56e2542 100644
--- a/src/View/View.h
+++ b/src/View/View.h
@@ -20,23 +20,28 @@
#ifndef ZOOMEDIT_VIEW_VIEW_H_
#define ZOOMEDIT_VIEW_VIEW_H_
-namespace ZoomEdit {
-
-namespace Gui {
-class RenderArea;
-}
+#include <sigc++/signal.h>
+namespace ZoomEdit {
namespace View {
class View {
+ private:
+ sigc::signal<void> update;
+
public:
virtual ~View() {}
- virtual void render(Gui::RenderArea *renderArea) = 0;
+ virtual void init() = 0;
+ virtual void resize(float width, float height) = 0;
+
+ virtual void render() = 0;
+
+ virtual void zoom(int, float, float) {}
+ virtual void move(float, float, unsigned int) {}
+ virtual void click(float, float) {}
- virtual void zoom(Gui::RenderArea*, int, float, float) {}
- virtual void move(Gui::RenderArea*, float, float, unsigned int) {}
- virtual void click(Gui::RenderArea*, float, float) {}
+ sigc::signal<void> signalUpdate() const {return update;}
};
}