aboutsummaryrefslogtreecommitdiffstats
path: root/examples/location/mapviewer/MapViewer/map/Marker.qml
diff options
context:
space:
mode:
Diffstat (limited to 'examples/location/mapviewer/MapViewer/map/Marker.qml')
-rw-r--r--examples/location/mapviewer/MapViewer/map/Marker.qml64
1 files changed, 64 insertions, 0 deletions
diff --git a/examples/location/mapviewer/MapViewer/map/Marker.qml b/examples/location/mapviewer/MapViewer/map/Marker.qml
new file mode 100644
index 000000000..c7494cf57
--- /dev/null
+++ b/examples/location/mapviewer/MapViewer/map/Marker.qml
@@ -0,0 +1,64 @@
+// Copyright (C) 2023 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+
+import QtQuick
+import QtLocation
+
+//! [mqi-top]
+MapQuickItem {
+ id: marker
+//! [mqi-top]
+
+//! [mqi-anchor]
+ anchorPoint.x: image.width/4
+ anchorPoint.y: image.height
+
+ HoverHandler {
+ id: hoverHandler
+ }
+ TapHandler {
+ id: tapHandler
+ acceptedButtons: Qt.RightButton
+ gesturePolicy: TapHandler.WithinBounds
+ onTapped: {
+ mapview.currentMarker = -1
+ for (var i = 0; i< mapview.markers.length; i++){
+ if (marker == mapview.markers[i]){
+ mapview.currentMarker = i
+ break
+ }
+ }
+ mapview.showMarkerMenu(marker.coordinate)
+ }
+ }
+ DragHandler {
+ id: dragHandler
+ grabPermissions: PointerHandler.CanTakeOverFromItems | PointerHandler.CanTakeOverFromHandlersOfDifferentType
+ }
+
+ sourceItem: Image {
+ id: image
+//! [mqi-anchor]
+ source: "../resources/marker.png"
+ opacity: hoverHandler.hovered ? 0.6 : 1.0
+
+ Text{
+ id: number
+ y: image.height/10
+ width: image.width
+ color: "white"
+ font.bold: true
+ font.pixelSize: 14
+ horizontalAlignment: Text.AlignHCenter
+ Component.onCompleted: {
+ text = mapview.markerCounter
+ }
+ }
+
+//! [mqi-closeimage]
+ }
+//! [mqi-closeimage]
+
+//! [mqi-close]
+}
+//! [mqi-close]