POChecker: removed "Open PO file" functionality.

Reasons:
1. It was a subset of "Scan directory" functionality.
2. There was no warning about orphaned files, they were ignored silently. This can be misleading.
3. It changed language combobox value in some cases, and this could lead to confusion.

While at this, improved main dialog layout.

git-svn-id: trunk@52451 -
This commit is contained in:
maxim 2016-06-07 14:05:37 +00:00
parent ef85a2851f
commit c5eddfc18f
16 changed files with 73 additions and 246 deletions

View File

@ -281,10 +281,6 @@ msgstr "%s: %d položek"
msgid "Found %d warnings." msgid "Found %d warnings."
msgstr "Nalezeno %d varování" msgstr "Nalezeno %d varování"
#: pocheckerconsts.sopenapofile
msgid "&Open a po-file"
msgstr "&Otevřít PO soubor"
#: pocheckerconsts.sopenfail #: pocheckerconsts.sopenfail
msgid "" msgid ""
"Unable to open file:\n" "Unable to open file:\n"

View File

@ -281,10 +281,6 @@ msgstr "%s: %d Elemente"
msgid "Found %d warnings." msgid "Found %d warnings."
msgstr "%d Warnungen gefunden." msgstr "%d Warnungen gefunden."
#: pocheckerconsts.sopenapofile
msgid "&Open a po-file"
msgstr "p&o-Datei öffnen"
#: pocheckerconsts.sopenfail #: pocheckerconsts.sopenfail
msgid "" msgid ""
"Unable to open file:\n" "Unable to open file:\n"

View File

@ -279,10 +279,6 @@ msgstr "%s: %d elementos"
msgid "Found %d warnings." msgid "Found %d warnings."
msgstr "Encontradas %d advertencias." msgstr "Encontradas %d advertencias."
#: pocheckerconsts.sopenapofile
msgid "&Open a po-file"
msgstr "Abrir un fichero p&o"
#: pocheckerconsts.sopenfail #: pocheckerconsts.sopenfail
msgid "" msgid ""
"Unable to open file:\n" "Unable to open file:\n"

View File

@ -281,10 +281,6 @@ msgstr "%s : %d éléments"
msgid "Found %d warnings." msgid "Found %d warnings."
msgstr "%d avertissements trouvés." msgstr "%d avertissements trouvés."
#: pocheckerconsts.sopenapofile
msgid "&Open a po-file"
msgstr "&Ouvrir un fichier \"PO\""
#: pocheckerconsts.sopenfail #: pocheckerconsts.sopenfail
msgid "" msgid ""
"Unable to open file:\n" "Unable to open file:\n"

View File

@ -281,10 +281,6 @@ msgstr "%s: %d elem"
msgid "Found %d warnings." msgid "Found %d warnings."
msgstr "%d figyelmeztetés." msgstr "%d figyelmeztetés."
#: pocheckerconsts.sopenapofile
msgid "&Open a po-file"
msgstr "PO fájl megnyitása"
#: pocheckerconsts.sopenfail #: pocheckerconsts.sopenfail
msgid "" msgid ""
"Unable to open file:\n" "Unable to open file:\n"

View File

@ -283,10 +283,6 @@ msgstr "%s: %d voci"
msgid "Found %d warnings." msgid "Found %d warnings."
msgstr "Riscontrati %d avvertimenti." msgstr "Riscontrati %d avvertimenti."
#: pocheckerconsts.sopenapofile
msgid "&Open a po-file"
msgstr "&Aprire un file po"
#: pocheckerconsts.sopenfail #: pocheckerconsts.sopenfail
msgid "" msgid ""
"Unable to open file:\n" "Unable to open file:\n"

View File

@ -279,10 +279,6 @@ msgstr "%s: %d 項目"
msgid "Found %d warnings." msgid "Found %d warnings."
msgstr "%d 個の警告が見つかりました。" msgstr "%d 個の警告が見つかりました。"
#: pocheckerconsts.sopenapofile
msgid "&Open a po-file"
msgstr "po ファイルを開く(&O)"
#: pocheckerconsts.sopenfail #: pocheckerconsts.sopenfail
msgid "" msgid ""
"Unable to open file:\n" "Unable to open file:\n"

View File

@ -281,10 +281,6 @@ msgstr "%s: elementų - %d"
msgid "Found %d warnings." msgid "Found %d warnings."
msgstr "Rasta perspėjimų: %d." msgstr "Rasta perspėjimų: %d."
#: pocheckerconsts.sopenapofile
msgid "&Open a po-file"
msgstr "At&verti PO failą"
#: pocheckerconsts.sopenfail #: pocheckerconsts.sopenfail
msgid "" msgid ""
"Unable to open file:\n" "Unable to open file:\n"

View File

