/** ** ** @RDE_HEADER@ ** Definition of internal data of base class for rubberbands ** $Id$ ** $HeadURL$ ** $Author$ ** ** ----------------------------------------------------------------------------------------------- ** ** Hardware-Environment: Intel-PC ** Software-Environment: Windows 7, Qt 5.4. ArcGIS 10.2.5 ** ** Language ........: C++ 11 ** ** ----------------------------------------------------------------------------------------------- ** ** Author ...........: Joerg Turla, SPD G, Tel. 3132 ** ** ----------------------------------------------------------------------------------------------- ** ** Notes .........: ** ** 16.06.2015, JT : First edition for use with Qt5 ** ** ----------------------------------------------------------------------------------------------- */ #pragma once #include #include #include #include #include "rubberband.h" #include "rubberband_handle.h" #include "rubberband_drawable.h" class QHBoxLayout; class QWidget; class QPushButton; class QGraphicsScene; namespace Esri { namespace ArcGISRuntime { class MapGraphicsView; } } namespace SituationMap { class Map; class CoordTranslationFunctor; } namespace SituationMap { namespace RB { class RubberbandHandleProxy; /** @class Rubberband::InternalData rubberband_internal.h @brief Definition of internal data of rubberband base class. */ struct Rubberband::InternalData { Q_DISABLE_COPY(InternalData) QPointer _mapView; QPointer _mapScene; QList> _handleList; RubberbandDrawable * _constructionObjectDraw; QGraphicsPixmapItem * _connectedPreviewPixmap; QPointF _lastClickPosition; QGraphicsPixmapItem * _constrainFailedMarker; LOGGER_T _logger; explicit InternalData( SituationMap::Map * map ); ~InternalData(); void markFailedConstrains( QPoint pos, bool on ); }; /* InternalData */ } } /* namespace SituationMap::RB */