diff --git a/docs/docs/AllConstants.html b/docs/docs/AllConstants.html index 21ed921..547ef52 100644 --- a/docs/docs/AllConstants.html +++ b/docs/docs/AllConstants.html @@ -53,91 +53,122 @@

All Constants

Default pattern of tile file path.

+EngineCapabilities +OSM.NetworkRequest.RTL +

Capabilities of RTL engine.

+ + EngineCapabilities OSM.NetworkRequest.Synapse

Capabilities of Synapse engine

- + EngineCapabilities OSM.NetworkRequest.WinInet

Capabilities of WinInet engine

- + GDI_HANDLES_LIMIT OSM.TileStorage

Default overall limit is 10k per process, choose reasonable number below this limit

- + GDI_PER_BMP OSM.TileStorage

Number of GDI handles per TBitmap

- + GDI_PER_PNG OSM.TileStorage

Number of GDI handles per TPngImage

- + HTTPProxyProto OSM.NetworkRequest

Prefix to add to proxy URLs if it only contains host:port - some URL parsers handle such inputs as proto:path

- + HTTPTLSProto OSM.NetworkRequest

 

- + LayersAll OSM.MapControl

Constant containing all numbers of layers

- + LayersNone OSM.MapControl

Constant containing no layers

- + ReqTimeout OSM.NetworkRequest

Timeout for connect and request

- + SampleHeaders OSM.NetworkRequest

Headers that you could add to TNetworkRequestQueue.

- + SampleUserAgent OSM.NetworkRequest

 

- + SystemProxy OSM.NetworkRequest

Internal constant to designate OS-wide proxy

- + S_Lbl_Loading OSM.MapControl -

 

+

Default pattern to draw on currently loading tiles

- + TileMetersPerPixelOnEquator OSM.SlippyMapUtils -

See https://wiki.openstreetmap.org/wiki/Zoom_levels Level Degree Area m / pixel ˜Scale # Tiles 0 360 whole world 156,412 1:500 million 1 1 180 78,206 1:250 million 4 2 90 39,103 1:150 million 16 3 45 19,551 1:70 million 64 4 22.5 9,776 1:35 million 256 5 11.25 4,888 1:15 million 1,024 6 5.625 2,444 1:10 million 4,096 7 2.813 1,222 1:4 million 16,384 8 1.406 610.984 1:2 million 65,536 9 0.703 wide area 305.492 1:1 million 262,144 10 0.352 152.746 1:500,000 1,048,576 11 0.176 area 76.373 1:250,000 4,194,304 12 0.088 38.187 1:150,000 16,777,216 13 0.044 village/town 19.093 1:70,000 67,108,864 14 0.022 9.547 1:35,000 268,435,456 15 0.011 4.773 1:15,000 1,073,741,824 16 0.005 small road 2.387 1:8,000 4,294,967,296 17 0.003 1.193 1:4,000 17,179,869,184 18 0.001 0.596 1:2,000 68,719,476,736 19 0.0005 0.298 1:1,000 274,877,906,944 20 0.00025 mid-sized bldng 0.149 1:5,00 1,099,511,627,776

+

See https://wiki.openstreetmap.org/wiki/Zoom_levels

+ +
+Level   Degree  Area            m / pixel       ˜Scale          # Tiles
+0       360     whole world     156,412         1:500 million   1
+1       180                     78,206          1:250 million   4
+2       90                      39,103          1:150 million   16
+3       45                      19,551          1:70 million    64
+4       22.5                    9,776           1:35 million    256
+5       11.25                   4,888           1:15 million    1,024
+6       5.625                   2,444           1:10 million    4,096
+7       2.813                   1,222           1:4 million     16,384
+8       1.406                   610.984         1:2 million     65,536
+9       0.703   wide area       305.492         1:1 million     262,144
+10      0.352                   152.746         1:500,000       1,048,576
+11      0.176   area            76.373          1:250,000       4,194,304
+12      0.088                   38.187          1:150,000       16,777,216
+13      0.044   village/town    19.093          1:70,000        67,108,864
+14      0.022                   9.547           1:35,000        268,435,456
+15      0.011                   4.773           1:15,000        1,073,741,824
+16      0.005   small road      2.387           1:8,000         4,294,967,296
+17      0.003                   1.193           1:4,000         17,179,869,184
+18      0.001                   0.596           1:2,000         68,719,476,736
+19      0.0005                  0.298           1:1,000         274,877,906,944
+20      0.00025 mid-sized bldng 0.149           1:5,00          1,099,511,627,776
+ +

- + TILE_BITMAP_SIZE OSM.TileStorage

Amount of bytes that a single tile bitmap occupies in memory.

- + TILE_IMAGE_HEIGHT OSM.SlippyMapUtils

Height of map tile in pixels

- + TILE_IMAGE_WIDTH OSM.SlippyMapUtils