@ -260,10 +260,6 @@ msgstr ""
msgid "Found %d warnings." msgid "Found %d warnings."
msgstr "" msgstr ""
#: pocheckerconsts.sopenapofile
msgid "&Open a po-file"
msgstr ""
#: pocheckerconsts.sopenfail #: pocheckerconsts.sopenfail
msgid "" msgid ""
"Unable to open file:\n" "Unable to open file:\n"

View File

@ -278,10 +278,6 @@ msgstr "%s: %d itens"
msgid "Found %d warnings." msgid "Found %d warnings."
msgstr "Encontrados %d avisos." msgstr "Encontrados %d avisos."
#: pocheckerconsts.sopenapofile
msgid "&Open a po-file"
msgstr "&Abrir um arquivo PO"
#: pocheckerconsts.sopenfail #: pocheckerconsts.sopenfail
msgid "" msgid ""
"Unable to open file:\n" "Unable to open file:\n"

View File

@ -281,10 +281,6 @@ msgstr "%s: %d элементов"
msgid "Found %d warnings." msgid "Found %d warnings."
msgstr "Найдено предупреждений: %d" msgstr "Найдено предупреждений: %d"
#: pocheckerconsts.sopenapofile
msgid "&Open a po-file"
msgstr "&Открыть файл PO"
#: pocheckerconsts.sopenfail #: pocheckerconsts.sopenfail
msgid "" msgid ""
"Unable to open file:\n" "Unable to open file:\n"

View File

@ -278,10 +278,6 @@ msgstr "%s: %d ел-тів"
msgid "Found %d warnings." msgid "Found %d warnings."
msgstr "Виявлено %d попереджень." msgstr "Виявлено %d попереджень."
#: pocheckerconsts.sopenapofile
msgid "&Open a po-file"
msgstr "&Відкрити po-файл"
#: pocheckerconsts.sopenfail #: pocheckerconsts.sopenfail
msgid "" msgid ""
"Unable to open file:\n" "Unable to open file:\n"

View File

@ -14,7 +14,6 @@ resourcestring
sUnselectAllTests = '&Unselect All'; sUnselectAllTests = '&Unselect All';
sGUIPoFileCheckingTool = 'GUI Po-file checking tool'; sGUIPoFileCheckingTool = 'GUI Po-file checking tool';
sSelectTestTypes = 'Select test types'; sSelectTestTypes = 'Select test types';
sOpenAPoFile = '&Open a po-file';
sScanDir = 'Scan a folder'; sScanDir = 'Scan a folder';
sRunSelectedTests = '&Run Selected Tests'; sRunSelectedTests = '&Run Selected Tests';
sClearListBox = 'Clear'; sClearListBox = 'Clear';

View File

