PoChecker: use a custom made dialog for displying possibly very long list of filenames.

git-svn-id: trunk@46509 -
This commit is contained in:
bart 2014-10-10 20:47:57 +00:00
parent b6924d33a1
commit 204d57cafa
2 changed files with 23 additions and 0 deletions

View File

@ -700,6 +700,7 @@ end;
procedure TPoCheckerForm.LoadConfig; procedure TPoCheckerForm.LoadConfig;
var var
ARect: TRect; ARect: TRect;
Idx: Integer;
begin begin
FPoCheckerSettings := TPoCheckerSettings.Create; FPoCheckerSettings := TPoCheckerSettings.Create;
FPoCheckerSettings.LoadConfig; FPoCheckerSettings.LoadConfig;
@ -713,6 +714,9 @@ begin
SetTestOptionCheckBoxes(FPoCheckerSettings.TestOptions); SetTestOptionCheckBoxes(FPoCheckerSettings.TestOptions);
SelectDirectoryDialog.Filename := FPoCheckerSettings.SelectDirectoryFilename; SelectDirectoryDialog.Filename := FPoCheckerSettings.SelectDirectoryFilename;
OpenDialog.FileName := FPoCheckerSettings.OpenDialogFilename; OpenDialog.FileName := FPoCheckerSettings.OpenDialogFilename;
Idx := FPoCheckerSettings.LangFilterIndex;
if (Idx > -1) and (Idx < LangFilter.Items.Count -1) then
LangFilter.ItemIndex := Idx;
AddToMasterPoList(FPoCheckerSettings.MasterPoList); AddToMasterPoList(FPoCheckerSettings.MasterPoList);
SetSelectedMasterFiles(FPoCheckerSettings.MasterPoSelList); SetSelectedMasterFiles(FPoCheckerSettings.MasterPoSelList);
//AddToChildPoList(FPoCheckerSettings.ChildPoList); //AddToChildPoList(FPoCheckerSettings.ChildPoList);

View File

