diff --git a/CHANGELOG.md b/CHANGELOG.md index 0bbbf19..2732be4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,13 @@ +0.9.0 +===== + +- Added ability to use map tile provider other than OSM. Added HERE provider. Added property `Properties` to access provider-specific properties. + +`[BREAKING]` + +- OSM.NetworkRequest.pas, uses `TileProvider` object. `TNetworkRequestQueue.Create`, 3rd parameter is `TTilesProvider` and `GotTile` callback must be set via `OnGotTileBgThr` property +- OSM.MapControl.pas, uses `TileProvider` object. New `TMapControl.TilesProvider` property + 0.8.0 ===== diff --git a/README.md b/README.md index 49916c9..d052b58 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ OSM MapControl ============== -Delphi/Lazarus visual component for displaying OpenStreetMap map. Also includes helper classes for storing and downloading map tiles. +Delphi/Lazarus visual component for displaying a map. Could use any map tile provider (currently implemented OpenStreetMap and HERE). Also includes helper classes for storing and downloading map tiles. Demo project implements downloading map tiles from network. :exclamation: **Alpha version, interface could change** :exclamation: @@ -22,6 +22,8 @@ Project structure - `OSM.NetworkRequest` - utils and classes for network requesting of map tiles. Class `TNetworkRequestQueue` implements threaded non-blocking queue of network requests. Unit doesn't contain any real network request engine. - `OSM.NetworkRequest.Synapse`, `OSM.NetworkRequest.WinInet`, `OSM.NetworkRequest.RTL` contain concrete implementations of network requesting routines - `OSM.MapControl` contains classes `TMapMark` and `TMapMarkList` for managing a set of map points and `TMapControl` itself + - `OSM.TilesProvider` - base abstract class of map tile provider. + - `OSM.TilesProvider.OSM`, `OSM.TilesProvider.HERE` contain concrete implementations of map tile providers Full docs for all units listed above is available [here](https://fr0st-brutal.github.io/Delphi_OSMMap/)