@ -20,10 +20,12 @@ object PoCheckerForm: TPoCheckerForm
AnchorSideLeft.Control = SelectTestLabel AnchorSideLeft.Control = SelectTestLabel
AnchorSideTop.Control = SelectTestLabel AnchorSideTop.Control = SelectTestLabel
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
Left = 201 AnchorSideRight.Control = MasterPoListBox
AnchorSideRight.Side = asrBottom
Left = 199
Height = 118 Height = 118
Top = 29 Top = 27
Width = 436 Width = 439
Anchors = [akTop, akLeft, akRight] Anchors = [akTop, akLeft, akRight]
BorderSpacing.Top = 6 BorderSpacing.Top = 6
Enabled = False Enabled = False
@ -36,97 +38,51 @@ object PoCheckerForm: TPoCheckerForm
'sCheckStatistics' 'sCheckStatistics'
) )
ItemHeight = 21 ItemHeight = 21
TabOrder = 3 TabOrder = 2
Data = { Data = {
06000000000000000000 06000000000000000000
} }
end end
object SelectTestLabel: TLabel object SelectTestLabel: TLabel
AnchorSideLeft.Control = OpenBtn AnchorSideLeft.Control = ScanDirBtn
AnchorSideLeft.Side = asrBottom AnchorSideLeft.Side = asrBottom
Left = 201 AnchorSideTop.Control = Owner
Left = 199
Height = 15 Height = 15
Top = 8 Top = 6
Width = 124 Width = 124
BorderSpacing.Left = 9 BorderSpacing.Left = 9
BorderSpacing.Top = 6
Caption = 'Select test types' Caption = 'Select test types'
Font.Style = [fsBold] Font.Style = [fsBold]
ParentColor = False ParentColor = False
ParentFont = False ParentFont = False
end end
object OpenBtn: TBitBtn
AnchorSideLeft.Control = MasterPoListBox
AnchorSideTop.Control = TestListBox
AnchorSideRight.Control = RunBtn
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = ScanDirBtn
Left = 8
Height = 50
Top = 29
Width = 184
BorderSpacing.Bottom = 10
Caption = '&Open a po-file'
Glyph.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
2000000000000004000064000000640000000000000000000000FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00005E8E8D005D
8CBD005D8CBD005D8CBD005D8CBD005D8CBD005D8CBD005D8CBD005D8CBD005D
8CBD005D8CBD005D8CBD005D8CBD005E8E8D005B8900005B890000679AB06AB7
DAFF82CCEDFF82CCEDFF82CCEDFF82CCEDFF82CCEDFF82CCEDFF82CCEDFF82CC
EDFF82CCEDFF82CCEDFF83CDEEFF318DB9C9005E8E40005F8F000070A9A256AA
CEFF80CBEAFF7EC9E9FF7EC9E9FF7EC9E9FF7EC9E9FF7EC9E9FF7EC9E9FF7EC9
E9FF7EC9E9FF7EC9E9FF7EC9E9FF57AFD6D90066996E006699000074AD9D44A1
CBFF8AD3EFFF83CDEBFF83CDEBFF83CDEBFF83CDEBFF83CDEBFF83CDEBFF83CD
EBFF83CDEBFF83CDEBFF83CDEBFF81CDEBF2006FA8930071AB010076B29952B0
D7FF85D2EDFF89D2EEFF89D2EEFF89D2EEFF89D2EEFF89D2EEFF89D2EEFF89D2
EEFF89D2EEFF89D2EEFF89D2EEFF90D8F1FF228EC1AA0077B31D0079B69574CA
E8FF75CAE8FF90D8F2FF8FD7F1FF8FD7F1FF8FD7F1FF8FD7F1FF8FD7F1FF8FD7
F1FF8FD7F1FF8FD7F1FF8FD7F1FF91D8F2FF4FB1DAC2007FBD46007CBA928FDD
F4FF63C0E5FFA8EEFAFFA8EEFAFFA8EEFAFFA8EEFAFFA8EEFAFFA8EEFAFFA8EE
FAFFA8EEFAFFA8EEFAFFA8EEFAFFA8EEFAFF86D8EFDE0083C571007FBD8EA6EC
FCFF64C2E9FF4FB5E2FF4DB4E2FF4CB3E1FF4BB2E0FF49B1DFFF48B0DFFF47AE
DEFF45ADDDFF44ACDDFF46AEDFFF0084C6C70087CB810087CB610081C18BABF0
FEFFA4E9FCFFA2E7FBFF9FE5FAFF9CE3F8FF9AE1F7FF97DEF6FF94DCF4FF91D9
F3FF8ED7F1FF8BD4F0FF90D8F3FF0081C18B0087CA000087CB000083C488ADF1
FFFFA6EBFDFFA4E9FCFFA2E7FBFF9FE5FAFF9CE3F8FF9AE1F7FF97DEF6FF94DC
F4FF91D9F3FF8ED7F1FF93DAF4FF0083C4880083C4000085C8000085C785B0F4
FFFFADF1FFFFABF0FEFFA9EEFDFFA7ECFCFFA5EAFBFFA2E8FAFFA0E6F9FF9DE3
F8FF9AE1F7FF98DFF6FF99E0F7FF0085C7850085C7000085C7000087CA620087
CA830087CA830087CA830087CA830087CA830087CA83FEFEFDFFF5F5EEFFEBEB
DDFFFEC941FFF4B62EFF0087CA830087CA620086C9000086C9000087CA000087
CA000087CA000087CA000087CA000087CA000088CC2E0088CC810088CC810088
CC810088CC810088CC810088CC2E0087CA000086C9000086C900FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00
}
OnClick = OpenBtnClick
TabOrder = 0
end
object RunBtn: TBitBtn object RunBtn: TBitBtn
AnchorSideLeft.Control = OpenBtn AnchorSideLeft.Control = MasterPoListBox
AnchorSideTop.Control = ScanDirBtn AnchorSideTop.Control = ScanDirBtn
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 8 Left = 6
Height = 50 Height = 50
Top = 149 Top = 87
Width = 184 Width = 184
BorderSpacing.Top = 5 BorderSpacing.Top = 6
Caption = '&Run Selected Tests' Caption = '&Run Selected Tests'
Enabled = False Enabled = False
Kind = bkOK Kind = bkOK
OnClick = RunBtnClick OnClick = RunBtnClick
TabOrder = 2 TabOrder = 1
end end
object NoErrLabel: TLabel object NoErrLabel: TLabel
Left = 8 AnchorSideLeft.Control = ClearMasterFilesBtn
AnchorSideBottom.Control = StatusBar
Left = 6
Height = 22 Height = 22
Top = 454 Top = 466
Width = 170 Width = 170
Anchors = [akLeft, akBottom] Anchors = [akLeft, akBottom]
BorderSpacing.Bottom = 6
Caption = 'No errors found' Caption = 'No errors found'
Font.Color = clGreen Font.Color = clGreen
Font.Height = -19 Font.Height = -19
@ -138,58 +94,58 @@ object PoCheckerForm: TPoCheckerForm
AnchorSideLeft.Control = TestListBox AnchorSideLeft.Control = TestListBox
AnchorSideTop.Control = TestListBox AnchorSideTop.Control = TestListBox
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
Left = 201 Left = 199
Height = 27 Height = 27
Top = 153 Top = 151
Width = 128 Width = 128
AutoSize = True AutoSize = True
BorderSpacing.Top = 6 BorderSpacing.Top = 6
Caption = 'Select Basic Tests' Caption = 'Select Basic Tests'
Enabled = False Enabled = False
OnClick = SelectBasicTestsBtnClick OnClick = SelectBasicTestsBtnClick
TabOrder = 4 TabOrder = 3
end end
object SelectAllTestsBtn: TButton object SelectAllTestsBtn: TButton
AnchorSideLeft.Control = SelectBasicTestsBtn AnchorSideLeft.Control = SelectBasicTestsBtn
AnchorSideLeft.Side = asrBottom AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = SelectBasicTestsBtn AnchorSideTop.Control = SelectBasicTestsBtn
Left = 333 Left = 331
Height = 27 Height = 27
Top = 153 Top = 151
Width = 110 Width = 110
AutoSize = True AutoSize = True
BorderSpacing.Left = 4 BorderSpacing.Left = 4
Caption = 'Select All Tests' Caption = 'Select All Tests'
Enabled = False Enabled = False
OnClick = SelectAllTestsBtnClick OnClick = SelectAllTestsBtnClick
TabOrder = 5 TabOrder = 4
end end
object UnselectAllTestsBtn: TButton object UnselectAllTestsBtn: TButton
AnchorSideLeft.Control = SelectAllTestsBtn AnchorSideLeft.Control = SelectAllTestsBtn
AnchorSideLeft.Side = asrBottom AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = SelectAllTestsBtn AnchorSideTop.Control = SelectAllTestsBtn
Left = 447 Left = 445
Height = 27 Height = 27
Top = 153 Top = 151
Width = 127 Width = 127
AutoSize = True AutoSize = True
BorderSpacing.Left = 4 BorderSpacing.Left = 4
Caption = 'Unselect All Tests' Caption = 'Unselect All Tests'
Enabled = False Enabled = False
OnClick = UnselectAllTestsBtnClick OnClick = UnselectAllTestsBtnClick
TabOrder = 6 TabOrder = 5
end end
object IgnoreFuzzyCheckBox: TCheckBox object IgnoreFuzzyCheckBox: TCheckBox
AnchorSideLeft.Control = TestListBox AnchorSideLeft.Control = TestListBox
AnchorSideTop.Control = SelectBasicTestsBtn AnchorSideTop.Control = SelectBasicTestsBtn
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
Left = 201 Left = 199
Height = 22 Height = 22
Top = 186 Top = 184
Width = 186 Width = 186
BorderSpacing.Top = 6 BorderSpacing.Top = 6
Caption = 'sIgnoreFuzzyTranslations' Caption = 'sIgnoreFuzzyTranslations'
TabOrder = 7 TabOrder = 6
end end
object StatusBar: TStatusBar object StatusBar: TStatusBar
Left = 0 Left = 0
@ -199,17 +155,13 @@ object PoCheckerForm: TPoCheckerForm
Panels = <> Panels = <>
end end
object ScanDirBtn: TBitBtn object ScanDirBtn: TBitBtn
AnchorSideLeft.Control = OpenBtn AnchorSideLeft.Control = MasterPoListBox
AnchorSideTop.Control = OpenBtn AnchorSideTop.Control = TestListBox
AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = RunBtn
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = RunBtn Left = 6
Left = 8
Height = 50 Height = 50
Top = 89 Top = 27
Width = 184 Width = 184
BorderSpacing.Top = 5
BorderSpacing.Bottom = 10 BorderSpacing.Bottom = 10
Caption = 'Scan a folder' Caption = 'Scan a folder'
Glyph.Data = { Glyph.Data = {
@ -249,43 +201,47 @@ object PoCheckerForm: TPoCheckerForm
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00 FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00
} }
OnClick = ScanDirBtnClick OnClick = ScanDirBtnClick
TabOrder = 1 TabOrder = 0
end end
object MasterPoListBox: TListBox object MasterPoListBox: TListBox
AnchorSideLeft.Control = Owner
AnchorSideTop.Control = IgnoreFuzzyCheckBox AnchorSideTop.Control = IgnoreFuzzyCheckBox
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = TestListBox AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = NoErrLabel AnchorSideBottom.Control = LangFilter
Left = 8 Left = 6
Height = 183 Height = 184
Top = 213 Top = 212
Width = 629 Width = 632
Anchors = [akTop, akLeft, akRight, akBottom] Anchors = [akTop, akLeft, akRight, akBottom]
BorderSpacing.Top = 5 BorderSpacing.Left = 6
BorderSpacing.Bottom = 58 BorderSpacing.Top = 6
BorderSpacing.Right = 6
BorderSpacing.Bottom = 6
ItemHeight = 0 ItemHeight = 0
MultiSelect = True MultiSelect = True
OnDrawItem = MasterPoListBoxDrawItem OnDrawItem = MasterPoListBoxDrawItem
OnResize = MasterPoListBoxResize OnResize = MasterPoListBoxResize
OnSelectionChange = MasterPoListBoxSelectionChange OnSelectionChange = MasterPoListBoxSelectionChange
ScrollWidth = 627 ScrollWidth = 630
Sorted = True Sorted = True
Style = lbOwnerDrawFixed Style = lbOwnerDrawFixed
TabOrder = 8 TabOrder = 7
TopIndex = -1 TopIndex = -1
end end
object LangFilter: TComboBox object LangFilter: TComboBox
AnchorSideLeft.Control = MasterPoListBox AnchorSideLeft.Control = MasterPoListBox
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = TestListBox AnchorSideRight.Control = MasterPoListBox
AnchorSideRight.Side = asrBottom AnchorSideRight.Side = asrBottom
Left = 8 AnchorSideBottom.Control = ClearMasterFilesBtn
Left = 6
Height = 25 Height = 25
Top = 399 Top = 402
Width = 629 Width = 632
Anchors = [akLeft, akRight] Anchors = [akLeft, akRight, akBottom]
BorderSpacing.Top = 5 BorderSpacing.Bottom = 6
ItemHeight = 0 ItemHeight = 0
ItemIndex = 0 ItemIndex = 0
Items.Strings = ( Items.Strings = (
@ -316,24 +272,23 @@ object PoCheckerForm: TPoCheckerForm
) )
OnChange = LangFilterChange OnChange = LangFilterChange
Style = csDropDownList Style = csDropDownList
TabOrder = 9 TabOrder = 8
Text = 'All languages' Text = 'All languages'
end end
object ClearMasterFilesBtn: TButton object ClearMasterFilesBtn: TButton
AnchorSideLeft.Control = MasterPoListBox AnchorSideLeft.Control = MasterPoListBox
AnchorSideTop.Control = MasterPoListBox
AnchorSideTop.Side = asrBottom AnchorSideTop.Side = asrBottom
AnchorSideBottom.Control = NoErrLabel AnchorSideBottom.Control = NoErrLabel
Left = 8 Left = 6
Height = 27 Height = 27
Top = 427 Top = 433
Width = 46 Width = 46
Anchors = [akLeft, akBottom] Anchors = [akLeft, akBottom]
AutoSize = True AutoSize = True
BorderSpacing.Top = 10 BorderSpacing.Bottom = 6
Caption = 'Clear' Caption = 'Clear'
OnClick = ClearMasterFilesBtnClick OnClick = ClearMasterFilesBtnClick
TabOrder = 10 TabOrder = 9
end end
object UnselectAllMasterFilesBtn: TButton object UnselectAllMasterFilesBtn: TButton
AnchorSideLeft.Control = SelectAllMasterFilesBtn AnchorSideLeft.Control = SelectAllMasterFilesBtn
@ -341,36 +296,32 @@ object PoCheckerForm: TPoCheckerForm
AnchorSideBottom.Control = NoErrLabel AnchorSideBottom.Control = NoErrLabel
Left = 167 Left = 167
Height = 27 Height = 27
Top = 427 Top = 433
Width = 120 Width = 120
Anchors = [akLeft, akBottom] Anchors = [akLeft, akBottom]
AutoSize = True AutoSize = True
BorderSpacing.Left = 5 BorderSpacing.Left = 6
BorderSpacing.Bottom = 6
Caption = 'Unselect all files' Caption = 'Unselect all files'
Enabled = False Enabled = False
OnClick = UnselectAllMasterFilesBtnClick OnClick = UnselectAllMasterFilesBtnClick
TabOrder = 12 TabOrder = 11
end end
object SelectAllMasterFilesBtn: TButton object SelectAllMasterFilesBtn: TButton
AnchorSideLeft.Control = ClearMasterFilesBtn AnchorSideLeft.Control = ClearMasterFilesBtn
AnchorSideLeft.Side = asrBottom AnchorSideLeft.Side = asrBottom
AnchorSideBottom.Control = NoErrLabel AnchorSideBottom.Control = NoErrLabel
Left = 59 Left = 58
Height = 27 Height = 27
Top = 427 Top = 433
Width = 103 Width = 103
Anchors = [akLeft, akBottom] Anchors = [akLeft, akBottom]
AutoSize = True AutoSize = True
BorderSpacing.Left = 5 BorderSpacing.Left = 6
BorderSpacing.Bottom = 6
Caption = 'Select all files' Caption = 'Select all files'
OnClick = SelectAllMasterFilesBtnClick OnClick = SelectAllMasterFilesBtnClick
TabOrder = 11 TabOrder = 10
end
object OpenDialog: TOpenDialog
Filter = 'po-files (*.po)|*.po|all files|*'
Options = [ofFileMustExist, ofEnableSizing, ofViewDetail]
left = 245
top = 435
end end
object SelectDirectoryDialog: TSelectDirectoryDialog object SelectDirectoryDialog: TSelectDirectoryDialog
Options = [ofEnableSizing] Options = [ofEnableSizing]

