Skip to main content
Table of Contents

TTMSFNCMapBoxMarker.Draggable Property

Enables dragging the marker on the map when set to True.

API unit family: TMSFNCMapBox Declaring type: TTMSFNCMapBoxMarker Type: Boolean

Syntax

FMX.TMSFNCMapBox.hppPascalC++
property Draggable: Boolean;
__property bool Draggable = {read=FDraggable, write=SetDraggable, default=0};

Default: False

Remarks

The default value is False.

Usage examples

Use draggable markers and Z index

Creates MapBox markers with draggable behavior, ZIndex ordering and an OnMarkerDragEnd event handler.

Use draggable markers and Z indexPascalC++
procedure TForm1.ConfigureEditableMarkers;
var
  LMainMarker: TTMSFNCMapBoxMarker;
  LSecondaryMarker: TTMSFNCMapBoxMarker;
begin
  LMainMarker := TMSFNCMapBox1.AddMarker(40.7073, -74.0093, 'Editable stop');
  LMainMarker.Draggable := True;
  LMainMarker.ZIndex := 10;

  LSecondaryMarker := TMSFNCMapBox1.AddMarker(40.7061, -74.0115, 'Background stop');
  LSecondaryMarker.Draggable := False;
  LSecondaryMarker.ZIndex := 1;

  TMSFNCMapBox1.OnMarkerDragEnd := TMSFNCMapBox1MarkerDragEnd;
end;

procedure TForm1.TMSFNCMapBox1MarkerDragEnd(Sender: TObject;
  AEventData: TTMSFNCMapsEventData);
begin
  if Assigned(AEventData.Marker) then
    AEventData.Marker.Title := 'Moved stop';
end;
void __fastcall TForm1::ConfigureEditableMarkers()
{
  TTMSFNCMapBoxMarker *LMainMarker = TMSFNCMapBox1->AddMarker(40.7073, -74.0093, "Editable stop");
  LMainMarker->Draggable = true;
  LMainMarker->ZIndex = 10;

  TTMSFNCMapBoxMarker *LSecondaryMarker = TMSFNCMapBox1->AddMarker(40.7061, -74.0115, "Background stop");
  LSecondaryMarker->Draggable = false;
  LSecondaryMarker->ZIndex = 1;

  TMSFNCMapBox1->OnMarkerDragEnd = TMSFNCMapBox1MarkerDragEnd;
}

void __fastcall TForm1::TMSFNCMapBox1MarkerDragEnd(TObject *Sender,
  TTMSFNCMapsEventData *AEventData)
{
  if (AEventData->Marker != nullptr)
    AEventData->Marker->Title = "Moved stop";
}

Read the related guide