LazMapViewer: Increment version number to 1.0.3. Fix design-time crash on high-dpi systems (https://forum.lazarus.freepascal.org/index.php/topic,72237.msg565302)

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@9839 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
wp_xxyyzz 2025-09-10 08:29:57 +00:00
parent 6fa4a63d5d
commit 878e1c6778
7 changed files with 69 additions and 69 deletions

View File

@ -1,11 +1,11 @@
object MainForm: TMainForm
Left = 590
Height = 586
Top = 184
Width = 750
Left = 410
Height = 609
Top = 94
Width = 907
Caption = 'LazMapViewer'
ClientHeight = 586
ClientWidth = 750
ClientHeight = 609
ClientWidth = 907
Font.Height = -12
ShowHint = True
LCLVersion = '4.99.0.0'
@ -14,9 +14,9 @@ object MainForm: TMainForm
OnShow = FormShow
object MapView: TMapView
Left = 0
Height = 586
Height = 609
Top = 0
Width = 475
Width = 631
Align = alClient
Cyclic = True
DefaultTrackColor = clBlue
@ -38,18 +38,18 @@ object MainForm: TMainForm
OnMouseUp = MapViewMouseUp
end
object PageControl: TPageControl
Left = 475
Height = 586
Left = 631
Height = 609
Top = 0
Width = 275
Width = 276
ActivePage = PgConfig
Align = alRight
TabIndex = 2
TabOrder = 1
object PgData: TTabSheet
Caption = 'Data'
ClientHeight = 558
ClientWidth = 267
ClientHeight = 581
ClientWidth = 268
object ZoomTrackBar: TTrackBar
AnchorSideLeft.Control = PgData
AnchorSideTop.Control = LblZoom
@ -59,7 +59,7 @@ object MainForm: TMainForm
Left = 2
Height = 38
Top = 19
Width = 263
Width = 264
Max = 19
Min = 1
Position = 1
@ -91,7 +91,7 @@ object MainForm: TMainForm
Left = 4
Height = 60
Top = 63
Width = 259
Width = 260
Anchors = [akTop, akLeft, akRight]
AutoSize = True
BorderSpacing.Left = 4
@ -99,7 +99,7 @@ object MainForm: TMainForm
BorderSpacing.Right = 4
Caption = 'Mouse position'
ClientHeight = 40
ClientWidth = 255
ClientWidth = 256
TabOrder = 1
object LblPositionLongitude: TLabel
AnchorSideLeft.Control = CbMouseCoords
@ -132,7 +132,7 @@ object MainForm: TMainForm
AnchorSideTop.Control = CbMouseCoords
AnchorSideRight.Control = CbMouseCoords
AnchorSideRight.Side = asrBottom
Left = 211
Left = 212
Height = 15
Top = 2
Width = 34
@ -149,7 +149,7 @@ object MainForm: TMainForm
AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = CbMouseCoords
AnchorSideRight.Side = asrBottom
Left = 211
Left = 212
Height = 15
Top = 19
Width = 34
@ -171,13 +171,13 @@ object MainForm: TMainForm
Left = 4
Height = 60
Top = 129
Width = 259
Width = 260
Anchors = [akTop, akLeft, akRight]
AutoSize = True
BorderSpacing.Top = 6
Caption = 'Center'
ClientHeight = 40
ClientWidth = 255
ClientWidth = 256
TabOrder = 2
object LblCenterLongitude: TLabel
AnchorSideLeft.Control = GbCenterCoords
@ -210,7 +210,7 @@ object MainForm: TMainForm
AnchorSideTop.Control = GbCenterCoords
AnchorSideRight.Control = GbCenterCoords
AnchorSideRight.Side = asrBottom
Left = 211
Left = 212
Height = 15
Top = 2
Width = 34
@ -227,7 +227,7 @@ object MainForm: TMainForm
AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = GbCenterCoords
AnchorSideRight.Side = asrBottom
Left = 211
Left = 212
Height = 15
Top = 19
Width = 34
@ -249,13 +249,13 @@ object MainForm: TMainForm
Left = 4
Height = 60
Top = 195
Width = 259
Width = 260
Anchors = [akTop, akLeft, akRight]
AutoSize = True
BorderSpacing.Top = 6
Caption = 'Viewport size'
ClientHeight = 40
ClientWidth = 255
ClientWidth = 256
TabOrder = 3
object LblViewportWidth: TLabel
AnchorSideLeft.Control = GbScreenSize
@ -287,7 +287,7 @@ object MainForm: TMainForm
AnchorSideTop.Control = GbScreenSize
AnchorSideRight.Control = GbScreenSize
AnchorSideRight.Side = asrBottom
Left = 211
Left = 212
Height = 15
Top = 2
Width = 34
@ -303,7 +303,7 @@ object MainForm: TMainForm
AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = GbScreenSize
AnchorSideRight.Side = asrBottom
Left = 211
Left = 212
Height = 15
Top = 19
Width = 34
@ -321,7 +321,7 @@ object MainForm: TMainForm
AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = GbCenterCoords
AnchorSideRight.Side = asrBottom
Left = 192
Left = 193
Height = 23
Top = 193
Width = 65
@ -347,15 +347,15 @@ object MainForm: TMainForm
AnchorSideRight.Control = GbScreenSize
AnchorSideRight.Side = asrBottom
Left = 4
Height = 97
Height = 102
Top = 261
Width = 259
Width = 260
Anchors = [akTop, akLeft, akRight]
AutoSize = True
BorderSpacing.Top = 6
Caption = 'Search'
ClientHeight = 77
ClientWidth = 255
ClientHeight = 82
ClientWidth = 256
TabOrder = 5
object CbLocations: TComboBox
AnchorSideLeft.Control = GbSearch
@ -364,7 +364,7 @@ object MainForm: TMainForm
Left = 6
Height = 23
Top = 2
Width = 182
Width = 183
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Left = 6
BorderSpacing.Top = 2
@ -380,7 +380,7 @@ object MainForm: TMainForm
AnchorSideTop.Side = asrCenter
AnchorSideRight.Control = GbSearch
AnchorSideRight.Side = asrBottom
Left = 190
Left = 191
Height = 25
Top = 1
Width = 61
@ -408,9 +408,9 @@ object MainForm: TMainForm
AnchorSideTop.Side = asrCenter
AnchorSideRight.Control = BtnSearch
AnchorSideRight.Side = asrBottom
Left = 196
Left = 197
Height = 25
Top = 46
Top = 50
Width = 55
Anchors = [akTop, akRight]
AutoSize = True
@ -425,9 +425,9 @@ object MainForm: TMainForm
AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = BtnGoTo
Left = 6
Height = 21
Height = 28
Top = 48
Width = 188
Width = 189
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Top = 2
BorderSpacing.Right = 2
@ -450,20 +450,20 @@ object MainForm: TMainForm
AnchorSideRight.Side = asrBottom
Left = 4
Height = 116
Top = 364
Width = 259
Top = 369
Width = 260
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Top = 6
Caption = 'GPS points'
ClientHeight = 96
ClientWidth = 255
ClientWidth = 256
TabOrder = 6
object BtnGPSPoints: TButton
AnchorSideLeft.Control = GbGPS
AnchorSideTop.Control = GbGPS
AnchorSideRight.Control = GbGPS
AnchorSideRight.Side = asrBottom
Left = 198
Left = 199
Height = 25
Top = 0
Width = 53
@ -482,7 +482,7 @@ object MainForm: TMainForm
Left = 6
Height = 45
Top = 2
Width = 188
Width = 189
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Left = 6
BorderSpacing.Top = 2
@ -501,7 +501,7 @@ object MainForm: TMainForm
Left = 6
Height = 33
Top = 57
Width = 245
Width = 246
Anchors = [akTop, akLeft, akRight, akBottom]
BorderSpacing.Top = 10
BorderSpacing.Right = 4
@ -516,7 +516,7 @@ object MainForm: TMainForm
AnchorSideTop.Side = asrBottom
Left = 4
Height = 25
Top = 486
Top = 491
Width = 110
AutoSize = True
BorderSpacing.Top = 6
@ -530,7 +530,7 @@ object MainForm: TMainForm
AnchorSideTop.Control = BtnSaveToFile
Left = 120
Height = 25
Top = 486
Top = 491
Width = 105
AutoSize = True
BorderSpacing.Left = 6
@ -545,8 +545,8 @@ object MainForm: TMainForm
AnchorSideRight.Control = BtnSaveToFile
AnchorSideRight.Side = asrBottom
Left = 4
Height = 26
Top = 517
Height = 25
Top = 522
Width = 110
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Top = 6
@ -557,8 +557,8 @@ object MainForm: TMainForm
end
object PgLayers: TTabSheet
Caption = 'Layers'
ClientHeight = 558
ClientWidth = 267
ClientHeight = 581
ClientWidth = 268
object lblOpacity: TLabel
AnchorSideLeft.Control = Bevel2
AnchorSideTop.Control = rgDrawMode
@ -580,7 +580,7 @@ object MainForm: TMainForm
Left = 4
Height = 38
Top = 386
Width = 259
Width = 260
Frequency = 10
Max = 100
PageSize = 5
@ -600,7 +600,7 @@ object MainForm: TMainForm
Left = 4
Height = 3
Top = 268
Width = 259
Width = 260
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Top = 8
Shape = bsTopLine
@ -613,7 +613,7 @@ object MainForm: TMainForm
Left = 4
Height = 256
Top = 4
Width = 259
Width = 260
Anchors = [akTop, akLeft, akRight]
AutoFillColumns = True
BorderSpacing.Around = 4
@ -634,7 +634,7 @@ object MainForm: TMainForm
MinSize = 8
MaxSize = 166
Title.Caption = 'Provider'
Width = 154
Width = 166
end>
Options = [goFixedVertLine, goFixedHorzLine, goVertLine, goHorzLine, goRangeSelect, goEditing, goSmoothScroll, goRowHighlight]
RowCount = 11
@ -645,7 +645,7 @@ object MainForm: TMainForm
ColWidths = (
30
54
154
166
)
Cells = (
11
@ -692,7 +692,7 @@ object MainForm: TMainForm
Left = 4
Height = 87
Top = 276
Width = 259
Width = 260
Anchors = [akTop, akLeft, akRight]
AutoFill = True
BorderSpacing.Top = 8
@ -705,7 +705,7 @@ object MainForm: TMainForm
ChildSizing.Layout = cclLeftToRightThenTopToBottom
ChildSizing.ControlsPerLine = 1
ClientHeight = 67
ClientWidth = 255
ClientWidth = 256
Items.Strings = (
'Opaque'
'Use Opacity'

View File

@ -651,10 +651,10 @@ begin
ini := TMemIniFile.Create(CalcIniName);
try
R := Screen.DesktopRect;
L := ini.ReadInteger('MainForm', 'Left', Left);
T := ini.ReadInteger('MainForm', 'Top', Top);
W := ini.ReadInteger('MainForm', 'Width', Width);
H := ini.ReadInteger('MainForm', 'Height', Height);
L := ini.ReadInteger('MainForm', 'Left', Scale96ToFont(Left));
T := ini.ReadInteger('MainForm', 'Top', Scale96ToFont(Top));
W := ini.ReadInteger('MainForm', 'Width', Scale96ToFont(Width));
H := ini.ReadInteger('MainForm', 'Height', Scale96ToFont(Height));
if L + W > R.Right then L := R.Right - W;
if L < R.Left then L := R.Left;
if T + H > R.Bottom then T := R.Bottom - H;
@ -862,10 +862,10 @@ var
begin
ini := TMemIniFile.Create(CalcIniName);
try
ini.WriteInteger('MainForm', 'Left', Left);
ini.WriteInteger('MainForm', 'Top', Top);
ini.WriteInteger('MainForm', 'Width', Width);
ini.WriteInteger('MainForm', 'Height', Height);
ini.WriteInteger('MainForm', 'Left', ScaleFormTo96(Left));
ini.WriteInteger('MainForm', 'Top', ScaleformTo96(Top));
ini.WriteInteger('MainForm', 'Width', ScaleFormTo96(Width));
ini.WriteInteger('MainForm', 'Height', ScaleFormTo96(Height));
ini.WriteString('MapView', 'Provider', MapView.MapProvider);
ini.WriteInteger('MapView', 'Zoom', MapView.Zoom);

View File

@ -15,7 +15,7 @@
</CompilerOptions>
<Description Value="Add-on to LazMapViewer: Contains a drawing engine based on the BGRABitmap library."/>
<License Value=";odified LGPL with linking exception, like FreePascal RTL/FCL and Lazarus LCL"/>
<Version Major="1" Release="2"/>
<Version Major="1" Release="3"/>
<Files Count="1">
<Item1>
<Filename Value="source\addons\bgra_drawingengine\mvde_bgra.pas"/>

View File

@ -15,7 +15,7 @@
</CompilerOptions>
<Description Value="Add-on to LazMapViewer: Contains a drawing engine based on the LazRGBGraphics package."/>
<License Value="Modified LGPL with linking exception, like FreePascal RTL/FCL and Lazarus LCL"/>
<Version Major="1" Release="2"/>
<Version Major="1" Release="3"/>
<Files Count="1">
<Item1>
<Filename Value="source\addons\rgbgraphics_drawingengine\mvde_rgbgraphics.pas"/>

View File

@ -15,7 +15,7 @@
</CompilerOptions>
<Description Value="Add-on to LazMapViewer: Contains a download engine based on the Synapse library."/>
<License Value="Modified LGPL with linking exception, like FreePascal RTL/FCL and Lazarus LCL"/>
<Version Major="1" Release="2"/>
<Version Major="1" Release="3"/>
<Files Count="1">
<Item1>
<Filename Value="source\addons\synapse_downloadengine\mvdlesynapse.pas"/>

View File

@ -22,7 +22,7 @@
FPC 3.2.0 or newer required."/>
<License Value="Modified LGPL with linking exception, like FreePascal RTL/FCL and Lazarus LCL"/>
<Version Major="1" Release="2"/>
<Version Major="1" Release="3"/>
<Files Count="36">
<Item1>
<Filename Value="source/mvcache.pas"/>

View File

@ -1541,7 +1541,7 @@ begin
if OnlyIfAvailable then
begin
if MapWin.MapProvider.HasRetinaTiles then
if (MapWin.MapProvider <> nil) and MapWin.MapProvider.HasRetinaTiles then
mvTypes.TileSize := RETINA_TILE_SIZE
else
mvTypes.TileSize := NORMAL_TILE_SIZE;