added a ruler for measuring

added support for meta-data editing
improved element selection
changed zooming
fixed some issues with layer events
fixed issue with 3D outline
fixed loading issue for old maps
some interface changes
This commit is contained in:
2017-03-10 13:44:17 +01:00
parent 2297a76c53
commit f40fc9a823
32 changed files with 809 additions and 198 deletions

View File

@@ -23,11 +23,11 @@ public:
// the obstacles
for (Floorplan::FloorObstacle* o : floor->obstacles) {
if (dynamic_cast<Floorplan::FloorObstacleLine*>(o)) {
elements.push_back(new MMFloorObstacleLine(this, floor, (Floorplan::FloorObstacleLine*)o));
addElement(new MMFloorObstacleLine(this, floor, (Floorplan::FloorObstacleLine*)o));
} else if (dynamic_cast<Floorplan::FloorObstacleCircle*>(o)) {
elements.push_back(new MMFloorObstacleCircle(this, floor, (Floorplan::FloorObstacleCircle*)o));
addElement(new MMFloorObstacleCircle(this, floor, (Floorplan::FloorObstacleCircle*)o));
} else if (dynamic_cast<Floorplan::FloorObstacleDoor*>(o)) {
elements.push_back(new MMFloorObstacleDoor(this, floor, (Floorplan::FloorObstacleDoor*)o));
addElement(new MMFloorObstacleDoor(this, floor, (Floorplan::FloorObstacleDoor*)o));
} else {
throw new Exception("todo: not yet implemented obstacle type");
}
@@ -46,7 +46,7 @@ public:
// add to myself as element
MMFloorObstacleDoor* mm = new MMFloorObstacleDoor(this, floor, obs);
elements.push_back(mm);
addElement(mm);
return mm;
}
@@ -59,7 +59,7 @@ public:
// add to myself as element
MMFloorObstacleLine* mm = new MMFloorObstacleLine(this, floor, obs);
elements.push_back(mm);
addElement(mm);
return mm;
}
@@ -71,7 +71,7 @@ public:
floor->obstacles.push_back(obs);
// add to myself as element
elements.push_back(new MMFloorObstacleCircle(this, floor, obs));
addElement(new MMFloorObstacleCircle(this, floor, obs));
}