@ -23,6 +23,7 @@ type
FExternalEditorName: String; FExternalEditorName: String;
FFilename: String; FFilename: String;
FGraphFormWindowState: TWindowState; FGraphFormWindowState: TWindowState;
FLangFilterIndex: Integer;
FMainFormWindowState: TWindowState; FMainFormWindowState: TWindowState;
FOpenDialogFilename: String; FOpenDialogFilename: String;
FResultsFormWindowState: TWindowState; FResultsFormWindowState: TWindowState;
@ -44,6 +45,7 @@ type
function LoadExternalEditorName: String; function LoadExternalEditorName: String;
function LoadSelectDirectoryFilename: String; function LoadSelectDirectoryFilename: String;
function LoadOpenDialogFilename: String; function LoadOpenDialogFilename: String;
function LoadLangFilterIndex: Integer;
procedure LoadMasterPoList(List: TStrings); procedure LoadMasterPoList(List: TStrings);
procedure LoadMasterPoSelList(List: TStrings); procedure LoadMasterPoSelList(List: TStrings);
procedure SaveTestTypes; procedure SaveTestTypes;
@ -52,6 +54,7 @@ type
procedure SaveExternalEditorName; procedure SaveExternalEditorName;
procedure SaveSelectDirectoryFilename; procedure SaveSelectDirectoryFilename;
procedure SaveOpenDialogFilename; procedure SaveOpenDialogFilename;
procedure SaveLangFilterIndex;
procedure SaveMasterPoList; procedure SaveMasterPoList;
procedure SaveMasterPoSelList; procedure SaveMasterPoSelList;
procedure SetMasterPoList(AValue: TStrings); procedure SetMasterPoList(AValue: TStrings);
@ -78,6 +81,7 @@ type
property MainFormWindowState: TWindowState read FMainFormWindowState write FMainFormWindowState; property MainFormWindowState: TWindowState read FMainFormWindowState write FMainFormWindowState;
property ResultsFormWindowState: TWindowState read FResultsFormWindowState write FResultsFormWindowState; property ResultsFormWindowState: TWindowState read FResultsFormWindowState write FResultsFormWindowState;
property GraphFormWindowState: TWindowState read FGraphFormWindowState write FGraphFormWindowState; property GraphFormWindowState: TWindowState read FGraphFormWindowState write FGraphFormWindowState;
property LangFilterIndex: Integer read FLangFilterIndex write FLangFilterIndex;
end; end;
function DbgS(PoTestTypes: TPoTestTypes): String; overload; function DbgS(PoTestTypes: TPoTestTypes): String; overload;
@ -151,6 +155,7 @@ const
pLastSelected = 'LastSelected/'; pLastSelected = 'LastSelected/';
pSelectDirectoryFilename = 'SelectDirectoryFilename/'; pSelectDirectoryFilename = 'SelectDirectoryFilename/';
pOpenDialogFilename = 'OpenDialogFilename/'; pOpenDialogFilename = 'OpenDialogFilename/';
pLangFilter = 'LanguageFilter/';
pTestTypes = 'TestTypes/'; pTestTypes = 'TestTypes/';
pTestOptions = 'TestOptions/'; pTestOptions = 'TestOptions/';
pWindowsGeometry = 'General/WindowsGeometry/'; pWindowsGeometry = 'General/WindowsGeometry/';
@ -315,6 +320,11 @@ begin
Result := FConfig.GetValue(pOpenDialogFilename+'Value',''); Result := FConfig.GetValue(pOpenDialogFilename+'Value','');
end; end;
function TPoCheckerSettings.LoadLangFilterIndex: Integer;
begin
Result := FConfig.GetValue(pLangFilter + 'Value', 0);
end;
procedure TPoCheckerSettings.LoadMasterPoList(List: TStrings); procedure TPoCheckerSettings.LoadMasterPoList(List: TStrings);
var var
@ -347,6 +357,7 @@ begin
end; end;
procedure TPoCheckerSettings.SaveTestTypes; procedure TPoCheckerSettings.SaveTestTypes;
var var
tt: TPoTestType; tt: TPoTestType;
@ -420,6 +431,11 @@ begin
FConfig.SetDeleteValue(pMasterPoSelection+Format('Item_%d/Value',[i]),FMasterPoSelList[i],''); FConfig.SetDeleteValue(pMasterPoSelection+Format('Item_%d/Value',[i]),FMasterPoSelList[i],'');
end; end;
procedure TPoCheckerSettings.SaveLangFilterIndex;
begin
FConfig.SetDeleteValue(pLangFilter + 'Value', FLangFilterIndex, 0);
end;
procedure TPoCheckerSettings.SetMasterPoList(AValue: TStrings); procedure TPoCheckerSettings.SetMasterPoList(AValue: TStrings);
begin begin
@ -432,6 +448,7 @@ begin
end; end;
procedure TPoCheckerSettings.ResetAllProperties; procedure TPoCheckerSettings.ResetAllProperties;
begin begin
FTestTypes := []; FTestTypes := [];
@ -498,6 +515,7 @@ begin
FSelectDirectoryFilename := LoadSelectDirectoryFilename; FSelectDirectoryFilename := LoadSelectDirectoryFilename;
FOpenDialogFilename := LoadOpenDialogFilename; FOpenDialogFilename := LoadOpenDialogFilename;
FExternalEditorName := LoadExternalEditorName; FExternalEditorName := LoadExternalEditorName;
FLangFilterIndex := LoadLangFilterIndex;
LoadWindowsGeometry; LoadWindowsGeometry;
LoadMasterPoList(FMasterPoList); LoadMasterPoList(FMasterPoList);
LoadMasterPoSelList(FMasterPoSelList); LoadMasterPoSelList(FMasterPoSelList);
@ -519,6 +537,7 @@ begin
SaveExternalEditorName; SaveExternalEditorName;
SaveSelectDirectoryFilename; SaveSelectDirectoryFilename;
SaveOpenDialogFilename; SaveOpenDialogFilename;
SaveLangFilterIndex;
SaveWindowsGeometry; SaveWindowsGeometry;
SaveMasterPoList; SaveMasterPoList;
SaveMasterPoSelList; SaveMasterPoSelList;