User Tools

Site Tools


api:dk11:delphi:fmx.giscontrollegend.tgis_controllegend



TGIS_ControlLegend class

DK for Delphi | FMX.GisControlLegend.TGIS_ControlLegend | Classes | Constructors | Methods | Properties | Events

FireMonkey visual legend control for displaying GIS layers or hierarchy groups connected to an IGIS_Viewer.

Available also on: .NET WinForms | Java | ActiveX | Python.

Syntax

// Delphi
type
  [ComponentPlatformsAttribute(pidAllPlatforms)]
  TGIS_ControlLegend = class( TStyledControl, IGIS_LegendParent, IGIS_PrintableControl )
  end;
// C++ Builder
class PASCALIMPLEMENTATION TGIS_ControlLegend : public TStyledControl
{
};

Inheritance

→ TStyledControl

Implements

Constructors

Inherited Overrides Protected
Name Visibility Description
Create public Creates a FireMonkey legend control instance.
Destroy public Releases the legend control instance and its internal resources.

Methods

Inherited Overrides Protected
Name Visibility Description
Collapse(IGIS_HierarchyGroup) public Collapses the legend item associated with the specified hierarchy group.
Collapse(IGIS_HierarchyGroup; Boolean; Boolean) public Collapses the legend item associated with the specified hierarchy group.
Collapse(TGIS_Layer) public Collapses the legend item associated with the specified layer.
ControlClientHeight protected Gets the client height.
(Implements IGIS_LegendParent.ControlClientHeight)
ControlClientWidth protected Gets the client width.
(Implements IGIS_LegendParent.ControlClientWidth)
ControlDragCreateTemporaryContext protected Creates temporary context to avoid flickering.
(Implements IGIS_LegendParent.ControlDragCreateTemporaryContext)
ControlDragDrawBar protected Draws the drag insertion bar.
(Implements IGIS_LegendParent.ControlDragDrawBar)
ControlDragDrawNode protected Draws the drag image.
(Implements IGIS_LegendParent.ControlDragDrawNode)
ControlDragFreeNode protected Frees a node for dragging.
(Implements IGIS_LegendParent.ControlDragFreeNode)
ControlDragPrepareNode protected Draws a node for dragging.
(Implements IGIS_LegendParent.ControlDragPrepareNode)
ControlDragRenderTemporaryContext protected Renders the temporary context and destroys it.
(Implements IGIS_LegendParent.ControlDragRenderTemporaryContext)
ControlDrawFromCache protected Draws the cached legend content.
(Implements IGIS_LegendParent.ControlDrawFromCache)
ControlDrawNode protected Draws a node.
(Implements IGIS_LegendParent.ControlDrawNode)
ControlFullUpdate protected Causes repaint of the entire control.
(Implements IGIS_LegendParent.ControlFullUpdate)
ControlGetHScrollPosition protected Gets the horizontal scrollbar position.
(Implements IGIS_LegendParent.ControlGetHScrollPosition)
ControlGetVScrollPosition protected Gets the vertical scrollbar position.
(Implements IGIS_LegendParent.ControlGetVScrollPosition)
ControlHeight protected Gets the control height.
(Implements IGIS_LegendParent.ControlHeight)
ControlIsDesignMode protected Checks if the control is in design mode.
(Implements IGIS_LegendParent.ControlIsDesignMode)
ControlRenderer protected Gets the renderer instance.
(Implements IGIS_LegendParent.ControlRenderer)
ControlRepaint protected Repaints the control.
(Implements IGIS_LegendParent.ControlRepaint)
ControlRightToLeft protected Checks whether the control uses right-to-left layout.
(Implements IGIS_LegendParent.ControlRightToLeft)
ControlSetHScroll protected Sets the horizontal scrollbar range and position.
(Implements IGIS_LegendParent.ControlSetHScroll)
ControlSetHScrollPosition protected Sets horizontal scrollbar position.
(Implements IGIS_LegendParent.ControlSetHScrollPosition)
ControlSetVScroll protected Sets the vertical scrollbar range and position.
(Implements IGIS_LegendParent.ControlSetVScroll)
ControlSetVScrollPosition protected Sets vertical scrollbar position.
(Implements IGIS_LegendParent.ControlSetVScrollPosition)
ControlStyleCreateTemporaryContext protected Creates a temporary drawing context.
(Implements IGIS_LegendParent.ControlStyleCreateTemporaryContext)
ControlStyleDrawCheckBox protected Draws a check box.
(Implements IGIS_LegendParent.ControlStyleDrawCheckBox)
ControlStyleDrawExpandCollapseMarker protected Draws an expand/collapse marker.
(Implements IGIS_LegendParent.ControlStyleDrawExpandCollapseMarker)
ControlStyleDrawImage protected Draws a bitmap image using the parent's control style rendering.
(Implements IGIS_LegendParent.ControlStyleDrawImage)
ControlStyleDrawRectangle(Integer; Integer; Integer; Integer; TGIS_Color; TGIS_Color) protected Draws a rectangle.
(Implements IGIS_LegendParent.ControlStyleDrawRectangle)
ControlStyleDrawRectangle(TRect) protected Draws a rectangle.
(Implements IGIS_LegendParent.ControlStyleDrawRectangle)
ControlStyleDrawText protected Draws text.
(Implements IGIS_LegendParent.ControlStyleDrawText)
ControlStyleGetCheckBoxSize protected Returns the checkbox size for the current style and PPI.
(Implements IGIS_LegendParent.ControlStyleGetCheckBoxSize)
ControlStyleGetColor protected Gets the current background color.
(Implements IGIS_LegendParent.ControlStyleGetColor)
ControlStyleGetTextExtent protected Gets the text extent.
(Implements IGIS_LegendParent.ControlStyleGetTextExtent)
ControlStyleRenderTemporaryContext protected Renders the temporary context and destroys it.
(Implements IGIS_LegendParent.ControlStyleRenderTemporaryContext)
ControlStyleSetColor protected Sets style colors for legend drawing.
(Implements IGIS_LegendParent.ControlStyleSetColor)
ControlSubscribedUpdate protected Performs an update triggered by a subscription notification.
(Implements IGIS_LegendParent.ControlSubscribedUpdate)
ControlTouch protected Passes the touch event context.
(Implements IGIS_LegendParent.ControlTouch)
ControlUpdate protected Performs a control update.
(Implements IGIS_LegendParent.ControlUpdate)
ControlWidth protected Gets the control width.
(Implements IGIS_LegendParent.ControlWidth)
CreateCopy public Prepare a copy of the control for printing.
(Implements IGIS_PrintableControl.CreateCopy)
DoMouseLeave protected
DrawBmp public Draws the control on the specified bitmap.
Expand(IGIS_HierarchyGroup) public Expands the legend item associated with the specified hierarchy group.
Expand(IGIS_HierarchyGroup; Boolean; Boolean) public Expands the legend item associated with the specified hierarchy group.
Expand(TGIS_Layer) public Expands the legend item associated with the specified layer.
FreeCopy public Release a copy of the control created for printing.
(Implements IGIS_PrintableControl.FreeCopy)
GetNodeAt public Retrieves the legend tree node at the specified control position.
InvalidateItems public Forces invalidation of all legend items and schedules them for redraw.
IsExpanded(IGIS_HierarchyGroup) public Checks whether the legend item associated with the specified hierarchy group is expanded.
IsExpanded(TGIS_Layer) public Checks whether the legend item associated with the specified layer is expanded.
KeyDown protected Overrides the default KeyDown event behavior.
MouseDown protected Overrides the default MouseDown event behavior.
MouseMove protected Overrides the default MouseMove event behavior.
MouseUp protected Overrides the default MouseUp event behavior.
MouseWheel protected Overrides the default MouseWheel event behavior.
Paint protected
Painting protected
PrintBmp public Print the control on the given bitmap.
(Implements IGIS_PrintableControl.PrintBmp)
PrintClipboard public Prints the current state of the legend to the clipboard as a bitmap.
PrintPdf public Print the control on the given PDF context.
(Implements IGIS_PrintableControl.PrintPdf)
Resize protected
ShowLayerProperties(TGIS_Layer) public Shows the layer properties dialog for the specified layer.
ShowLayerProperties(TGIS_Layer; TGIS_ControlLegendFormSectionNode; TGIS_ParamsSection) public Shows the layer properties dialog for the specified layer.
TapDouble protected Handles a double tap action on the legend control.
TapLong protected Handles a long tap action on the legend control.
TapSingle protected Handles a single tap action on the legend control.

