/** * @RDE_HEADER@ * Interface-Implementation of Text * $Id$ * $HeadURL$ * $Author$ */ #pragma once // Own #include "abstract_single_point_map_object_impl.h" #include "basic_path_object_impl.h" #include // Interface // Qt #include //---------------------------------------------------------------------------- namespace SituationMap { class GraphicalObjectPictureMarker; /** * @brief The TextImpl class displays a text. * * A class instance consists of the following logical elements: * - mainGraphicalObject (irrelevant) * - mainGraphicalObjectText (displaying the text/name) * - tacticalAppearance (irrelevant) */ // inherent 'public', to get that implementation // inherent 'public virtual' to get that interface class SITUATIONMAPOBJECTS_EXPORT TextImpl : public AbstractSinglePointMapObjectImpl, public virtual Text { using BaseClass = AbstractSinglePointMapObjectImpl; template friend class GenericObjectFactory; protected: explicit TextImpl(const QString &debugInfo = QString()); virtual ~TextImpl(); public: TextImpl(const TextImpl &other) = delete; TextImpl &operator=(TextImpl &other) = delete; // void setScale(float) override {} void setShowAnchorMarker(bool on) override; bool showAnchorMarker() const override; protected: bool updateViewImpl() override; friend class MapImpl; bool init(MapImpl *mapImpl, const QString &logicalLayerName) override; // internal/admin // logical bool m_showAnchorMarker; GraphicalObjectPictureMarker *m_anchorMarker; private: LOGGER_T m_logger; ///< Interface of the Logging-Facility }; } // namespace SituationMap