Skip to content

Commit f8280bd

Browse files
Version 3.5.8
- Added RAD Studio Alexandria support. - New checkbox added to prioritize GIT over ZIP, simplifying setup files, the setup files should include ZIP and GIT info.
1 parent 0c4c095 commit f8280bd

4 files changed

Lines changed: 64 additions & 48 deletions

File tree

Release History.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
18 January 2022 - version 3.5.8
2+
- Added RAD Studio Alexandria support.
3+
- New checkbox added to prioritize GIT over ZIP, simplifying setup files, the setup files should include ZIP and GIT info.
4+
15
24 December 2020 - version 3.5.7
26
- Added RAD Studio Sydney support.
37

Source/SpComponentInstaller.pas

Lines changed: 27 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
unit SpComponentInstaller;
22

33
{==============================================================================
4-
Version 3.5.7
4+
Version 3.5.8
55
66
The contents of this package are licensed under a disjunctive tri-license
77
giving you the choice of one of the three following sets of free
@@ -37,7 +37,7 @@ interface
3737
{$WARN UNIT_PLATFORM OFF}
3838
{$BOOLEVAL OFF} // Unit depends on short-circuit boolean evaluation
3939

40-
{$R 'SpComponentInstallerRes.res'}
40+
{$R 'SpComponentInstallerRes.res'} // Has EmptyResourceFile.res file as a resource used by TSpDelphiDPKFile.CreateAndCopyEmptyResIfNeeded
4141

4242
uses
4343
Windows, Messages, SysUtils, Classes, Forms, Contnrs, Generics.Collections;
@@ -81,27 +81,28 @@ interface
8181
SGitCloneCommand = 'GIT.EXE clone --verbose --progress %s %s';
8282

8383
type
84-
TSpIDEType = ( // [IDE-Change-Update]
85-
ideNone, //
86-
ideDelphi7, // D7
87-
ideDelphi2005, // D9
88-
ideDelphi2006, // D10
89-
ideDelphi2007, // D11
90-
ideDelphi2009, // D12
91-
ideDelphi2010, // D14
92-
ideDelphiXE, // D15
93-
ideDelphiXE2, // D16
94-
ideDelphiXE3, // D17
95-
ideDelphiXE4, // D18
96-
ideDelphiXE5, // D19
97-
ideDelphiXE6, // D20
98-
ideDelphiXE7, // D21
99-
ideDelphiXE8, // D22
100-
ideDelphiSeattle,// D23
101-
ideDelphiBerlin, // D24
102-
ideDelphiTokyo, // D25
103-
ideDelphiRio, // D26
104-
ideDelphiSydney // D27
84+
TSpIDEType = ( // [IDE-Change-Update]
85+
ideNone, //
86+
ideDelphi7, // D7
87+
ideDelphi2005, // D9
88+
ideDelphi2006, // D10
89+
ideDelphi2007, // D11
90+
ideDelphi2009, // D12
91+
ideDelphi2010, // D14
92+
ideDelphiXE, // D15
93+
ideDelphiXE2, // D16
94+
ideDelphiXE3, // D17
95+
ideDelphiXE4, // D18
96+
ideDelphiXE5, // D19
97+
ideDelphiXE6, // D20
98+
ideDelphiXE7, // D21
99+
ideDelphiXE8, // D22
100+
ideDelphiSeattle, // D23
101+
ideDelphiBerlin, // D24
102+
ideDelphiTokyo, // D25
103+
ideDelphiRio, // D26
104+
ideDelphiSydney, // D27
105+
ideDelphiAlexandria // D28
105106
);
106107

107108
TSpIDETypeRec = record
@@ -133,7 +134,8 @@ TSpIDETypeRec = record
133134
(IDEVersion: 'D24'; IDEName: 'RAD Studio 10.1 Berlin'; IDERegistryPath: 'SOFTWARE\Embarcadero\BDS\18.0'; IDERADStudioVersion: '18.0'),
134135
(IDEVersion: 'D25'; IDEName: 'RAD Studio 10.2 Tokyo'; IDERegistryPath: 'SOFTWARE\Embarcadero\BDS\19.0'; IDERADStudioVersion: '19.0'),
135136
(IDEVersion: 'D26'; IDEName: 'RAD Studio 10.3 Rio'; IDERegistryPath: 'SOFTWARE\Embarcadero\BDS\20.0'; IDERADStudioVersion: '20.0'),
136-
(IDEVersion: 'D26'; IDEName: 'RAD Studio 10.4 Sydney'; IDERegistryPath: 'SOFTWARE\Embarcadero\BDS\21.0'; IDERADStudioVersion: '21.0')
137+
(IDEVersion: 'D27'; IDEName: 'RAD Studio 10.4 Sydney'; IDERegistryPath: 'SOFTWARE\Embarcadero\BDS\21.0'; IDERADStudioVersion: '21.0'),
138+
(IDEVersion: 'D28'; IDEName: 'RAD Studio 11 Alexandria'; IDERegistryPath: 'SOFTWARE\Embarcadero\BDS\22.0'; IDERADStudioVersion: '22.0')
137139
);
138140

139141
type
@@ -214,7 +216,7 @@ TSpExecuteList = class(TObjectList<TSpExecuteEntry>)
214216
TSpComponentPackage = class
215217
Name: string;
216218
ZipFile: string;
217-
Git : string;
219+
Git: string;
218220
Destination: string;
219221
SearchPath: string;
220222
Includes: string;
@@ -1343,7 +1345,6 @@ procedure TSpComponentPackageList.LoadFromIni(Filename: string);
13431345
end;
13441346

13451347
Entry.ExecuteList.LoadFromIni(Filename, S);
1346-
13471348
Add(Entry);
13481349
end;
13491350
end;

Source/unit1.dfm

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ object Form1: TForm1
1111
Font.Height = -11
1212
Font.Name = 'MS Shell Dlg 2'
1313
Font.Style = []
14-
OldCreateOrder = False
1514
Position = poScreenCenter
1615
OnCreate = FormCreate
1716
OnDestroy = FormDestroy
@@ -41,22 +40,28 @@ object Form1: TForm1
4140
Left = 8
4241
Top = 24
4342
Width = 473
44-
Height = 227
45-
OnClickCheck = CheckListBox1ClickCheck
43+
Height = 201
4644
Style = lbOwnerDrawVariable
4745
TabOrder = 0
46+
OnClickCheck = CheckListBox1ClickCheck
4847
OnDrawItem = CheckListBox1DrawItem
4948
OnMeasureItem = CheckListBox1MeasureItem
5049
end
50+
object CheckBox1: TCheckBox
51+
Left = 8
52+
Top = 231
53+
Width = 249
54+
Height = 17
55+
Caption = 'Get files from GIT repository when available'
56+
Checked = True
57+
State = cbChecked
58+
TabOrder = 1
59+
end
5160
end
5261
object TabSheet2: TTabSheet
5362
Caption = 'TabSheet2'
5463
ImageIndex = 1
5564
TabVisible = False
56-
ExplicitLeft = 0
57-
ExplicitTop = 0
58-
ExplicitWidth = 0
59-
ExplicitHeight = 0
6065
object Label2: TLabel
6166
Left = 8
6267
Top = 16
@@ -105,10 +110,6 @@ object Form1: TForm1
105110
Caption = 'TabSheet3'
106111
ImageIndex = 2
107112
TabVisible = False
108-
ExplicitLeft = 0
109-
ExplicitTop = 0
110-
ExplicitWidth = 0
111-
ExplicitHeight = 0
112113
object Label3: TLabel
113114
Left = 8
114115
Top = 8

Source/unit1.pas

Lines changed: 21 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ interface
1414
IniFiles, Actions, SpComponentInstaller;
1515

1616
const
17-
rvMultiInstallerVersion = 'Silverpoint MultiInstaller 3.5.7';
17+
rvMultiInstallerVersion = 'Silverpoint MultiInstaller 3.5.8';
1818
rvMultiInstallerLink = 'http://www.silverpointdevelopment.com';
1919

2020
resourcestring
@@ -68,6 +68,7 @@ TForm1 = class(TForm)
6868
Bevel2: TBevel;
6969
PaintBoxLabel: TPaintBox;
7070
Image1: TImage;
71+
CheckBox1: TCheckBox;
7172
procedure FormCreate(Sender: TObject);
7273
procedure aBrowseExecute(Sender: TObject);
7374
procedure aBackExecute(Sender: TObject);
@@ -213,12 +214,15 @@ procedure TForm1.FillCheckListBox;
213214
if G > 0 then begin
214215
P := CheckListBox1.Items.IndexOfObject(Pointer(G));
215216
if P > -1 then
216-
CheckListBox1.Items[P] := CheckListBox1.Items[P] + #13#10 + Installer.ComponentPackages[I].Name
217+
CheckListBox1.Items[P] := CheckListBox1.Items[P] + #13#10 + Installer.ComponentPackages[I].Name;
217218
end;
218219

219220
if P = -1 then begin
220221
P := CheckListBox1.Items.AddObject(Installer.ComponentPackages[I].Name, Pointer(G));
221222
CheckListBox1.Checked[P] := True;
223+
if Installer.ComponentPackages[I].Git <> '' then
224+
CheckListBox1.Items[P] := CheckListBox1.Items[P] + #13#10 +
225+
'GIT: ' + Installer.ComponentPackages[I].Git;
222226
end;
223227
end;
224228
end;
@@ -276,7 +280,7 @@ procedure TForm1.CheckListBox1DrawItem(Control: TWinControl;
276280
begin
277281
if Index > -1 then begin
278282
CheckListBox1.Canvas.FillRect(Rect);
279-
OffsetRect(Rect, 8, 2);
283+
OffsetRect(Rect, 8, 2);
280284
DrawText(CheckListBox1.Canvas.Handle, PChar(CheckListBox1.Items[Index]), -1, Rect, 0);
281285
end;
282286
end;
@@ -375,18 +379,24 @@ function TForm1.Install: Boolean;
375379
if (G > 0) and (Installer.ComponentPackages[J].GroupIndex = G) then
376380
Installer.ComponentPackages.Delete(J)
377381
else
378-
if CheckListBox1.Items[I] = Installer.ComponentPackages[J].Name then
382+
if CheckListBox1.items[I].Contains(Installer.ComponentPackages[J].Name) then
379383
Installer.ComponentPackages.Delete(J);
380384
end;
381385

382-
try
383-
aFinish.Visible := True;
384-
aSaveLog.Visible := True;
385-
aBack.Visible := False;
386-
aNext.Visible := False;
387-
aCancel.Visible := False;
388-
Application.ProcessMessages;
386+
// Prioritize GIT over ZIP
387+
if CheckBox1.Checked then begin
388+
for J := 0 to Installer.ComponentPackages.Count - 1 do
389+
if not Installer.ComponentPackages[J].Git.IsEmpty then
390+
Installer.ComponentPackages[J].ZipFile := '';
391+
end;
389392

393+
aFinish.Visible := True;
394+
aSaveLog.Visible := True;
395+
aBack.Visible := False;
396+
aNext.Visible := False;
397+
aCancel.Visible := False;
398+
Application.ProcessMessages;
399+
try
390400
// Check, Unzip, Patch, Compile, Install
391401
if Installer.Install(AppPath, InstallFolderEdit.Text, IDE, LogMemo.Lines) then
392402
Result := True;

0 commit comments

Comments
 (0)