diff --git a/components/pochecker/pocheckermain.pp b/components/pochecker/pocheckermain.pp index 8b64249155..5b6a2796d1 100644 --- a/components/pochecker/pocheckermain.pp +++ b/components/pochecker/pocheckermain.pp @@ -700,6 +700,7 @@ end; procedure TPoCheckerForm.LoadConfig; var ARect: TRect; + Idx: Integer; begin FPoCheckerSettings := TPoCheckerSettings.Create; FPoCheckerSettings.LoadConfig; @@ -713,6 +714,9 @@ begin SetTestOptionCheckBoxes(FPoCheckerSettings.TestOptions); SelectDirectoryDialog.Filename := FPoCheckerSettings.SelectDirectoryFilename; OpenDialog.FileName := FPoCheckerSettings.OpenDialogFilename; + Idx := FPoCheckerSettings.LangFilterIndex; + if (Idx > -1) and (Idx < LangFilter.Items.Count -1) then + LangFilter.ItemIndex := Idx; AddToMasterPoList(FPoCheckerSettings.MasterPoList); SetSelectedMasterFiles(FPoCheckerSettings.MasterPoSelList); //AddToChildPoList(FPoCheckerSettings.ChildPoList); diff --git a/components/pochecker/pocheckersettings.pp b/components/pochecker/pocheckersettings.pp index 8ea109aa24..61b5956ddd 100644 --- a/components/pochecker/pocheckersettings.pp +++ b/components/pochecker/pocheckersettings.pp @@ -23,6 +23,7 @@ type FExternalEditorName: String; FFilename: String; FGraphFormWindowState: TWindowState; + FLangFilterIndex: Integer; FMainFormWindowState: TWindowState; FOpenDialogFilename: String; FResultsFormWindowState: TWindowState; @@ -44,6 +45,7 @@ type function LoadExternalEditorName: String; function LoadSelectDirectoryFilename: String; function LoadOpenDialogFilename: String; + function LoadLangFilterIndex: Integer; procedure LoadMasterPoList(List: TStrings); procedure LoadMasterPoSelList(List: TStrings); procedure SaveTestTypes; @@ -52,6 +54,7 @@ type procedure SaveExternalEditorName; procedure SaveSelectDirectoryFilename; procedure SaveOpenDialogFilename; + procedure SaveLangFilterIndex; procedure SaveMasterPoList; procedure SaveMasterPoSelList; procedure SetMasterPoList(AValue: TStrings); @@ -78,6 +81,7 @@ type property MainFormWindowState: TWindowState read FMainFormWindowState write FMainFormWindowState; property ResultsFormWindowState: TWindowState read FResultsFormWindowState write FResultsFormWindowState; property GraphFormWindowState: TWindowState read FGraphFormWindowState write FGraphFormWindowState; + property LangFilterIndex: Integer read FLangFilterIndex write FLangFilterIndex; end; function DbgS(PoTestTypes: TPoTestTypes): String; overload; @@ -151,6 +155,7 @@ const pLastSelected = 'LastSelected/'; pSelectDirectoryFilename = 'SelectDirectoryFilename/'; pOpenDialogFilename = 'OpenDialogFilename/'; + pLangFilter = 'LanguageFilter/'; pTestTypes = 'TestTypes/'; pTestOptions = 'TestOptions/'; pWindowsGeometry = 'General/WindowsGeometry/'; @@ -315,6 +320,11 @@ begin Result := FConfig.GetValue(pOpenDialogFilename+'Value',''); end; +function TPoCheckerSettings.LoadLangFilterIndex: Integer; +begin + Result := FConfig.GetValue(pLangFilter + 'Value', 0); +end; + procedure TPoCheckerSettings.LoadMasterPoList(List: TStrings); var @@ -347,6 +357,7 @@ begin end; + procedure TPoCheckerSettings.SaveTestTypes; var tt: TPoTestType; @@ -420,6 +431,11 @@ begin FConfig.SetDeleteValue(pMasterPoSelection+Format('Item_%d/Value',[i]),FMasterPoSelList[i],''); end; +procedure TPoCheckerSettings.SaveLangFilterIndex; +begin + FConfig.SetDeleteValue(pLangFilter + 'Value', FLangFilterIndex, 0); +end; + procedure TPoCheckerSettings.SetMasterPoList(AValue: TStrings); begin @@ -432,6 +448,7 @@ begin end; + procedure TPoCheckerSettings.ResetAllProperties; begin FTestTypes := []; @@ -498,6 +515,7 @@ begin FSelectDirectoryFilename := LoadSelectDirectoryFilename; FOpenDialogFilename := LoadOpenDialogFilename; FExternalEditorName := LoadExternalEditorName; + FLangFilterIndex := LoadLangFilterIndex; LoadWindowsGeometry; LoadMasterPoList(FMasterPoList); LoadMasterPoSelList(FMasterPoSelList); @@ -519,6 +537,7 @@ begin SaveExternalEditorName; SaveSelectDirectoryFilename; SaveOpenDialogFilename; + SaveLangFilterIndex; SaveWindowsGeometry; SaveMasterPoList; SaveMasterPoSelList;