/* * © 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 TOOLNEWBEACON_H #define TOOLNEWBEACON_H #include "ToolNewElement.h" #include "../../model/MMFloorBeacon.h" #include "../../model/MMFloorBeacons.h" class ToolNewBeacon : public ToolNewElement { public: ToolNewBeacon(Tools& tools, MapLayer* layer) : ToolNewElement(tools, layer) { ; } void becomesActive() override { emit onHelpTextChange("left-click where to place a new beacon. 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::Beacon("Beacon xx", "xx:xx:xx:xx:xx:xx", Point3(mapPoint.x, mapPoint.y, 2)); MMFloorBeacons* obs = (MMFloorBeacons*)layer; mmEL = obs->createBeacon(foEL); } void rightMouse(const Point2 mapPoint) override { (void) mapPoint; finalizeCurrent(); disableMe(); } }; #endif // TOOLNEWBEACON_H