/* * © Copyright 2014 – Urheberrechtshinweis * Alle Rechte vorbehalten / All Rights Reserved * * Programmcode ist urheberrechtlich geschuetzt. * Das Urheberrecht liegt, soweit nicht ausdruecklich anders gekennzeichnet, bei Frank Ebner. * Keine Verwendung ohne explizite Genehmigung. * (vgl. § 106 ff UrhG / § 97 UrhG) */ #ifndef TOOLNEWPOI_H #define TOOLNEWPOI_H #include "ToolNewElement.h" #include "../../model/MMFloorPOI.h" #include "../../model/MMFloorPOIs.h" class ToolNewPOI : public ToolNewElement { public: ToolNewPOI(Tools& tools, MapLayer* layer) : ToolNewElement(tools, layer) { ; } void becomesActive() override { emit onHelpTextChange("left-click where to place a new POI. right-click to end."); } void becomesInactive() override { ; } const std::string getName() const override { return "new Beacon"; } void moving(const Point2 mapPoint) override { (void) mapPoint; } /** next point */ void leftMouse(const Point2 mapPoint) override { foEL = new Floorplan::POI(Floorplan::POIType::ROOM, "POI", mapPoint); MMFloorPOIs* obs = (MMFloorPOIs*)layer; mmEL = obs->createPOI(foEL); } void rightMouse(const Point2 mapPoint) override { (void) mapPoint; finalizeCurrent(); disableMe(); } }; #endif // TOOLNEWPOI_H