summaryrefslogtreecommitdiffstats
path: root/src/View/TopView.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/View/TopView.h')
-rw-r--r--src/View/TopView.h24
1 files changed, 16 insertions, 8 deletions
diff --git a/src/View/TopView.h b/src/View/TopView.h
index 1fa81ad..abbb77b 100644
--- a/src/View/TopView.h
+++ b/src/View/TopView.h
@@ -45,30 +45,38 @@ class TopView : public View {
Data::Level *level;
+ float viewWidth, viewHeight;
+
float xCenter, yCenter;
int zoomLevel;
float scale;
- void drawGrid(Gui::RenderArea *renderArea);
+ void drawGrid();
public:
- TopView(Data::Level *level0 = 0) : level(level0), xCenter(0), yCenter(0), zoomLevel(0), scale(100) {}
+ TopView(Data::Level *level0 = 0) : level(level0), viewWidth(0), viewHeight(0), xCenter(0), yCenter(0), zoomLevel(0), scale(100) {}
+
+ float getWidth() const {return viewWidth;}
+ float getHeight() const {return viewHeight;}
float getXCenter() const {return xCenter;}
- void setXCenter(float xCenter0) {xCenter = xCenter0;}
+ void setXCenter(float xCenter0) {xCenter = xCenter0; signalUpdate().emit();}
float getYCenter() const {return yCenter;}
- void setYCenter(float yCenter0) {yCenter = yCenter0;}
+ void setYCenter(float yCenter0) {yCenter = yCenter0; signalUpdate().emit();}
float getScale() const {return scale;}
Data::Level* getLevel() {return level;}
- void setLevel(Data::Level *level0) {level = level0;}
+ void setLevel(Data::Level *level0) {level = level0; signalUpdate().emit();}
+
+ virtual void init();
+ virtual void resize(float width, float height);
- virtual void zoom(Gui::RenderArea *renderArea, int zoom, float x, float y);
- virtual void move(Gui::RenderArea *renderArea, float x, float y, unsigned int state);
+ virtual void render();
- virtual void render(Gui::RenderArea *renderArea);
+ virtual void zoom(int zoom, float x, float y);
+ virtual void move(float x, float y, unsigned int state);
static void renderRoom(Data::Room *room);
};