Width of map tile in pixels

diff --git a/docs/docs/AllFunctions.html b/docs/docs/AllFunctions.html index 3ac4c74..922a2a1 100644 --- a/docs/docs/AllFunctions.html +++ b/docs/docs/AllFunctions.html @@ -20,7 +20,7 @@

All Functions and Procedures

CalcLinDistanceInMeter OSM.SlippyMapUtils -

Calculates distance between two geo points in meters Other

+

Calculates distance between two geo points in meters

CheckEngineCap @@ -70,12 +70,12 @@

All Functions and Procedures

InMap OSM.SlippyMapUtils -

Checks if point Pt is inside a map at zoom level Zoom

+

Checks if rect Rc is inside a map at zoom level Zoom

InMap OSM.SlippyMapUtils -

Checks if rect Rc is inside a map at zoom level Zoom

+

Checks if point Pt is inside a map at zoom level Zoom

IsHTTPError @@ -90,7 +90,7 @@

All Functions and Procedures

LongitudeToMapCoord OSM.SlippyMapUtils -

Converts geo coord in degrees to map coord in pixels Degrees to pixels

+

Converts geo coord in degrees to map coord in pixels

MapCoordToLatitude @@ -100,7 +100,7 @@

All Functions and Procedures

MapCoordToLongitude OSM.SlippyMapUtils -

Converts map coord in pixels to geo coord in degrees Pixels to degrees

+

Converts map coord in pixels to geo coord in degrees

MapHeight @@ -110,12 +110,12 @@

All Functions and Procedures

MapToGeoCoords OSM.SlippyMapUtils -

Converts map point in pixels to geo point in degrees

+

Converts map rect in pixels to geo rect in degrees

MapToGeoCoords OSM.SlippyMapUtils -

Converts map rect in pixels to geo rect in degrees

+

Converts map point in pixels to geo point in degrees

MapWidth @@ -125,7 +125,7 @@

All Functions and Procedures

NetworkRequest OSM.NetworkRequest.RTL -

Capabilities of RTL engine Procedure executing a network request.

+

Procedure executing a network request.

NetworkRequest @@ -148,75 +148,74 @@

All Functions and Procedures

Add class of tiles provider to global TilesProviders array.

+ShiftStateIs +OSM.MapControl +

