Skip to content

Commit adb67f4

Browse files
author
mattia72
committed
Enhance TTestPersistableArray to accept initial values and update file handling in TabSeparatedConfigForm
1 parent 0801645 commit adb67f4

2 files changed

Lines changed: 12 additions & 12 deletions

File tree

Test/TabSeparatedConfigTestForm.pas

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -54,10 +54,11 @@ implementation
5454
TTestPersistableArray = class(TPersistableSettings, IPersistableArray)
5555
private
5656
FArraySetting : IArraySetting;
57+
FArrValues: TArray<string>;
5758
function GetArraySetting() : IArraySetting;
5859

5960
public
60-
constructor Create;
61+
constructor Create(const _arrValues: TArray<string>);
6162
procedure Init; override;
6263
end;
6364

@@ -99,12 +100,8 @@ procedure TTabSeparatedConfigTestMainForm.btnOpenFormClick(Sender : TObject);
99100
FResultStrings.Clear;
100101

101102
// create persistable array and fill with input data
102-
persistableArray := TTestPersistableArray.Create;
103+
persistableArray := TTestPersistableArray.Create(FInputStrings.ToStringArray);
103104
try
104-
for i := 0 to FInputStrings.Count - 1 do begin
105-
persistableArray.GetArraySetting().Add(FInputStrings[i]);
106-
end;
107-
108105
// parse headers
109106
var
110107
headerText : string := edtHeaders.Text;
@@ -155,9 +152,10 @@ procedure TTabSeparatedConfigTestMainForm.ActionTestExecute(Sender : TObject);
155152

156153
{ TTestPersistableArray }
157154

158-
constructor TTestPersistableArray.Create;
155+
constructor TTestPersistableArray.Create(const _arrValues: TArray<string>);
159156
begin
160157
IniSectionName := 'TestData';
158+
FArrValues := _arrValues;
161159
inherited Create(nil);
162160
end;
163161

@@ -168,7 +166,7 @@ function TTestPersistableArray.GetArraySetting() : IArraySetting;
168166

169167
procedure TTestPersistableArray.Init;
170168
begin
171-
FArraySetting := TArraySetting.Create('TestData');
169+
FArraySetting := TArraySetting.Create('TestData', FArrValues );
172170
CreateSetting(FArraySetting.Name, ITEM_KEY_PREFIX, FArraySetting);
173171
end;
174172

src/UI/RipGrepper.UI.TabSeparatedConfigForm.pas

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -108,14 +108,14 @@ implementation
108108

109109
RipGrepper.Common.Constants,
110110
RipGrepper.Helper.UI,
111+
RipGrepper.OpenWith.Constants,
111112
RipGrepper.Tools.DebugUtils,
112113
RipGrepper.Tools.FileUtils,
113114
System.SysUtils,
114115
Vcl.Clipbrd,
116+
VirtualTrees.Header,
115117
Winapi.ShellAPI,
116-
Winapi.Windows,
117-
RipGrepper.OpenWith.Constants,
118-
VirtualTrees.Header;
118+
Winapi.Windows;
119119

120120
{$R *.dfm}
121121

@@ -162,7 +162,6 @@ procedure TTabSeparatedConfigForm.ActionAddExecute(Sender : TObject);
162162
i : Integer;
163163
begin
164164
inherited;
165-
node := VstData.GetFirstSelected;
166165

167166
// create empty data with same column count
168167
if VstData.Header.Columns.Count > 0 then begin
@@ -387,6 +386,9 @@ procedure TTabSeparatedConfigForm.WriteSettings();
387386
end;
388387

389388
FArraySettings.StoreToPersister();
389+
if FArraySettings is TPersistableSettings then begin
390+
TPersistableSettings(FArraySettings).UpdateFile(True);
391+
end;
390392
end;
391393

392394
procedure TTabSeparatedConfigForm.VstDataDblClick(Sender : TObject);

0 commit comments

Comments
 (0)