diff options
Diffstat (limited to 'src/View/View.h')
-rw-r--r-- | src/View/View.h | 23 |
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;} }; } |