Properties

Inherited Protected
Name Visibility Description
Align published Standard FMX property.
Anchors published Standard FMX property.
BackgroundColor published Legend background color.
BiDiMode published Bidirectional text layout mode used by the legend.
BiDiModeFromTranslation published Controls whether BiDi mode is taken from the property value or from translation settings.
ClipChildren published Standard FMX property.
ClipParent published Standard FMX property.
CompactView published If True, the legend uses a compact view with smaller icons.
Cursor published Standard FMX property.
DialogOptions published Options controlling layer properties dialog behavior.
DragMode published Standard FMX property.
DrawIconStyle published Rendering style used for legend icons.
Enabled published Standard FMX property.
EnableDragHighlight published Standard FMX property.
Font published Display font.
FontColor published Display font color.
GIS_Group public Currently selected hierarchy group in the legend.
GIS_Groups public Currently selected hierarchy groups in the legend.
GIS_Layer public Currently selected layer in the legend.
GIS_Layers public Currently selected layers in the legend.
GIS_Viewer published Attached IGIS_Viewer instance used by the legend.
Height published Standard FMX property.
HitTest published Standard FMX property.
InternalName public Used internally by TatukGIS.
(Implements IGIS_PrintableControl.InternalName)
Locked published Standard FMX property.
Margins published Standard FMX property.
Mode published Legend display mode: flat layer list or hierarchy group tree.
Opacity published Standard FMX property.
Options published Legend behavior and display options.
Padding published Standard FMX property.
PopupMenu published Standard FMX property.
Position published Standard FMX property.
ReadOnly published If True, the legend ignores user input events.
ReverseOrder published True if legend entries in Layers mode are shown in reverse order, so the topmost layer in the attached IGIS_Viewer appears at the bottom of the legend.
RotationAngle published Standard FMX property.
RotationCenter published Standard FMX property.
Scale published Standard FMX property.
SelectedNode public Currently selected legend tree node.
Size published Standard FMX property.
TabOrder published Standard FMX property.
Visible published Standard FMX property.
Width published Standard FMX property.

