summaryrefslogtreecommitdiff
path: root/examples/location/mapviewer/map/MapComponent.qml
diff options
context:
space:
mode:
Diffstat (limited to 'examples/location/mapviewer/map/MapComponent.qml')
-rw-r--r--examples/location/mapviewer/map/MapComponent.qml134
1 files changed, 53 insertions, 81 deletions
diff --git a/examples/location/mapviewer/map/MapComponent.qml b/examples/location/mapviewer/map/MapComponent.qml
index 149c0e47..6f887536 100644
--- a/examples/location/mapviewer/map/MapComponent.qml
+++ b/examples/location/mapviewer/map/MapComponent.qml
@@ -20,7 +20,6 @@ MapView {
property alias routeModel: routeModel
property alias geocodeModel: geocodeModel
property alias slidersExpanded: sliders.expanded
- property variant unfinishedItem: 'undefined'
signal showGeocodeInfo()
signal geocodeFinished()
@@ -97,15 +96,6 @@ MapView {
view.markers = []
}
- function deleteMapItems()
- {
- var count = view.mapItems.length
- for (var i = count-1; i>=0; i--){
- view.map.removeMapItem(view.mapItems[i])
- }
- view.mapItems = []
- }
-
function addMarker()
{
var count = view.markers.length
@@ -117,21 +107,6 @@ MapView {
markers.push(marker)
}
- function addGeoItem(item)
- {
- var count = view.map.mapItems.length
- var co = Qt.createComponent(item+'.qml')
- if (co.status === Component.Ready) {
- unfinishedItem = co.createObject(map)
- unfinishedItem.setGeometry(tapHandler.lastCoordinate)
- unfinishedItem.addGeometry(hoverHandler.currentCoordinate, false)
- view.map.addMapItem(unfinishedItem)
- mapItems.push(unfinishedItem)
- } else {
- console.log(item + " is not supported right now, please call us later.")
- }
- }
-
function deleteMarker(index)
{
//update list of markers
@@ -248,20 +223,9 @@ MapView {
var mapCenterPoint = Qt.point(view.map.width / 2.0 - dx, view.map.height / 2.0 - dy);
view.map.center = view.map.toCoordinate(mapCenterPoint);
- } else if (event.key === Qt.Key_Escape) {
- mapview.unfinishedItem.finishAddGeometry()
- mapview.unfinishedItem = 'undefined'
}
}
- /* @todo
- Binding {
- target: map
- property: 'center'
- value: positionSource.position.coordinate
- when: followme
- }*/
-
PositionSource{
id: positionSource
active: followme
@@ -272,6 +236,30 @@ MapView {
}
MapQuickItem {
+ id: mePoisition
+ parent: view.map
+ sourceItem: Rectangle { width: 14; height: 14; color: "#251ee4"; border.width: 2; border.color: "white"; smooth: true; radius: 7 }
+ coordinate: positionSource.position.coordinate
+ opacity: 1.0
+ anchorPoint: Qt.point(sourceItem.width/2, sourceItem.height/2)
+ visible: followme
+ }
+ MapQuickItem {
+ parent: view.map
+ sourceItem: Text{
+ text: qsTr("You're here!")
+ color:"#242424"
+ font.bold: true
+ styleColor: "#ECECEC"
+ style: Text.Outline
+ }
+ coordinate: positionSource.position.coordinate
+ anchorPoint: Qt.point(-mePoisition.sourceItem.width * 0.5, mePoisition.sourceItem.height * 1.5)
+ visible: followme
+ }
+
+
+ MapQuickItem {
id: poiTheQtComapny
parent: view.map
sourceItem: Rectangle { width: 14; height: 14; color: "#e41e25"; border.width: 2; border.color: "white"; smooth: true; radius: 7 }
@@ -293,7 +281,7 @@ MapView {
style: Text.Outline
}
coordinate: poiTheQtComapny.coordinate
- anchorPoint: Qt.point(-poiTheQtComapny.sourceItem.width * 0.5,poiTheQtComapny.sourceItem.height * 1.5)
+ anchorPoint: Qt.point(-poiTheQtComapny.sourceItem.width * 0.5, poiTheQtComapny.sourceItem.height * 1.5)
}
MapSliders {
@@ -412,29 +400,37 @@ MapView {
Component {
id: pointDelegate
- MapCircle {
+ MapQuickItem {
id: point
parent: view.map
- radius: 1000
- color: "#46a2da"
- border.color: "#190a33"
- border.width: 2
- smooth: true
- opacity: 0.25
- center: locationData.coordinate
- //! [pointdel0]
- /* TapHandler {
- point.onPositionChanged: {
- if (Math.abs(view.map.pressX - parent.x - point.position.x) > view.map.jitterThreshold ||
- Math.abs(view.map.pressY - parent.y - point.position.y) > view.map.jitterThreshold) {
- if (pressed)
- parent.radius = parent.center.distanceTo(view.map.toCoordinate(point.position))
- }
+ coordinate: locationData.coordinate
+
+ sourceItem: Image {
+ id: pointMarker
+ source: "../resources/marker_blue.png"
+ //! [pointdel0]
+
+ Text{
+ id: pointText
+ anchors.bottom: pointMarker.top
+ anchors.horizontalCenter: pointMarker.horizontalCenter
+ text: locationData.address.street + ", " + locationData.address.city
+ color:"#242424"
+ font.bold: true
+ styleColor: "#ECECEC"
+ style: Text.Outline
}
- onLongPressed: showPointMenu(view.map.toCoordinate(point.position))
- }*/
- //! [pointdel1]
+ }
+ smooth: true
+ autoFadeIn: false
+ anchorPoint.x: pointMarker.width/4
+ anchorPoint.y: pointMarker.height
+
+ TapHandler {
+ onLongPressed: showPointMenu(point.coordinate)
+ //! [pointdel1]
+ }
}
}
//! [pointdel1]
@@ -464,19 +460,6 @@ MapView {
onTriggered: view.calculateScale()
}
- HoverHandler {
- id: hoverHandler
- property variant currentCoordinate
- grabPermissions: PointerHandler.CanTakeOverFromItems | PointerHandler.CanTakeOverFromHandlersOfDifferentType
-
- onPointChanged: {
- currentCoordinate = view.map.toCoordinate(hoverHandler.point.position)
- if (mapview.unfinishedItem !== 'undefined')
- mapview.unfinishedItem.addGeometry(view.map.toCoordinate(hoverHandler.point.position), true)
- }
-
- }
-
TapHandler {
id: tapHandler
property variant lastCoordinate
@@ -490,18 +473,7 @@ MapView {
onSingleTapped: (eventPoint, button) => {
if (button === Qt.RightButton) {
- if (mapview.unfinishedItem !== 'undefined') {
- mapview.unfinishedItem.finishAddGeometry()
- mapview.unfinishedItem = 'undefined'
- } else
- showMainMenu(lastCoordinate)
- } else if (button === Qt.LeftButton) {
- if (mapview.unfinishedItem !== 'undefined') {
- if (mapview.unfinishedItem.addGeometry(view.map.toCoordinate(tapHandler.point.position), false)) {
- mapview.unfinishedItem.finishAddGeometry()
- mapview.unfinishedItem = 'undefined'
- }
- }
+ showMainMenu(lastCoordinate)
}
}