diff options
author | Michal Klocek <michal.klocek@theqtcompany.com> | 2015-02-10 18:17:11 +0100 |
---|---|---|
committer | Michal Klocek <michal.klocek@theqtcompany.com> | 2015-04-13 14:54:27 +0000 |
commit | 6cd56cd2a431238f67544f62fd541c55ba9ecda1 (patch) | |
tree | de1f503d18184c9730bc03f464f6d52e94e45e0b /examples | |
parent | 8bd7914a78ec6f29ecb52995b0c0116f34d7a2d2 (diff) |
Replace item draw menu in mapviewer example.
Use qtquickcontroles based one.
Change-Id: I7d915e3c687ab46d8390681a12c4009043016092
Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
Diffstat (limited to 'examples')
-rw-r--r-- | examples/location/mapviewer/MarkerPopupMenu.qml | 14 | ||||
-rw-r--r-- | examples/location/mapviewer/content/map/MapComponent.qml | 67 | ||||
-rw-r--r-- | examples/location/mapviewer/mapviewer.qml | 36 |
3 files changed, 42 insertions, 75 deletions
diff --git a/examples/location/mapviewer/MarkerPopupMenu.qml b/examples/location/mapviewer/MarkerPopupMenu.qml index 46a4ecf2..c5bc5740 100644 --- a/examples/location/mapviewer/MarkerPopupMenu.qml +++ b/examples/location/mapviewer/MarkerPopupMenu.qml @@ -51,7 +51,6 @@ Menu { addItem(qsTr("Delete")).triggered.connect(function(){itemClicked("deleteMarker")}) addItem(qsTr("Coordinates")).triggered.connect(function(){itemClicked("getMarkerCoordinate")}) addItem(qsTr("Move to")).triggered.connect(function(){itemClicked("moveMarkerTo")}) - addItem(qsTr("Draw...")).triggered.connect(function(){itemClicked("showDrawMenu")}) if (currentMarker == markersCount-2){ addItem(qsTr("Route to next point")).triggered.connect(function(){itemClicked("routeToNextPoint")}); addItem(qsTr("Distance to next point")).triggered.connect(function(){itemClicked("distanceToNextPoint")}); @@ -60,5 +59,18 @@ Menu { addItem(qsTr("Route to next points")).triggered.connect(function(){itemClicked("routeToNextPoints")}); addItem(qsTr("Distance to next point")).triggered.connect(function(){itemClicked("distanceToNextPoint")}); } + + var menu = addMenu(qsTr("Draw...")) + menu.addItem(qsTr("Image")).triggered.connect(function(){itemClicked("drawImage")}) + + if (currentMarker <= markersCount-2){ + menu.addItem(qsTr("Rectangle")).triggered.connect(function(){itemClicked("drawRectangle")}) + menu.addItem(qsTr("Circle")).triggered.connect(function(){itemClicked("drawCircle")}) + menu.addItem(qsTr("Polyline")).triggered.connect(function(){itemClicked("drawPolyline")}) + } + + if (currentMarker < markersCount-2){ + menu.addItem(qsTr("Polygon")).triggered.connect(function(){itemClicked("drawPolygonMenu")}) + } } } diff --git a/examples/location/mapviewer/content/map/MapComponent.qml b/examples/location/mapviewer/content/map/MapComponent.qml index 7694ddcb..001dddc7 100644 --- a/examples/location/mapviewer/content/map/MapComponent.qml +++ b/examples/location/mapviewer/content/map/MapComponent.qml @@ -579,48 +579,6 @@ Map { } OwnControls.Menu { - id: drawMenu - horizontalOrientation: false - autoWidth: true - z: map.z + 4 - opacity: 0 - - width: 150 - x: 0 - y: 0 - onClicked: { - map.state = "" - switch (button) { - case "Polyline": { - addGeoItem("PolylineItem") - break; - } - - case "Rectangle": { - addGeoItem("RectangleItem") - break; - } - - case "Circle": { - addGeoItem("CircleItem") - break; - } - - case "Polygon": { - addGeoItem("PolygonItem") - break; - } - - case "Image": { - addGeoItem("ImageItem") - break; - } - - } - } - } - - OwnControls.Menu { id: routeMenu horizontalOrientation: false autoWidth: true @@ -867,25 +825,6 @@ Map { if (markers.length == 0) markerCounter = 0 } - function drawItemPopup(){ - var array - var length = map.markers.length - - drawMenu.clear() - - drawMenu.addItem("Image") - - if (currentMarker <= length-2){ - drawMenu.addItem("Rectangle") - drawMenu.addItem("Circle") - drawMenu.addItem("Polyline") - } - if (currentMarker < length-2){ - drawMenu.addItem("Polygon") - } - map.state = "DrawItemMenu" - } - function calculateRoute(){ routeQuery.clearWaypoints(); for (var i = currentMarker; i< map.markers.length; i++){ @@ -938,12 +877,6 @@ Map { // states of map states: [ State { - name: "DrawItemMenu" - PropertyChanges { target: drawMenu; opacity: 1} - PropertyChanges { target: drawMenu; x: ((markers[currentMarker].lastMouseX + drawMenu.width > map.width) ? map.width - drawMenu.width : markers[currentMarker].lastMouseX )} - PropertyChanges { target: drawMenu; y: ((markers[currentMarker].lastMouseY + drawMenu.height > map.height - 40) ? map.height - drawMenu.height - 40 : markers[currentMarker].lastMouseY)} - }, - State { name: "RoutePopupMenu" PropertyChanges { target: routeMenu; opacity: 1} PropertyChanges { target: routeMenu; x: ((map.lastX + routeMenu.width > map.width) ? map.width - routeMenu.width : map.lastX)} diff --git a/examples/location/mapviewer/mapviewer.qml b/examples/location/mapviewer/mapviewer.qml index ba906e85..e2b41611 100644 --- a/examples/location/mapviewer/mapviewer.qml +++ b/examples/location/mapviewer/mapviewer.qml @@ -376,21 +376,43 @@ ApplicationWindow { id: markerPopupMenu onItemClicked: { stackView.pop(page) - if (item === "deleteMarker") { + switch (item) { + case "deleteMarker": map.deleteMarker(map.currentMarker) - } else if (item === "getMarkerCoordinate") { + break; + case "getMarkerCoordinate": map.coordinatesCaptured(map.markers[map.currentMarker].coordinate.latitude, map.markers[map.currentMarker].coordinate.longitude) - } else if (item === "moveMarkerTo") { + break; + case "moveMarkerTo": askForCoordinate() - } else if (item === "showDrawMenu") { - map.drawItemPopup() - } else if (item === "routeToNextPoint" || item === "routeToNextPoints") { + break; + case "routeToNextPoint": + case "routeToNextPoints": map.calculateRoute() - } else if (item === "distanceToNextPoint") { + break + case "distanceToNextPoint": var coordinate1 = map.markers[currentMarker].coordinate; var coordinate2 = map.markers[currentMarker+1].coordinate; var distance = map.formatDistance(coordinate1.distanceTo(coordinate2)); showMessage(qsTr("Distance"),"<b>" + qsTr("Distance:") + "</b> " + distance) + break + case "drawImage": + map.addGeoItem("ImageItem") + break + case "drawRectangle": + map.addGeoItem("RectangleItem") + break + case "drawCircle": + map.addGeoItem("CircleItem") + break; + case "drawPolyline": + map.addGeoItem("PolylineItem") + break; + case "drawPolygonMenu": + map.addGeoItem("PolygonItem") + break + default: + console.log("Unsupported operation") } } |