Events

Inherited Protected
Name Visibility Description
GroupActiveChangeEvent published Fired when a hierarchy group is activated or deactivated.
GroupSelectEvent published Fired when a hierarchy group is selected in the legend.
LayerActiveChangeEvent published Fired when a layer is activated or deactivated.
LayerParamsChangeEvent published Fired when layer parameters change.
LayerSelectEvent published Fired when a layer is selected in the legend.
OnClick published Standard FMX event.
OnDblClick published Standard FMX event.
OnDragDrop published Standard FMX event.
OnDragEnd published Standard FMX event.
OnDragEnter published Standard FMX event.
OnDragLeave published Standard FMX event.
OnDragOver published Standard FMX event.
OnMouseDown published Standard FMX event.
OnMouseEnter published Standard FMX event.
OnMouseLeave published Standard FMX event.
OnMouseMove published Standard FMX event.
OnMouseUp published Standard FMX event.
OnMouseWheel published Standard FMX event.
OnPaint published Standard FMX event.
OnPainting published Standard FMX event.
OnResize published Standard FMX event.
OpenDialogEvent published Fired when the layer properties dialog is opened.
OrderChangeEvent published Fired when the layer order changes.
TapDoubleEvent published Fired for a double-tap or double-click gesture.
TapLongEvent published Fired for a long-press gesture.
TapSimpleEvent published Fired for a simple tap or click gesture.

Remarks

PURPOSE: Provides an interactive legend component for Geographic Information System (GIS) applications, showing layer or group entries, selection state, and expand/collapse structure.

BEHAVIOR: The control can work in layer-list mode or grouped tree mode, supports hit-testing and redraw, and integrates with printing, clipboard export, and layer properties dialogs.

USAGE: Place the control on a form, connectGIS_Viewer to anIGIS_Viewer instance, and useGIS_Layer,GIS_Layers,GIS_Group, orGIS_Groups to access the current selection.

CONSTRAINTS: A validIGIS_Viewer connection is required for normal operation. WhenReadOnly is enabled, the control ignores user interaction events.

Available metadata keys :

Metadata Values Default Description
TGIS_Legend.DefHeight size in pixels at 96 dpi 16 Default item height. Recalculated based on Font Size
TGIS_Legend.DefHeight16 size in pixels at 96 dpi 16 Default item height.
TGIS_Legend.DefLayerIconSize size in pixels at 96 dpi 24 Default layer icon size.
TGIS_Legend.DefBmpSize size in pixels at 96 dpi 28 Default size of bitmap[ used to present layer styles.

References

2026/08/30 01:46

Page Tools