Determine whether current ShiftState corresponds to desired one (that is, if mouse button and pressed modifiers are the same - not a simple comparison because TShiftState could include additional entries like "Pen", "Touch" and so on.

+ + TileCount OSM.SlippyMapUtils -

Returns count of tiles on Zoom level (= 2ˆZoom) Tile utils

+

Returns count of tiles on Zoom level (= 2ˆZoom)

- + TilesEqual OSM.SlippyMapUtils

Compares tiles

- + TileToStr OSM.SlippyMapUtils

Returns standartized string representation of Tile

- + TileValid OSM.SlippyMapUtils

Checks Tile fields for validity

- + ToInnerCoords OSM.MapControl -

Convert absolute map rect to a rect inside a viewport having given top-left point

+

Convert absolute map coords to a point inside a viewport having given top-left point

- + ToInnerCoords OSM.MapControl -

Convert absolute map coords to a point inside a viewport having given top-left point

- - - -

* Like Client<=>Screen

+

Convert absolute map rect to a rect inside a viewport having given top-left point

- + ToOuterCoords OSM.MapControl

Convert a point inside a viewport having given top-left point to absolute map coords

- + ToOuterCoords OSM.MapControl

Convert a rect inside a viewport having given top-left point to absolute map rect

- + ToTileBoundary OSM.SlippyMapUtils

Align absolute map rect to tile boundaries

- + ToTileHeightGreater OSM.SlippyMapUtils

Ceil vertical map coord to tile size

- + ToTileHeightLesser OSM.SlippyMapUtils

Floor vertical map coord to tile size

- + ToTileWidthGreater OSM.SlippyMapUtils -

Ceil horizontal map coord to tile size Ceil value to tile size

+

Ceil horizontal map coord to tile size

- + ToTileWidthLesser OSM.SlippyMapUtils -

Floor horizontal map coord to tile size Floor value to tile size

+

Floor horizontal map coord to tile size


Generated by PasDoc 0.16.0. diff --git a/docs/docs/AllIdentifiers.html b/docs/docs/AllIdentifiers.html index ccc2d01..6da6237 100644 --- a/docs/docs/AllIdentifiers.html +++ b/docs/docs/AllIdentifiers.html @@ -20,7 +20,7 @@

All Identifiers

CalcLinDistanceInMeter OSM.SlippyMapUtils -

Calculates distance between two geo points in meters Other

+

Calculates distance between two geo points in meters

CheckEngineCap @@ -73,190 +73,200 @@

All Identifiers

Default pattern of tile file path.

+EngineCapabilities +OSM.NetworkRequest.RTL +

Capabilities of RTL engine.

+ + EngineCapabilities OSM.NetworkRequest.Synapse

Capabilities of Synapse engine

- + EngineCapabilities OSM.NetworkRequest.WinInet

Capabilities of WinInet engine

- + EnsureInMap OSM.SlippyMapUtils

Ensures rect Rc is inside a map at zoom level Zoom, corrects values if necessary

- + EnsureInMap OSM.SlippyMapUtils

Ensures point Pt is inside a map at zoom level Zoom, corrects values if necessary

- + FormatTileURL OSM.TilesProvider

Format URL for a given tile using OpenLayers-compatible URL template.

- + GDI_HANDLES_LIMIT OSM.TileStorage

Default overall limit is 10k per process, choose reasonable number below this limit

- + GDI_PER_BMP OSM.TileStorage

Number of GDI handles per TBitmap

- + GDI_PER_PNG OSM.TileStorage

Number of GDI handles per TPngImage

- -GeoCoordsToMap -OSM.SlippyMapUtils -

Converts geo point in degrees to map point in pixels

- GeoCoordsToMap OSM.SlippyMapUtils

Converts geo rect in degrees to map rect in pixels

+GeoCoordsToMap +OSM.SlippyMapUtils +

Converts geo point in degrees to map point in pixels

+ + GetScaleBarParams OSM.SlippyMapUtils

Calculates parameters of map scalebar according to zoom level Zoom

- + HTTPProxyProto OSM.NetworkRequest

Prefix to add to proxy URLs if it only contains host:port - some URL parsers handle such inputs as proto:path

- + HTTPTLSProto OSM.NetworkRequest

 

- + InMap OSM.SlippyMapUtils

Checks if point Pt is inside a map at zoom level Zoom

- + InMap OSM.SlippyMapUtils

Checks if rect Rc is inside a map at zoom level Zoom

- + IsHTTPError OSM.NetworkRequest

Return true if response code means HTTP error

- + LatitudeToMapCoord OSM.SlippyMapUtils

Converts geo coord in degrees to map coord in pixels

- + LayersAll OSM.MapControl

Constant containing all numbers of layers

- + LayersNone OSM.MapControl

Constant containing no layers

- + LongitudeToMapCoord OSM.SlippyMapUtils -

Converts geo coord in degrees to map coord in pixels Degrees to pixels

+

Converts geo coord in degrees to map coord in pixels

- + MapCoordToLatitude OSM.SlippyMapUtils

Converts map coord in pixels to geo coord in degrees

- + MapCoordToLongitude OSM.SlippyMapUtils -

Converts map coord in pixels to geo coord in degrees Pixels to degrees

+

Converts map coord in pixels to geo coord in degrees

- + MapHeight OSM.SlippyMapUtils

Returns height of map at zoom level Zoom in pixels

- + MapToGeoCoords OSM.SlippyMapUtils

Converts map rect in pixels to geo rect in degrees

- + MapToGeoCoords OSM.SlippyMapUtils

Converts map point in pixels to geo point in degrees

- + MapWidth OSM.SlippyMapUtils

Returns width of map at zoom level Zoom in pixels

- + NetworkRequest OSM.NetworkRequest.RTL -

Capabilities of RTL engine Procedure executing a network request.

+

Procedure executing a network request.

- + NetworkRequest OSM.NetworkRequest.Synapse

Procedure executing a network request.

- + NetworkRequest OSM.NetworkRequest.WinInet

Procedure executing a network request.

- + PMapMarkCaptionStyle OSM.MapControl

 

- + PMapMarkGlyphStyle OSM.MapControl

 

- + PTile OSM.SlippyMapUtils

 

- + RectFromPoints OSM.SlippyMapUtils

Construct TRect from two TPoint-s

- + RegisterTilesProvider OSM.TilesProvider

Add class of tiles provider to global TilesProviders array.

- + ReqTimeout OSM.NetworkRequest

Timeout for connect and request

- + SampleHeaders OSM.NetworkRequest

Headers that you could add to TNetworkRequestQueue.

- + SampleUserAgent OSM.NetworkRequest

 

+ +ShiftStateIs +OSM.MapControl +

Determine whether current ShiftState corresponds to desired one (that is, if mouse button and pressed modifiers are the same - not a simple comparison because TShiftState could include additional entries like "Pen", "Touch" and so on.

+ SystemProxy OSM.NetworkRequest @@ -265,7 +275,7 @@

All Identifiers

S_Lbl_Loading OSM.MapControl -

 

+

Default pattern to draw on currently loading tiles

TBlockingNetworkRequestProc @@ -325,12 +335,38 @@

All Identifiers

TileCount OSM.SlippyMapUtils -

Returns count of tiles on Zoom level (= 2ˆZoom) Tile utils

+

Returns count of tiles on Zoom level (= 2ˆZoom)

TileMetersPerPixelOnEquator OSM.SlippyMapUtils -

See https://wiki.openstreetmap.org/wiki/Zoom_levels Level Degree Area m / pixel ˜Scale # Tiles 0 360 whole world 156,412 1:500 million 1 1 180 78,206 1:250 million 4 2 90 39,103 1:150 million 16 3 45 19,551 1:70 million 64 4 22.5 9,776 1:35 million 256 5 11.25 4,888 1:15 million 1,024 6 5.625 2,444 1:10 million 4,096 7 2.813 1,222 1:4 million 16,384 8 1.406 610.984 1:2 million 65,536 9 0.703 wide area 305.492 1:1 million 262,144 10 0.352 152.746 1:500,000 1,048,576 11 0.176 area 76.373 1:250,000 4,194,304 12 0.088 38.187 1:150,000 16,777,216 13 0.044 village/town 19.093 1:70,000 67,108,864 14 0.022 9.547 1:35,000 268,435,456 15 0.011 4.773 1:15,000 1,073,741,824 16 0.005 small road 2.387 1:8,000 4,294,967,296 17 0.003 1.193 1:4,000 17,179,869,184 18 0.001 0.596 1:2,000 68,719,476,736 19 0.0005 0.298 1:1,000 274,877,906,944 20 0.00025 mid-sized bldng 0.149 1:5,00 1,099,511,627,776

+

See https://wiki.openstreetmap.org/wiki/Zoom_levels

+ +
+Level   Degree  Area            m / pixel       ˜Scale          # Tiles
+0       360     whole world     156,412         1:500 million   1
+1       180                     78,206          1:250 million   4
+2       90                      39,103          1:150 million   16
+3       45                      19,551          1:70 million    64
+4       22.5                    9,776           1:35 million    256
+5       11.25                   4,888           1:15 million    1,024
+6       5.625                   2,444           1:10 million    4,096
+7       2.813                   1,222           1:4 million     16,384
+8       1.406                   610.984         1:2 million     65,536
+9       0.703   wide area       305.492         1:1 million     262,144
+10      0.352                   152.746         1:500,000       1,048,576
+11      0.176   area            76.373          1:250,000       4,194,304
+12      0.088                   38.187          1:150,000       16,777,216
+13      0.044   village/town    19.093          1:70,000        67,108,864
+14      0.022                   9.547           1:35,000        268,435,456
+15      0.011                   4.773           1:15,000        1,073,741,824
+16      0.005   small road      2.387           1:8,000         4,294,967,296
+17      0.003                   1.193           1:4,000         17,179,869,184
+18      0.001                   0.596           1:2,000         68,719,476,736
+19      0.0005                  0.298           1:1,000         274,877,906,944
+20      0.00025 mid-sized bldng 0.149           1:5,00          1,099,511,627,776
+ +

TilesEqual @@ -403,6 +439,16 @@

All Identifiers

 

+TMapMarkFindOption +OSM.MapControl +

Options for TMapMarkList.Find.

+ + +TMapMarkFindOptions +OSM.MapControl +

If not set (default), consider all mapmarks

+ + TMapMarkGlyphShape OSM.MapControl

Shape of mapmark glyph

@@ -420,7 +466,7 @@

All Identifiers

TMapMouseMode OSM.MapControl -

Mode of handling of plain left mouse button press

+

Mode of current handling of mouse events:

TMapOption @@ -450,18 +496,12 @@

All Identifiers

ToInnerCoords OSM.MapControl -

Convert absolute map rect to a rect inside a viewport having given top-left point

+

Convert absolute map coords to a point inside a viewport having given top-left point

ToInnerCoords OSM.MapControl -

Convert absolute map coords to a point inside a viewport having given top-left point

- - - -

* Like Client<=>Screen

+

Convert absolute map rect to a rect inside a viewport having given top-left point

TOnDrawMapMark @@ -484,14 +524,14 @@

All Identifiers

Notification of an action over a mapmark in a list

-TOnSelectionBox +TOnMapMarkMouseButtonEvent OSM.MapControl -

Callback to react on selection by mouse

+

Callback to react on mouse button press/release

-ToOuterCoords +TOnSelectionBox OSM.MapControl -

Convert a point inside a viewport having given top-left point to absolute map coords

+

Callback to react on selection by mouse

ToOuterCoords @@ -499,71 +539,76 @@

All Identifiers

Convert a rect inside a viewport having given top-left point to absolute map rect

+ToOuterCoords +OSM.MapControl +

Convert a point inside a viewport having given top-left point to absolute map coords

+ + TOpenTopoMapTilesProvider OSM.TilesProvider.OpenTopoMap

OpenStreetMap tile image provider

- + TOSMTilesProvider OSM.TilesProvider.OSM

OpenStreetMap tile image provider

- + ToTileBoundary OSM.SlippyMapUtils

Align absolute map rect to tile boundaries

- + ToTileHeightGreater OSM.SlippyMapUtils

Ceil vertical map coord to tile size

- + ToTileHeightLesser OSM.SlippyMapUtils

Floor vertical map coord to tile size

- + ToTileWidthGreater OSM.SlippyMapUtils -

Ceil horizontal map coord to tile size Ceil value to tile size

+

Ceil horizontal map coord to tile size

- + ToTileWidthLesser OSM.SlippyMapUtils -

Floor horizontal map coord to tile size Floor value to tile size

+

Floor horizontal map coord to tile size

- + TTile OSM.SlippyMapUtils

Properties of a map tile

- + TTileObjectCache OSM.TileStorage

Abstract object cache class indexed by tiles with fixed capacity organised as queue.

- + TTilesProvider OSM.TilesProvider

Abstract base class for tile image provider.

- + TTilesProviderClass OSM.TilesProvider

 

- + TTileStorage OSM.TileStorage

Class that encapsulates memory and file cache of tile images.

- + TTileStorageOption OSM.TileStorage

Flags for TTileStorage

- + TTileStorageOptions OSM.TileStorage

 

diff --git a/docs/docs/AllTypes.html b/docs/docs/AllTypes.html index b991d31..87689e5 100644 --- a/docs/docs/AllTypes.html +++ b/docs/docs/AllTypes.html @@ -73,6 +73,16 @@

All Types

 

+TMapMarkFindOption +OSM.MapControl +

Options for TMapMarkList.Find.

+ + +TMapMarkFindOptions +OSM.MapControl +

If not set (default), consider all mapmarks

+ + TMapMarkGlyphShape OSM.MapControl

Shape of mapmark glyph

@@ -80,7 +90,7 @@

All Types

TMapMouseMode OSM.MapControl -

Mode of handling of plain left mouse button press

+

Mode of current handling of mouse events:

TMapOption @@ -123,21 +133,26 @@

All Types

Notification of an action over a mapmark in a list

+TOnMapMarkMouseButtonEvent +OSM.MapControl +

Callback to react on mouse button press/release

+ + TOnSelectionBox OSM.MapControl

Callback to react on selection by mouse

- + TTilesProviderClass OSM.TilesProvider

 

- + TTileStorageOption OSM.TileStorage

Flags for TTileStorage

- + TTileStorageOptions OSM.TileStorage

 

diff --git a/docs/docs/OSM.MapControl.TMapControl.html b/docs/docs/OSM.MapControl.TMapControl.html index f754981..7c70a4b 100644 --- a/docs/docs/OSM.MapControl.TMapControl.html +++ b/docs/docs/OSM.MapControl.TMapControl.html @@ -39,6 +39,14 @@

Description

Public MapMarkCaptionFont: TFont; + +Public +SelectionShiftState: TShiftState; + + +Public +DragShiftState: TShiftState; +

Methods

@@ -120,6 +128,14 @@

Description

+ + + + + + + + @@ -167,7 +183,7 @@

Description

- + @@ -205,6 +221,14 @@

Description

+ + + + + + + +
Publicfunction MapMarkVisible(MapMark: TMapMark): Boolean; inline;
Publicfunction MapMarkAtPos(const MapPt: TPoint): TMapMark;
Public procedure SetCacheImageProperties(TilesHorz, TilesVert, MarginSize: Cardinal);
Publicproperty MouseMode: TMapMouseMode read FMouseMode write FMouseMode;property MouseMode: TMapMouseMode read FMouseMode write SetMouseMode;
Public Public property OnSelectionBox: TOnSelectionBox read FOnSelectionBox write FOnSelectionBox;
Publicproperty OnMapMarkMouseDown: TOnMapMarkMouseButtonEvent read FOnMapMarkMouseDown write FOnMapMarkMouseDown;
Publicproperty OnMapMarkMouseUp: TOnMapMarkMouseButtonEvent read FOnMapMarkMouseUp write FOnMapMarkMouseUp;

Description

Fields

@@ -238,6 +262,26 @@

Fields

Default font of mapmarks. New items will be init-ed with this value

+ + + + + + +
PublicSelectionShiftState: TShiftState;
+

+Modifiers and mouse buttons combination to enter selection state on mouse down. Assigning this property removes necessity of handling "mouse down" event just for changing map state.

+
+ + + + + + +
PublicDragShiftState: TShiftState;
+

+Modifiers and mouse buttons combination to enter dragging state on mouse down. Assigning this property removes necessity of handling "mouse down" event just for changing map state.

+

Methods

@@ -272,7 +316,7 @@

Methods

-Convert a point from map pixel coords to geo coords Pixels => degrees

+Convert a point from map pixel coords to geo coords

@@ -292,7 +336,7 @@

Methods

-Convert a point from geo coords to map pixel coords Degrees => pixels

+Convert a point from geo coords to map pixel coords

@@ -352,7 +396,7 @@

Methods

- + - + - + - + - + + + + + + + + + + + + + + + + + - + - + @@ -86,6 +102,10 @@

Description

+ + + +

-Convert map points to scrollbox inner coordinates (not client!) ! Compiler-specific ! TScrollBox is different in different compilers.

+Convert map points to scrollbox inner coordinates (not client!)
! Compiler-specific !
TScrollBox is different in different compilers.

  • FPC considers internal area just as scrollbars' range are set (that is, whole scrollable area inside the box).

  • @@ -399,13 +443,7 @@

    Methods

-Set zoom level to new value and reposition to given point

- -
    -
  • new methods

  • -
- -

* Set zoom level to new value and reposition to given point

+Set zoom level to new value and reposition to given point

Parameters
Value
@@ -448,6 +486,26 @@
Parameters
+ + + +
Publicfunction MapMarkVisible(MapMark: TMapMark): Boolean; inline;
+

+Returns mapmark visibility based on mapmark's own property and also on currently selected visible layers of the map

+
+ + + + + + +
Publicfunction MapMarkAtPos(const MapPt: TPoint): TMapMark;
+

+Returns most recently added visible map mark located at given map point considering its glyph size.

+
+ + + +

+Set of properties that differ from map's global values

+
Public procedure SetCacheImageProperties(TilesHorz, TilesVert, MarginSize: Cardinal);
@@ -594,7 +652,7 @@

Properties

- + +
Publicproperty MouseMode: TMapMouseMode read FMouseMode write FMouseMode;property MouseMode: TMapMouseMode read FMouseMode write SetMouseMode;

@@ -690,7 +748,27 @@

Properties

-Called when selection with mouse was made

+Called when selection with mouse changes

+
+ + + + + + +
Publicproperty OnMapMarkMouseDown: TOnMapMarkMouseButtonEvent read FOnMapMarkMouseDown write FOnMapMarkMouseDown;
+

+Called when user presses a mouse button above a mapmark

+
+ + + + + +
Publicproperty OnMapMarkMouseUp: TOnMapMarkMouseButtonEvent read FOnMapMarkMouseUp write FOnMapMarkMouseUp;
+

+Called when user releases a mouse button above a mapmark


Generated by PasDoc 0.16.0. diff --git a/docs/docs/OSM.MapControl.TMapMark.html b/docs/docs/OSM.MapControl.TMapMark.html index 4dc66d0..ec1bfaa 100644 --- a/docs/docs/OSM.MapControl.TMapMark.html +++ b/docs/docs/OSM.MapControl.TMapMark.html @@ -129,7 +129,9 @@

Fields

CustomProps: TMapMarkCustomProps;
@@ -162,9 +164,7 @@

Methods

destructor Destroy; override;
-

-TMapMark

-

Generated by PasDoc 0.16.0. diff --git a/docs/docs/OSM.MapControl.TMapMarkCaptionStyle.html b/docs/docs/OSM.MapControl.TMapMarkCaptionStyle.html index ab30611..8a7e8ed 100644 --- a/docs/docs/OSM.MapControl.TMapMarkCaptionStyle.html +++ b/docs/docs/OSM.MapControl.TMapMarkCaptionStyle.html @@ -27,22 +27,26 @@

Overview

- + - + - + - + + + + +
PublicColor: TColor;Visible: Boolean;
PublicBgColor: TColor;Color: TColor;
PublicDX: Integer;BgColor: TColor;
PublicDY: Integer;DX: Integer;
PublicDY: Integer;
Public Transparent: Boolean;
@@ -51,6 +55,16 @@

Fields

+ + + +
PublicVisible: Boolean;
+

+Visibility flag

+
+ + + +

+Caption background color if Transparent is False

+
Public Color: TColor;
@@ -62,7 +76,9 @@

Fields

BgColor: TColor;
@@ -70,7 +86,9 @@

Fields

+

+Caption offsets from the TopRight corner of mapmark glyph rectangle, in pixels

+
DX: Integer;
@@ -78,7 +96,9 @@

Fields

+

+Caption offsets from the TopRight corner of mapmark glyph rectangle, in pixels

+
DY: Integer;
@@ -86,7 +106,9 @@

Fields

+

+Caption transparency flag

+
Transparent: Boolean;

Generated by PasDoc 0.16.0. diff --git a/docs/docs/OSM.MapControl.TMapMarkList.html b/docs/docs/OSM.MapControl.TMapMarkList.html index c5287f4..f49b20c 100644 --- a/docs/docs/OSM.MapControl.TMapMarkList.html +++ b/docs/docs/OSM.MapControl.TMapMarkList.html @@ -21,7 +21,7 @@

Declaration

type TMapMarkList = class(TObject)

Description

-List of mapmarks. Items are sorted by layer number and painted in this order, ascending

+List of mapmarks. Items are sorted by layer number and painted in this order, ascending

Hierarchy

  • TObject
  • TMapMarkList

Overview

@@ -45,35 +45,51 @@

Description

Publicfunction Get(Index: Integer): TMapMark;function GetEnumerator: TObjectList<TMapMark>.TEnumerator; inline;
Publicfunction Find(const GeoCoords: TGeoPoint; ConsiderMapMarkSize: Boolean = True; StartIndex: Integer = -1): Integer; overload;function Get(Index: Integer): TMapMark; inline;
Publicfunction Find(const GeoRect: TGeoRect; ConsiderMapMarkSize: Boolean = True; StartIndex: Integer = -1): Integer; overload;function Find(const GeoCoords: TGeoPoint; Options: TMapMarkFindOptions = []; StartIndex: Integer = -1): Integer; overload;
Publicfunction NewItem: TMapMark;function Find(const GeoRect: TGeoRect; Options: TMapMarkFindOptions = []; StartIndex: Integer = -1): Integer; overload;
Publicfunction Add(const GeoCoords: TGeoPoint; const Caption: string; Layer: TMapLayer = 0): TMapMark; overload;function Find(const MapPt: TPoint; Options: TMapMarkFindOptions; StartIndex: Integer): Integer; overload;
Publicfunction Find(Data: Pointer): Integer; overload;
Publicfunction NewItem: TMapMark;
Publicfunction Add(const GeoCoords: TGeoPoint; const Caption: string; Layer: TMapLayer = 0): TMapMark; overload;
Public function Add(MapMark: TMapMark): TMapMark; overload;
Publicprocedure Delete(Ind: Integer); overload;
Publicprocedure Delete(MapMark: TMapMark);procedure Delete(MapMark: TMapMark); overload;
Publicfunction Count: Integer;function Count: Integer; inline;
Public Public property OnItemNotify: TOnItemNotify read FOnItemNotify write FOnItemNotify;
Publicproperty Items[Index: Integer]: TMapMark read Get;

Description

Methods

@@ -124,7 +144,15 @@

Methods

- + + + +
Publicfunction Get(Index: Integer): TMapMark;function GetEnumerator: TObjectList<TMapMark>.TEnumerator; inline;
+ + + + @@ -132,7 +160,7 @@

Methods

Publicfunction Get(Index: Integer): TMapMark; inline;
 
- +
Publicfunction Find(const GeoCoords: TGeoPoint; ConsiderMapMarkSize: Boolean = True; StartIndex: Integer = -1): Integer; overload;function Find(const GeoCoords: TGeoPoint; Options: TMapMarkFindOptions = []; StartIndex: Integer = -1): Integer; overload;

@@ -152,7 +180,7 @@

Methods

 idx := -1;
 repeat
-  idx := MapMarks.Find(Point, idx);
+  idx := MapMarks.Find(Point, [], idx);
   if idx = -1 then Break;
   ... do something with MapMarks[idx] ...
 until False;
@@ -165,9 +193,9 @@
Parameters
GeoCoords
- coordinates to search
-
ConsiderMapMarkSize
-
- widen an area to search by mapmark size
-
PrevIndex
+
Options
+
- set of search options
+
StartIndex
- index of previous found mapmark in the list. -1 (default) will start from the 1st element
Returns
@@ -176,7 +204,7 @@
Returns
- +
Publicfunction Find(const GeoRect: TGeoRect; ConsiderMapMarkSize: Boolean = True; StartIndex: Integer = -1): Integer; overload;function Find(const GeoRect: TGeoRect; Options: TMapMarkFindOptions = []; StartIndex: Integer = -1): Integer; overload;

@@ -186,6 +214,32 @@

Returns
+ + + +
Publicfunction Find(const MapPt: TPoint; Options: TMapMarkFindOptions; StartIndex: Integer): Integer; overload;
+

+The same as above but searches by map point in pixels

+
+ + + + + + +
Publicfunction Find(Data: Pointer): Integer; overload;
+

+Find map mark by its .Data field

+
Parameters
+
+
Data
+
- value to search for
+
+
Returns
+

index of mapmark in the list having .Data field same as Data, -1 if not found.

+ + + + + +
Public function NewItem: TMapMark;
@@ -216,20 +270,32 @@
Returns
- +
Publicprocedure Delete(MapMark: TMapMark);procedure Delete(Ind: Integer); overload;

-Remove mapmark object

+Remove mapmark object by index

- + +

+Remove given mapmark object

+ +
Publicfunction Count: Integer;procedure Delete(MapMark: TMapMark); overload;
+ + + + + +
Publicfunction Count: Integer; inline;
+

+Return count of elements in list

+
@@ -237,7 +303,9 @@
Returns
+

+Remove all elements

+
procedure Clear;

Properties

@@ -247,9 +315,17 @@

Properties

-Assigning a handler for this event allows implementing custom init, disposal of allocated memory etc.

+Assigning a handler for this event allows implementing custom init, disposal of allocated memory and so on

+ + + + + + +
Publicproperty Items[Index: Integer]: TMapMark read Get;

Generated by PasDoc 0.16.0. diff --git a/docs/docs/OSM.MapControl.html b/docs/docs/OSM.MapControl.html index 57500b6..4f64f54 100644 --- a/docs/docs/OSM.MapControl.html +++ b/docs/docs/OSM.MapControl.html @@ -67,6 +67,9 @@
See also
function ToOuterCoords(const StartPt: TPoint; const Rect: TRect): TRect; overload; inline;
function ShiftStateIs(Current, Desired: TShiftState): Boolean;

Types

@@ -95,6 +98,12 @@
See also
+ + + + + + @@ -113,7 +122,10 @@
See also
- + + + +
TOnItemNotify = procedure (Sender: TObject; Item: TMapMark; Action: TListNotification) of object;
TMapMarkFindOption = (...);
TMapMarkFindOptions = set of TMapMarkFindOption;
TMapOption = (...);
TOnDrawMapMark = procedure (Sender: TMapControl; Canvas: TCanvas; const Point: TPoint; MapMark: TMapMark; var Handled: Boolean) of object;
TOnSelectionBox = procedure (Sender: TMapControl; const GeoRect: TGeoRect) of object;TOnSelectionBox = procedure (Sender: TMapControl; const GeoRect: TGeoRect; Finished: Boolean) of object;
TOnMapMarkMouseButtonEvent = procedure (Sender: TMapControl; MapMark: TMapMark; Button: TMouseButton; Shift: TShiftState) of object;

Constants

@@ -140,6 +152,7 @@
See also
DefaultMapMarkCaptionStyle: TMapMarkCaptionStyle = ( + Visible: True; Color: clMenuText; BgColor: clWindow; DX: 3; @@ -164,13 +177,7 @@

Functions and Procedures

-Convert absolute map coords to a point inside a viewport having given top-left point

- -
    -
  • Utils

  • -
- -

* Like Client<=>Screen

+Convert absolute map coords to a point inside a viewport having given top-left point

@@ -200,6 +207,15 @@

Functions and Procedures

Convert a rect inside a viewport having given top-left point to absolute map rect

+ + + + + +
function ShiftStateIs(Current, Desired: TShiftState): Boolean;
+

+Determine whether current ShiftState corresponds to desired one (that is, if mouse button and pressed modifiers are the same - not a simple comparison because TShiftState could include additional entries like "Pen", "Touch" and so on. This function only checks Ctrl, Alt, Shift and Left, Right, Middle mouse buttons.

+

Types

@@ -285,6 +301,31 @@
Values
+ + + +
TMapMarkFindOption = (...);
+

+Options for TMapMarkList.Find. Default is empty set

+
Values
+
    +
  • +mfoConsiderGlyphSize: If set (for map pixels only): consider mapmark glyph size as well.
  • +
  • +mfoOnlyVisible: If set: consider only visible mapmarks.
  • +
+
+ + + + + +
TMapMarkFindOptions = set of TMapMarkFindOption;
+

+If not set (default), consider all mapmarks

+
+ +
TMapOption = (...);
@@ -312,13 +353,15 @@
Values

-Mode of handling of plain left mouse button press

+Mode of current handling of mouse events:

Values
  • -mmDrag
  • +mmNone: default handling - mouse doesn't activate the map +
  • +mmDragging: dragging the map
  • -mmSelect
  • +mmSelecting: drawing selection box
@@ -351,13 +394,22 @@
Values
- +
TOnSelectionBox = procedure (Sender: TMapControl; const GeoRect: TGeoRect) of object;TOnSelectionBox = procedure (Sender: TMapControl; const GeoRect: TGeoRect; Finished: Boolean) of object;

Callback to react on selection by mouse

+ + + + + +
TOnMapMarkMouseButtonEvent = procedure (Sender: TMapControl; MapMark: TMapMark; Button: TMouseButton; Shift: TShiftState) of object;
+

+Callback to react on mouse button press/release

+

Constants

@@ -410,6 +462,7 @@

Constants

+

+Default pattern to draw on currently loading tiles

+
DefaultMapMarkCaptionStyle: TMapMarkCaptionStyle = ( + Visible: True; Color: clMenuText; BgColor: clWindow; DX: 3; @@ -444,7 +497,9 @@

Constants

S_Lbl_Loading = 'Loading [%d : %d]...';

Author