ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Help / WLanguage / WLanguage functions / Controls, pages and windows / Map functions
  • Properties specific to Marker variables
  • Functions that use Marker variables
  • Reinitialization
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Others
Stored procedures
The Marker type is used to define the characteristics of a marker that must be positioned on a map displayed in a Map control.
A marker is defined by a name and a geographical position (latitude and longitude) and it can be filled with a description and an action on the click.
The characteristics of this marker can be defined and changed using different WLanguage properties.
Remark: For more details on the declaration of this type of variable and the use of WLanguage properties, see Declaring a variable.
Example
// Displays a marker and runs a procedure during a click on this marker
MyLocation is géoPosition
MyLocation.Latitude = 43.613708
MyLocation.Longitude = 3.876972
MyMarker is Marker
MyMarker.Position = MyLocation
MyMarker.ActionClick = ProcMarkerClick
MapAddMarker("MapControl", MyMarker)
//------------------------------------------
PROCEDURE ProcMarkerClick(m is Marker)
ToastDisplay(StringBuild("Position: %1 N, %2 E ", m.Position.Latitude, m.Position.Longitude))
Remarks

Properties specific to Marker variables

The following properties can be used to handle Marker variables:
Property nameType usedEffect
ActionClickProcedure nameName of the WLanguage procedure called when the user clicks the marker displayed in the Map control.
This procedure has the following format:
PROCEDURE <Procedure name>(<Marker>)
where <Marker> is a Marker variable corresponding to the marker that was clicked by the user.
If this property corresponds to an empty string (""), no action will be performed on click.
Remark: it is recommended to use global procedures. If the procedure is local, its name must be prefixed by the full name of the object to which the procedure belongs (example for a local window procedure: "WIN_Window1.MyProcedure").
WEBDEV - Server codeWEBDEV - Browser code This procedure can be a Browser or Server procedure.
ActionClickPopupCharacter stringName of the WLanguage procedure called when the user clicks the marker popup.
This procedure has the following format:
PROCEDURE <Procedure name>(<Marker>)
where <Marker> is a Marker variable corresponding to the marker associated with the popup.
If this property corresponds to an empty string (""), no action will be performed on click.
WEBDEV - Server codeWEBDEV - Browser code This procedure can be a Browser or Server procedure.
PHP This property is not available.
ActionDragCharacter stringName of the WLanguage procedure called when the user moves the marker displayed in the Map control (if the Movable property is set to True).
This procedure has the following format:
PROCEDURE <Procedure name>(<Marker>)
where <Marker> is a Marker variable corresponding to the moved marker.
This procedure is called when the user releases the marker.
If this property corresponds to an empty string (""), no action will be performed.
WEBDEV - Server codeWEBDEV - Browser code This procedure can be a Browser or Server procedure.
PHP This property is not available.
AlignmentInteger constantMode for aligning the marker when it is displayed on a map:
  • mkBottom: Marker displayed at the bottom of the position.
  • mkCenter: Marker displayed on the position.
  • mkRight: Marker displayed on the right of the position.
  • mkLeft: Marker displayed on the left of the position.
  • mkTop: Marker displayed at the top of the position.
ClusterBoolean
  • True if the marker is to be grouped in a cluster if necessary,
  • False otherwise.
Remark: A new optional event is available: "Grouping of markers".
  • This event is run each time a marker cluster is created or modified on the Map control.
  • It takes an array of Marker variables as parameter. This array corresponds to the markers in the cluster.
  • This event can return an image or a MarkerImage variable that will be used to represent the cluster on the map. If this event does not return a value (or returns an empty string), the cluster will be displayed in default mode.
PHP This property is not available.
DescriptionCharacter stringDescription of the marker, used for example to store the address corresponding to the position of the marker.
The text of this description is used in the marker popup.
This property is optional.
ImageCharacter string or MarkerImage variable
  • Path of the image corresponding to the icon associated with the marker.
  • MarkerImage variable used to customize the marker image.
If this property is not specified, the default image of the Map control will be used. This image can be specified in the "General" tab of the control description window.
Remark: On the map, the icon associated with the marker will be displayed just above the specified position.
MovableBoolean
  • True if the marker can be moved by the user (Drag and Drop),
  • False otherwise.
Remark: If the marker is movable, a new optional event is available: "Move marker". This event takes as parameter the Marker variable associated with the moved marker. The geographic position associated with the marker is automatically updated.
PHP This property is not available.
NameCharacter stringName of the marker.
Remarks:
  • This property is optional: if no name is specified, a random name is associated with the marker.
  • If a popup is displayed, it will display this name and the marker description.
  • When adding a marker named like an existing marker, MapAddMarker fails: the marker is not added.
NoteAny typeUsed to store additional information (not be visible to the user) about the marker.
PHP This property is not available.
OpacityIntegerPercentage of opacity of the marker on the Map control.
PHP This property is not available.
PositiongeoPosition variableGeographical position (latitude and longitude) at which the marker must be displayed.
If no position is associated with the marker, the Position property will return NULL
WithPopupBoolean
  • True if a popup can be displayed when the marker is clicked on,
  • False otherwise. The popup displays the name (Name property) and the description of the marker (Description property).
The popup can be customized with the InternalPagePopup or InternalWindowPopup properties.
PHP This property is not available.
ZOrderIntegerZ-order of the marker in relation to the other markers in the Map control. Allows you to manage overlays.
A marker with a high Z-order will be drawn over a marker with a lower Z-order.
This property is set to 0 by default.
PHP This property is not available.

Functions that use Marker variables

MapAddMarkerAdds a new marker onto a map displayed in a Map control.
MapDeleteMarkerDeletes a marker from a map displayed by a Map control.
MapModifyMarkerModifies a marker displayed in a Map control.

Reinitialization

You can use VariableReset to reset the content of a Marker variable.
Related Examples:
WM Geolocation Cross-platform examples (WINDEV Mobile): WM Geolocation
[ + ] This example explains how to perform proximity searches with geolocation :
- search around me
- search in a city, at a given address, or close to a specific address.
The results are displayed in a looper and in a map with markers.
WM Sports Cross-platform examples (WINDEV Mobile): WM Sports
[ + ] This example is a sport application used to save your performances.
The application calculates the distance, the time, the average speed and the number of calories spent according to the sport.
The run is displayed on a map control via markers and an itinerary.

The example also includes a server part used to synchronize the user data.
This webservice is available in the WEBDEV "WW_Sports" example.
WD Extended Map Training (WINDEV): WD Extended Map
[ + ] This example shows the different features of the Map control in desktop (Windows) and mobile (Android, iOS) devices
Minimum version required
  • Version 17
This page is also available for…
Comments
Click [Add] to post a comment

Last update: 07/04/2023

Send a report | Local help