24 #include "QGVCamera.h"
25 #include "QGVGlobal.h"
26 #include "QGVProjection.h"
34 class QGV_LIB_DECL
QGVMap :
public QWidget
39 explicit QGVMap(QWidget* parent = 0);
46 void setProjection(QGV::Projection
id);
50 void setMouseActions(QGV::MouseActions actions);
51 void setMouseAction(QGV::MouseAction action,
bool enabled =
true);
52 QGV::MouseActions getMouseActions()
const;
53 bool isMouseAction(QGV::MouseAction action)
const;
61 int countItems()
const;
62 QGVItem* getItem(
int index)
const;
67 int countWidgets()
const;
73 QSet<QGVItem*> getSelections()
const;
75 QList<QGVDrawItem*> search(
const QPointF& projPos, Qt::ItemSelectionMode mode = Qt::ContainsItemShape)
const;
76 QList<QGVDrawItem*> search(
const QRectF& projRect, Qt::ItemSelectionMode mode = Qt::ContainsItemShape)
const;
77 QList<QGVDrawItem*> search(
const QPolygonF& projPolygon, Qt::ItemSelectionMode mode = Qt::ContainsItemShape)
const;
79 QPixmap grabMapView(
bool includeWidgets =
true)
const;
81 QPointF mapToProj(QPoint pos);
82 QPoint mapFromProj(QPointF projPos);
85 void refreshProjection();
86 void anchoreWidgets();
88 virtual void onMapState(QGV::MapState state);
92 void mouseMoveEvent(QMouseEvent* event)
override;
93 void mousePressEvent(QMouseEvent* event)
override;
94 void mouseDoubleClickEvent(QMouseEvent* event)
override;
97 void projectionChanged();
99 void azimuthChanged();
101 void itemsChanged(
QGVItem* parent);
102 void stateChanged(QGV::MapState state);
103 void itemClicked(
QGVItem* item, QPointF projPos);
104 void itemDoubleClicked(
QGVItem* item, QPointF projPos);
105 void mapMouseMove(QPointF projPos);
106 void mapMousePress(QPointF projPos);
107 void mapMouseDoubleClicked(QPointF projPos);
108 void dropOnMap(
QGV::GeoPos pos,
const QMimeData* data);
111 QScopedPointer<QGVProjection> mProjection;
112 QScopedPointer<QGVMapQGView> mQGView;
113 QScopedPointer<QGVItem> mRootItem;
114 QList<QGVWidget*> mWidgets;
115 QSet<QGVItem*> mSelections;
116 void handleDropDataOnQGVMapQGView(QPointF position,
const QMimeData* dropData);
Definition: QGVCamera.h:59
Definition: QGVCamera.h:30
Definition: QGVDrawItem.h:27
Definition: QGVMapQGView.h:37
Definition: QGVProjection.h:24
Definition: QGVGlobal.h:105