diff --git a/MainController.cpp b/MainController.cpp index a568f9d..1599009 100644 --- a/MainController.cpp +++ b/MainController.cpp @@ -95,7 +95,7 @@ MainController::MainController() { connect(mw, &MainWindow::onGridShowEdges, [&] (const bool show) {mw->getMapView3D()->getGridRenderer()->setShowEdges(show);} ); - mapModel->load("../IndoorMap/maps/SHL37.xml"); + mapModel->load("../IndoorMap/maps/SHL38_no_elev.xml"); //mapModel->resize(0.983, 0.983, 1, -0.2, -0.3, 0); diff --git a/mapview/2D/MV2DElementElevator.h b/mapview/2D/MV2DElementElevator.h index aedd7b1..2b453c6 100644 --- a/mapview/2D/MV2DElementElevator.h +++ b/mapview/2D/MV2DElementElevator.h @@ -62,6 +62,7 @@ public: } else { //p.setPenBrush(Qt::gray, Qt::NoBrush); //p.drawCircle(elevator->center); + p.drawCircle_px(elevator->center, 3); } } diff --git a/mapview/2D/MV2DElementFloorOutlinePolygon.h b/mapview/2D/MV2DElementFloorOutlinePolygon.h index 53637d4..9970eb0 100644 --- a/mapview/2D/MV2DElementFloorOutlinePolygon.h +++ b/mapview/2D/MV2DElementFloorOutlinePolygon.h @@ -48,6 +48,7 @@ public: void paint(Painter& p) override { QBrush brush; + QPen pen; // fill-style (depends on the mode) switch (fo.method) { @@ -65,8 +66,14 @@ public: brush.setColor(QColor(255,0,0)); } + if (hasFocus()) { + brush.setStyle(Qt::BrushStyle::FDiagPattern); + } + // outline + filled area - p.setPenBrush(Qt::black, brush); + pen.setColor(Qt::black); + pen.setWidth( hasFocus() ? 2 : 1 ); + p.setPenBrush(pen, brush); p.drawPolygon(fo.poly.points); // selected endpoints? diff --git a/mapview/2D/tools/ToolNewElement.h b/mapview/2D/tools/ToolNewElement.h index 72faa16..d560d82 100644 --- a/mapview/2D/tools/ToolNewElement.h +++ b/mapview/2D/tools/ToolNewElement.h @@ -113,7 +113,8 @@ protected: /** finish creating new elements */ void disableMe() { - finalizeCurrent(); + //finalizeCurrent(); + deleteCurrent(); delete this; // see dtor! } diff --git a/mapview/2D/tools/ToolNewElevator.h b/mapview/2D/tools/ToolNewElevator.h index 0d4ec4d..f790e78 100644 --- a/mapview/2D/tools/ToolNewElevator.h +++ b/mapview/2D/tools/ToolNewElevator.h @@ -17,17 +17,22 @@ private: public: ToolNewElevator(Tools& tools, MapLayer* layer) : ToolNewElement(tools, layer) { - create(); + ; + } + + void becomesActive() override { + create(); // start adding an new element + showHelp(); + } + + void becomesInactive() override { + deleteCurrent(); // delete the currently pending and not yet finished elevator } const std::string getName() const override { return "new Elevator"; } - void becomesActive() override { - showHelp(); - } - void createEmptyElement() override { foEL = new Floorplan::Elevator(); diff --git a/mapview/2D/tools/ToolNewStair.h b/mapview/2D/tools/ToolNewStair.h index 779b8d3..3f458c5 100644 --- a/mapview/2D/tools/ToolNewStair.h +++ b/mapview/2D/tools/ToolNewStair.h @@ -14,17 +14,22 @@ private: public: ToolNewStair(Tools& tools, MapLayer* layer) : ToolNewElement(tools, layer) { - create(); + ; + } + + void becomesActive() override { + create(); // start adding an new element + emit onHelpTextChange("click for the stair's starting point"); + } + + void becomesInactive() override { + deleteCurrent(); // delete the currently pending and not yet finished stair } const std::string getName() const override { return "new Stair"; } - void becomesActive() override { - emit onHelpTextChange("click for the stair's starting point"); - } - void createEmptyElement() override { foEL = new Floorplan::StairFreeform(); diff --git a/mapview/2D/tools/ToolNewWall.h b/mapview/2D/tools/ToolNewWall.h index d8817be..f17de75 100644 --- a/mapview/2D/tools/ToolNewWall.h +++ b/mapview/2D/tools/ToolNewWall.h @@ -15,7 +15,15 @@ private: public: ToolNewWall(Tools& tools, MapLayer* layer) : ToolNewElement(tools, layer) { - create(); + ; + } + + void becomesActive() override { + create(); // start adding an new element + } + + void becomesInactive() override { + deleteCurrent(); // delete the currently pending and not yet finished wall element } const std::string getName() const override { diff --git a/params/ToolBox.cpp b/params/ToolBox.cpp index 9ecb132..91cd4bf 100644 --- a/params/ToolBox.cpp +++ b/params/ToolBox.cpp @@ -173,6 +173,7 @@ void ToolBoxWidget::onMainToolChanged() { btnDoor->setStyleSheet( dynamic_cast(t) ? styleSel : styleNor ); btnWall->setStyleSheet( dynamic_cast(t) ? styleSel : styleNor ); btnElevator->setStyleSheet( dynamic_cast(t) ? styleSel : styleNor ); + btnStair->setStyleSheet( dynamic_cast(t) ? styleSel : styleNor ); }