summaryrefslogtreecommitdiffstats
path: root/examples
diff options
context:
space:
mode:
authorMichal Klocek <michal.klocek@theqtcompany.com>2015-02-10 18:17:11 +0100
committerMichal Klocek <michal.klocek@theqtcompany.com>2015-04-13 14:54:27 +0000
commit6cd56cd2a431238f67544f62fd541c55ba9ecda1 (patch)
treede1f503d18184c9730bc03f464f6d52e94e45e0b /examples
parent8bd7914a78ec6f29ecb52995b0c0116f34d7a2d2 (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.qml14
-rw-r--r--examples/location/mapviewer/content/map/MapComponent.qml67
-rw-r--r--examples/location/mapviewer/mapviewer.qml36
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")
}
}