summaryrefslogtreecommitdiffstats
path: root/src/View/MapView.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/View/MapView.cpp')
-rw-r--r--src/View/MapView.cpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/View/MapView.cpp b/src/View/MapView.cpp
index 224cd37..2569a3c 100644
--- a/src/View/MapView.cpp
+++ b/src/View/MapView.cpp
@@ -19,10 +19,13 @@
#include "MapView.h"
#include "TopView.h"
+
+#include <Instance.h>
#include <Data/Level.h>
#include <Data/Room.h>
#include <Data/Triangle.h>
#include <Gui/RenderArea.h>
+
#include <GL/gl.h>
#include <cmath>
#include <list>
@@ -96,7 +99,7 @@ void MapView::click(float x, float y, unsigned int button) {
void MapView::render() {
glClear(GL_COLOR_BUFFER_BIT);
- if(!mainView || !mainView->getLevel())
+ if(!mainView || !mainView->getInstance()->getLevel())
return;
float minX, maxX, minY, maxY;
@@ -116,10 +119,10 @@ void MapView::render() {
glScalef(scale, scale, 1);
glTranslatef(-xCenter, -yCenter, 0);
- const std::list<Data::Room*> &rooms = mainView->getLevel()->getRooms();
+ const std::list<Data::Room*> &rooms = mainView->getInstance()->getLevel()->getRooms();
for(std::list<Data::Room*>::const_iterator room = rooms.begin(); room != rooms.end(); ++room)
- TopView::renderRoom(*room);
+ TopView::renderRoom(*room, (*room == mainView->getInstance()->getSelectedRoom()));
float mainXCenter = mainView->getXCenter(), mainYCenter = mainView->getYCenter();
float mainScale = mainView->getScale();
@@ -163,10 +166,10 @@ void MapView::getBounds(float *minX, float *maxX, float *minY, float *maxY) {
if(maxY)
*maxY = 0;
- if(!mainView || !mainView->getLevel())
+ if(!mainView || !mainView->getInstance()->getLevel())
return;
- const std::list<Data::Room*> &rooms = mainView->getLevel()->getRooms();
+ const std::list<Data::Room*> &rooms = mainView->getInstance()->getLevel()->getRooms();
for(std::list<Data::Room*>::const_iterator room = rooms.begin(); room != rooms.end(); ++room) {
const std::list<Data::Triangle*> &triangles = (*room)->getTriangles();