View File

@ -69,7 +69,6 @@ type
procedure SetTestTypeCheckBoxes(TestTypes: TPoTestTypes); procedure SetTestTypeCheckBoxes(TestTypes: TPoTestTypes);
procedure SetTestOptionCheckBoxes(TestOptions: TPoTestOptions); procedure SetTestOptionCheckBoxes(TestOptions: TPoTestOptions);
procedure ShowError(const Msg: string); procedure ShowError(const Msg: string);
function TrySelectFile(out Filename: String): Boolean;
procedure ScanDirectory(ADir: String); procedure ScanDirectory(ADir: String);
function TryCreatepoFamilyList(MasterList: TStrings; const LangID: TLangID): Boolean; function TryCreatepoFamilyList(MasterList: TStrings; const LangID: TLangID): Boolean;
procedure RunSelectedTests; procedure RunSelectedTests;
@ -97,14 +96,11 @@ type
SelectBasicTestsBtn: TButton; SelectBasicTestsBtn: TButton;
NoErrLabel: TLabel; NoErrLabel: TLabel;
RunBtn: TBitBtn; RunBtn: TBitBtn;
OpenBtn: TBitBtn;
Button3: TButton; Button3: TButton;
SelectTestLabel: TLabel; SelectTestLabel: TLabel;
OpenDialog: TOpenDialog;
TestListBox: TCheckListBox; TestListBox: TCheckListBox;
procedure FormCreate(Sender: TObject); procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject); procedure FormDestroy(Sender: TObject);
procedure OpenBtnClick(Sender: TObject);
procedure RunBtnClick(Sender: TObject); procedure RunBtnClick(Sender: TObject);
procedure SelectAllTestsBtnClick(Sender: TObject); procedure SelectAllTestsBtnClick(Sender: TObject);
procedure SelectBasicTestsBtnClick(Sender: TObject); procedure SelectBasicTestsBtnClick(Sender: TObject);
@ -158,42 +154,6 @@ begin
FPoCheckerSettings.Free; FPoCheckerSettings.Free;
end; end;
procedure TPoCheckerForm.OpenBtnClick(Sender: TObject);
var
Fn,Mn: String;
Idx: Integer;
ALang: TLangID;
begin
if TrySelectFile(Fn) then
begin
if IsMasterPoName(Fn) then
begin
AddToMasterPoList(Fn);
Idx := MasterPoListBox.Items.IndexOf(Fn);
if (Idx <> -1) then
MasterPoListBox.Selected[Idx] := True;
end
else
begin
Mn := ExtractMasterNameFromChildName(Fn);
if Mn <> '' then
begin
AddToMasterPoList(Mn);
Idx := MasterPoListBox.Items.IndexOf(Mn);
if (Idx <> -1) then
MasterPoListBox.Selected[Idx] := True;
ALang := ExtractLanguageFromChildName(Fn);
Idx := LangIdToLangFilterIndex(ALang);
if (Idx <> -1) then
LangFilter.ItemIndex := Idx;
end;
end;
UpdateGUI(MasterPoListBox.SelCount > 0);
end;
end;
procedure TPoCheckerForm.RunBtnClick(Sender: TObject); procedure TPoCheckerForm.RunBtnClick(Sender: TObject);
var var
AMasterList: TStringList; AMasterList: TStringList;
@ -400,25 +360,11 @@ begin
IgnoreFuzzyCheckBox.Checked := (ptoIgnoreFuzzyStrings in TestOptions); IgnoreFuzzyCheckBox.Checked := (ptoIgnoreFuzzyStrings in TestOptions);
end; end;
procedure TPoCheckerForm.ShowError(const Msg: string); procedure TPoCheckerForm.ShowError(const Msg: string);
begin begin
MessageDlg('Po-checker', Msg, mtError, [mbOK], 0); MessageDlg('Po-checker', Msg, mtError, [mbOK], 0);
end; end;
function TPoCheckerForm.TrySelectFile(out Filename: String): boolean;
begin
Result := False;
Filename := '';
if OpenDialog.Execute then
begin
Filename := OpenDialog.FileName;
Result := (CompareText(ExtractFileExt(Filename), '.po') = 0);
if not Result then Filename := '';
end;
end;
procedure TPoCheckerForm.ScanDirectory(ADir: String); procedure TPoCheckerForm.ScanDirectory(ADir: String);
var var
SL, ML, OL: TStringList; SL, ML, OL: TStringList;
@ -741,7 +687,6 @@ begin
SetTestTypeCheckBoxes(FPoCheckerSettings.TestTypes); SetTestTypeCheckBoxes(FPoCheckerSettings.TestTypes);
SetTestOptionCheckBoxes(FPoCheckerSettings.TestOptions); SetTestOptionCheckBoxes(FPoCheckerSettings.TestOptions);
SelectDirectoryDialog.Filename := FPoCheckerSettings.SelectDirectoryFilename; SelectDirectoryDialog.Filename := FPoCheckerSettings.SelectDirectoryFilename;
OpenDialog.FileName := FPoCheckerSettings.OpenDialogFilename;
Abbr := FPoCheckerSettings.LangFilterLanguageAbbr; Abbr := FPoCheckerSettings.LangFilterLanguageAbbr;
ID := LangAbbrToLangId(Abbr); ID := LangAbbrToLangId(Abbr);
LangFilter.ItemIndex := LangIdToLangFilterIndex(ID); LangFilter.ItemIndex := LangIdToLangFilterIndex(ID);
@ -754,7 +699,6 @@ var
ID: TLangID; ID: TLangID;
begin begin
FPoCheckerSettings.SelectDirectoryFilename := SelectDirectoryDialog.Filename; FPoCheckerSettings.SelectDirectoryFilename := SelectDirectoryDialog.Filename;
FPoCheckerSettings.OpenDialogFilename := OpenDialog.FileName;
//FPoCheckerSettings.LangFilterIndex := LangFilter.ItemIndex; //FPoCheckerSettings.LangFilterIndex := LangFilter.ItemIndex;
ID := LangFilterIndexToLangID(LangFilter.ItemIndex); ID := LangFilterIndexToLangID(LangFilter.ItemIndex);
FPoCheckerSettings.LangFilterLanguageAbbr := LanguageAbbr[ID]; FPoCheckerSettings.LangFilterLanguageAbbr := LanguageAbbr[ID];
@ -950,7 +894,6 @@ begin
SelectTestLabel.Caption := sSelectTestTypes; SelectTestLabel.Caption := sSelectTestTypes;
//FindAllPOsCheckBox.Caption := sFindAllTranslatedPoFiles; //FindAllPOsCheckBox.Caption := sFindAllTranslatedPoFiles;
IgnoreFuzzyCheckBox.Caption := sIgnoreFuzzyTranslations; IgnoreFuzzyCheckBox.Caption := sIgnoreFuzzyTranslations;
OpenBtn.Caption := sOpenAPoFile;
ScanDirBtn.Caption := sScanDir; ScanDirBtn.Caption := sScanDir;
RunBtn.Caption := sRunSelectedTests; RunBtn.Caption := sRunSelectedTests;
ClearMasterFilesBtn.Caption := sClearListBox; ClearMasterFilesBtn.Caption := sClearListBox;

