diff options
Diffstat (limited to 'examples/location/mapviewer/mapviewer.qml')
-rw-r--r-- | examples/location/mapviewer/mapviewer.qml | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/examples/location/mapviewer/mapviewer.qml b/examples/location/mapviewer/mapviewer.qml index e0751bbe..cc276f1c 100644 --- a/examples/location/mapviewer/mapviewer.qml +++ b/examples/location/mapviewer/mapviewer.qml @@ -305,6 +305,9 @@ ApplicationWindow { showMessage(title,message);\ }\ }\ + onShowMainMenu: {\ + mapPopupMenu.show(coordinate);\ + }\ }',page) map.plugin = plugin; map.zoomLevel = (map.maximumZoomLevel - map.minimumZoomLevel)/2 @@ -338,7 +341,32 @@ ApplicationWindow { } } + MapPopupMenu { + id: mapPopupMenu + onItemClicked: { + stackView.pop(page) + if (item === "addMarker") { + map.addMarker() + } else if (item === "getCoordinate") { + map.coordinatesCaptured(coordinate.latitude, coordinate.longitude) + } else if (item === "fitViewport") { + map.fitViewportToMapItems() + } else if (item === "deleteMarkers") { + map.deleteMarkers() + } else if (item === "deleteItems") { + map.deleteMapItems() + } + } + function show(coordinate) { + stackView.pop(page) + mapPopupMenu.coordinate = coordinate + mapPopupMenu.markersCount = map.markers.length + mapPopupMenu.mapItemsCount = map.mapItems.length + mapPopupMenu.update() + mapPopupMenu.popup() + } + } StackView { id: stackView |