View File

@ -26,7 +26,6 @@ type
FLangFilterLanguageAbbr: String; FLangFilterLanguageAbbr: String;
FLangPath: String; FLangPath: String;
FMainFormWindowState: TWindowState; FMainFormWindowState: TWindowState;
FOpenDialogFilename: String;
FResultsFormWindowState: TWindowState; FResultsFormWindowState: TWindowState;
FSelectDirectoryFilename: String; FSelectDirectoryFilename: String;
FTestTypes: TPoTestTypes; FTestTypes: TPoTestTypes;
@ -46,7 +45,6 @@ type
procedure LoadDisableAntiAliasing; procedure LoadDisableAntiAliasing;
function LoadExternalEditorName: String; function LoadExternalEditorName: String;
function LoadSelectDirectoryFilename: String; function LoadSelectDirectoryFilename: String;
function LoadOpenDialogFilename: String;
function LoadLangFilterLanguageAbbr: String; function LoadLangFilterLanguageAbbr: String;
function LoadLangPath: String; function LoadLangPath: String;
procedure LoadMasterPoList(List: TStrings); procedure LoadMasterPoList(List: TStrings);
@ -57,7 +55,6 @@ type
procedure SaveDisableAntialiasing; procedure SaveDisableAntialiasing;
procedure SaveExternalEditorName; procedure SaveExternalEditorName;
procedure SaveSelectDirectoryFilename; procedure SaveSelectDirectoryFilename;
procedure SaveOpenDialogFilename;
procedure SaveLangFilterLanguageAbbr; procedure SaveLangFilterLanguageAbbr;
procedure SaveLangPath; procedure SaveLangPath;
procedure SaveMasterPoList; procedure SaveMasterPoList;
@ -80,7 +77,6 @@ type
property MasterPoList: TStrings read GetMasterPoList write SetMasterPoList; property MasterPoList: TStrings read GetMasterPoList write SetMasterPoList;
property MasterPoSelList: TStrings read GetMasterPoSelList write SetMasterPoSelList; property MasterPoSelList: TStrings read GetMasterPoSelList write SetMasterPoSelList;
property SelectDirectoryFilename: String read FSelectDirectoryFilename write FSelectDirectoryFilename; property SelectDirectoryFilename: String read FSelectDirectoryFilename write FSelectDirectoryFilename;
property OpenDialogFilename: String read FOpenDialogFilename write FOpenDialogFilename;
property MainFormGeometry: TRect read FMainFormGeometry write FMainFormGeometry; property MainFormGeometry: TRect read FMainFormGeometry write FMainFormGeometry;
property ResultsFormGeometry: TRect read FResultsFormGeometry write FResultsFormGeometry; property ResultsFormGeometry: TRect read FResultsFormGeometry write FResultsFormGeometry;
property DisableAntialiasing: Boolean read GetDisableAntialiasing; property DisableAntialiasing: Boolean read GetDisableAntialiasing;
@ -166,7 +162,6 @@ const
); );
pSelectDirectoryFilename = 'SelectDirectoryFilename/'; pSelectDirectoryFilename = 'SelectDirectoryFilename/';
pOpenDialogFilename = 'OpenDialogFilename/';
pLangFilter = 'LanguageFilter/'; pLangFilter = 'LanguageFilter/';
pLangPath = 'LanguageFiles/'; pLangPath = 'LanguageFiles/';
pTestTypes = 'TestTypes/'; pTestTypes = 'TestTypes/';
@ -368,11 +363,6 @@ begin
Result := FConfig.GetValue(pSelectDirectoryFilename+'Value',''); Result := FConfig.GetValue(pSelectDirectoryFilename+'Value','');
end; end;
function TPoCheckerSettings.LoadOpenDialogFilename: String;
begin
Result := FConfig.GetValue(pOpenDialogFilename+'Value','');
end;
function TPoCheckerSettings.LoadLangFilterLanguageAbbr: String; function TPoCheckerSettings.LoadLangFilterLanguageAbbr: String;
begin begin
Result := FConfig.GetValue(pLangFilter + 'Value', ''); Result := FConfig.GetValue(pLangFilter + 'Value', '');
@ -505,11 +495,6 @@ begin
FConfig.SetDeleteValue(pSelectDirectoryFilename+'Value',FSelectDirectoryFilename,''); FConfig.SetDeleteValue(pSelectDirectoryFilename+'Value',FSelectDirectoryFilename,'');
end; end;
procedure TPoCheckerSettings.SaveOpenDialogFilename;
begin
FConfig.SetDeleteValue(pOpenDialogFilename+'Value',FOpenDialogFilename,'');
end;
procedure TPoCheckerSettings.SaveMasterPoList; procedure TPoCheckerSettings.SaveMasterPoList;
var var
Cnt, i: Integer; Cnt, i: Integer;
@ -579,7 +564,6 @@ begin
FGraphFormWindowState := wsNormal; FGraphFormWindowState := wsNormal;
FDisableAntialiasing := DEFAULT_DISABLE_ANTIALIASING; FDisableAntialiasing := DEFAULT_DISABLE_ANTIALIASING;
FExternalEditorName := ''; FExternalEditorName := '';
FOpenDialogFilename := '';
FSelectDirectoryFilename := ''; FSelectDirectoryFilename := '';
FLangFilterLanguageAbbr := ''; FLangFilterLanguageAbbr := '';
if Assigned(FMasterPoList) then FMasterPoList.Free; if Assigned(FMasterPoList) then FMasterPoList.Free;
@ -631,7 +615,6 @@ begin
FTestTypes := LoadTestTypes; FTestTypes := LoadTestTypes;
FTestOptions := LoadTestOptions; FTestOptions := LoadTestOptions;
FSelectDirectoryFilename := LoadSelectDirectoryFilename; FSelectDirectoryFilename := LoadSelectDirectoryFilename;
FOpenDialogFilename := LoadOpenDialogFilename;
FExternalEditorName := LoadExternalEditorName; FExternalEditorName := LoadExternalEditorName;
FLangFilterLanguageAbbr := LoadLangFilterLanguageAbbr; FLangFilterLanguageAbbr := LoadLangFilterLanguageAbbr;
FLangPath := LoadLangPath; FLangPath := LoadLangPath;
@ -650,14 +633,13 @@ begin
try try
FConfig.SetDeleteValue('Version','1.0',''); FConfig.SetDeleteValue('Version','1.0','');
RemoveUnwantedPaths; RemoveUnwantedPaths;
//the next line can be reomoved after some time //the next line can be removed after some time
SaveTestTypes; SaveTestTypes;
SaveTestOptions; SaveTestOptions;
SaveExternalEditorName; SaveExternalEditorName;
SaveSelectDirectoryFilename; SaveSelectDirectoryFilename;
SaveOpenDialogFilename;
SaveLangFilterLanguageAbbr; SaveLangFilterLanguageAbbr;
SaveLangPath; SaveLangPath;
SaveWindowsGeometry; SaveWindowsGeometry;