Changeset 97
- Timestamp:
- Aug 22, 2016, 1:16:56 PM (8 years ago)
- Location:
- trunk
- Files:
-
- 1 added
- 14 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/AcronymDecoder.lpi
r95 r97 377 377 <StackChecks Value="True"/> 378 378 </Checks> 379 <VerifyObjMethodCallValidity Value="True"/> 379 380 </CodeGeneration> 380 381 <Linking> -
trunk/Forms/UFormAcronyms.pas
r96 r97 131 131 Meaning.Description := TempEntry.Description; 132 132 Meaning.Categories.AssignFromStrings(TempEntry.Categories); 133 134 // Update reverse references 133 135 for I := 0 to Meaning.Categories.Count - 1 do 134 TAcronymCategory(Meaning.Categories.Items[I]).AcronymMeanings.Add(Meaning); 136 if TAcronymCategory(Meaning.Categories.Items[I]).AcronymMeanings.IndexOf(Meaning) = -1 then 137 TAcronymCategory(Meaning.Categories.Items[I]).AcronymMeanings.Add(Meaning); 138 135 139 UpdateAcronymsList; 136 140 UpdateInterface; … … 173 177 Meaning.Description := TempEntry.Description; 174 178 Meaning.Categories.AssignFromStrings(TempEntry.Categories); 179 180 // Update reverse references 175 181 for I := 0 to Meaning.Categories.Count - 1 do 176 TAcronymCategory(Meaning.Categories.Items[I]).AcronymMeanings.Add(Meaning); 182 if TAcronymCategory(Meaning.Categories.Items[I]).AcronymMeanings.IndexOf(Meaning) = -1 then 183 TAcronymCategory(Meaning.Categories.Items[I]).AcronymMeanings.Add(Meaning); 184 177 185 UpdateAcronymsList; 178 186 UpdateInterface; -
trunk/Forms/UFormCategories.lfm
r85 r97 26 26 Width = 440 27 27 end> 28 MultiSelect = True 28 29 OwnerData = True 29 30 PopupMenu = PopupMenuCategory … … 85 86 OnExecute = AModifyExecute 86 87 ShortCut = 13 88 end 89 object ASelectAll: TAction 90 Caption = 'Select all' 91 OnExecute = ASelectAllExecute 92 ShortCut = 16449 87 93 end 88 94 end … … 208 214 } 209 215 end 216 object MenuItem4: TMenuItem 217 Action = ASelectAll 218 end 210 219 end 211 220 end -
trunk/Forms/UFormCategories.lrt
r51 r97 6 6 TFORMCATEGORIES.AREMOVE.CAPTION=Remove 7 7 TFORMCATEGORIES.AMODIFY.CAPTION=Modify 8 TFORMCATEGORIES.ASELECTALL.CAPTION=Select all -
trunk/Forms/UFormCategories.pas
r96 r97 15 15 TFormCategories = class(TForm) 16 16 AAdd: TAction; 17 ASelectAll: TAction; 17 18 ARemove: TAction; 18 19 AModify: TAction; … … 22 23 MenuItem2: TMenuItem; 23 24 MenuItem3: TMenuItem; 25 MenuItem4: TMenuItem; 24 26 PopupMenuCategory: TPopupMenu; 25 27 ToolBar1: TToolBar; … … 30 32 procedure AModifyExecute(Sender: TObject); 31 33 procedure ARemoveExecute(Sender: TObject); 34 procedure ASelectAllExecute(Sender: TObject); 32 35 procedure FormCreate(Sender: TObject); 33 36 procedure FormShow(Sender: TObject); … … 114 117 end; 115 118 119 procedure TFormCategories.ASelectAllExecute(Sender: TObject); 120 var 121 I: Integer; 122 begin 123 for I := 0 to ListViewCategories.Items.Count - 1 do 124 ListViewCategories.Items[I].Selected := True; 125 end; 126 116 127 procedure TFormCategories.FormCreate(Sender: TObject); 117 128 var -
trunk/Forms/UFormExport.pas
r96 r97 6 6 7 7 uses 8 Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls; 8 Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls, 9 UJobProgressView; 9 10 10 11 type … … 22 23 procedure FormCreate(Sender: TObject); 23 24 private 24 procedure ExportCSV; 25 procedure ExportMediaWiki; 26 procedure ExportMediaWikiTable; 25 ItemCount: Integer; 26 procedure JobExportCSV(Job: TJob); 27 procedure JobExportMediaWiki(Job: TJob); 28 procedure JobExportMediaWikiTable(Job: TJob); 27 29 public 28 30 { public declarations } … … 40 42 41 43 resourcestring 42 SExpotedAcronyms = 'Exported %d acronyms'; 44 SExportedAcronyms = 'Exported %d acronyms'; 45 SExporting = 'Exporting'; 43 46 44 47 { TFormExport } … … 59 62 end; 60 63 61 procedure TFormExport. ExportCSV;64 procedure TFormExport.JobExportCSV(Job: TJob); 62 65 var 63 66 I: Integer; 64 67 J: Integer; 65 ItemCount: Integer;68 Content: string; 66 69 begin 67 Memo1.Lines.Clear; 68 Memo1.Lines.BeginUpdate; 70 Job.Progress.Max := Core.AcronymDb.Acronyms.Count; 69 71 ItemCount := 0; 70 for I := 0 to Core.AcronymDb.Acronyms.Count - 1 do 71 with TAcronym(Core.AcronymDb.Acronyms[I]) do 72 for J := 0 to Meanings.Count - 1 do 73 with TAcronymMeaning(Meanings[J]) do begin 74 Memo1.Lines.Add('"' + Acronym.Name + '","' + Name + '","' + Description + '","' + Categories.GetString + '"'); 75 Inc(ItemCount); 76 end; 77 Memo1.Lines.EndUpdate; 78 ShowMessage(Format(SExpotedAcronyms, [ItemCount])); 79 end; 80 81 procedure TFormExport.ExportMediaWiki; 82 var 83 I: Integer; 84 J: Integer; 85 ItemCount: Integer; 86 begin 87 Memo1.Lines.Clear; 88 Memo1.Lines.BeginUpdate; 89 ItemCount := 0; 90 for I := 0 to Core.AcronymDb.Acronyms.Count - 1 do 91 with TAcronym(Core.AcronymDb.Acronyms[I]) do begin 92 Memo1.Lines.Add('; ' + Name); 93 for J := 0 to Meanings.Count - 1 do 94 with TAcronymMeaning(Meanings[J]) do begin 95 Memo1.Lines.Add(': ' + Name); 96 Inc(ItemCount); 97 end; 98 end; 99 Memo1.Lines.EndUpdate; 100 ShowMessage(Format(SExpotedAcronyms, [ItemCount])); 101 end; 102 103 procedure TFormExport.ExportMediaWikiTable; 104 var 105 I: Integer; 106 J: Integer; 107 ItemCount: Integer; 108 begin 109 Memo1.Lines.Clear; 110 Memo1.Lines.BeginUpdate; 111 ItemCount := 0; 112 Memo1.Lines.Add('{| class="wikitable sortable"'); 113 Memo1.Lines.Add('! Name !! Meaning !! Description !! Categories'); 72 Content := ''; 114 73 for I := 0 to Core.AcronymDb.Acronyms.Count - 1 do 115 74 with TAcronym(Core.AcronymDb.Acronyms[I]) do begin 116 75 for J := 0 to Meanings.Count - 1 do 117 76 with TAcronymMeaning(Meanings[J]) do begin 118 Memo1.Lines.Add('|-'); 119 Memo1.Lines.Add('| ' + Acronym.Name + ' || ' + Name + ' || ' + Description + ' || ' + Categories.GetString); 77 Content := Content + '"' + Acronym.Name + '","' + Name + '","' + Description + '","' + Categories.GetString + '"' + LineEnding; 120 78 Inc(ItemCount); 121 79 end; 80 Job.Progress.Increment; 81 if Job.Terminate then Break; 122 82 end; 123 Memo1.Lines.Add('|}'); 124 Memo1.Lines.EndUpdate; 125 ShowMessage(Format(SExpotedAcronyms, [ItemCount])); 83 Memo1.Lines.Text := Content; 84 end; 85 86 procedure TFormExport.JobExportMediaWiki(Job: TJob); 87 var 88 I: Integer; 89 J: Integer; 90 Content: string; 91 begin 92 Job.Progress.Max := Core.AcronymDb.Acronyms.Count; 93 ItemCount := 0; 94 Content := ''; 95 for I := 0 to Core.AcronymDb.Acronyms.Count - 1 do 96 with TAcronym(Core.AcronymDb.Acronyms[I]) do begin 97 Content := Content + '; ' + Name + LineEnding; 98 for J := 0 to Meanings.Count - 1 do 99 with TAcronymMeaning(Meanings[J]) do begin 100 Content := Content + ': ' + Name + LineEnding; 101 Inc(ItemCount); 102 end; 103 Job.Progress.Increment; 104 if Job.Terminate then Break; 105 end; 106 Memo1.Lines.Text := Content; 107 end; 108 109 procedure TFormExport.JobExportMediaWikiTable(Job: TJob); 110 var 111 I: Integer; 112 J: Integer; 113 Line: string; 114 Content: string; 115 begin 116 Job.Progress.Max := Core.AcronymDb.Acronyms.Count; 117 ItemCount := 0; 118 Content := '{| class="wikitable sortable"' + LineEnding + 119 '! Name !! Meaning !! Description !! Categories' + LineEnding; 120 for I := 0 to Core.AcronymDb.Acronyms.Count - 1 do 121 with TAcronym(Core.AcronymDb.Acronyms[I]) do begin 122 for J := 0 to Meanings.Count - 1 do 123 with TAcronymMeaning(Meanings[J]) do begin 124 Content := Content + '|-' + LineEnding + 125 '| ' + Acronym.Name + LineEnding + '| ' + Name + LineEnding + 126 '| ' + Description + LineEnding + '| ' + Categories.GetString + LineEnding; 127 Inc(ItemCount); 128 end; 129 Job.Progress.Increment; 130 if Job.Terminate then Break; 131 end; 132 Content := Content + '|}' + LineEnding; 133 Memo1.Lines.Text := Content; 126 134 end; 127 135 128 136 procedure TFormExport.ButtonProcessClick(Sender: TObject); 129 137 begin 130 if ComboBoxDataFormat.ItemIndex = 0 then ExportCSV; 131 if ComboBoxDataFormat.ItemIndex = 1 then ExportMediaWiki; 132 if ComboBoxDataFormat.ItemIndex = 2 then ExportMediaWikiTable; 138 if ComboBoxDataFormat.ItemIndex = 0 then 139 Core.JobProgressView1.AddJob(SExporting, JobExportCSV); 140 if ComboBoxDataFormat.ItemIndex = 1 then 141 Core.JobProgressView1.AddJob(SExporting, JobExportMediaWiki); 142 if ComboBoxDataFormat.ItemIndex = 2 then 143 Core.JobProgressView1.AddJob(SExporting, JobExportMediaWikiTable); 144 Core.JobProgressView1.Start; 145 ShowMessage(Format(SExportedAcronyms, [ItemCount])); 133 146 end; 134 147 -
trunk/Forms/UFormImportSources.pas
r96 r97 184 184 var 185 185 NewImportSource: TImportSource; 186 I: Integer; 186 187 begin 187 188 NewImportSource := TImportSource.Create; … … 194 195 if not Assigned(ImportSources.SearchByName(NewImportSource.Name)) then begin; 195 196 ImportSources.Add(NewImportSource); 197 198 // Update reverse references 199 for I := 0 to NewImportSource.Categories.Count - 1 do 200 if TAcronymCategory(NewImportSource.Categories.Items[I]).ImportSources.IndexOf(NewImportSource) = -1 then 201 TAcronymCategory(NewImportSource.Categories.Items[I]).ImportSources.Add(NewImportSource); 202 196 203 NewImportSource := nil; 197 204 Core.AcronymDb.Modified := True; … … 228 235 var 229 236 NewImportSource: TImportSource; 237 I: Integer; 230 238 begin 231 239 if Assigned(ListView1.Selected) then begin … … 241 249 TImportSource(ListView1.Selected.Data).Assign(NewImportSource); 242 250 Core.AcronymDb.Modified := True; 243 UpdateList;244 251 end else ShowMessage(Format(SImportSourceAlreadyExists, [NewImportSource.Name])); 245 252 end else begin 246 253 TImportSource(ListView1.Selected.Data).Assign(NewImportSource); 247 254 Core.AcronymDb.Modified := True; 248 UpdateList;249 255 end; 256 257 // Update reverse references 258 TImportSource(ListView1.Selected.Data).Categories.UpdateLinkImportSources(TImportSource(ListView1.Selected.Data)); 259 260 UpdateList; 250 261 end; 251 262 if Assigned(NewImportSource) then NewImportSource.Free; -
trunk/Forms/UFormMain.lfm
r96 r97 685 685 0000 686 686 } 687 Hint = 'Acronym Decoder' 687 688 Visible = True 688 689 OnClick = TrayIcon1Click … … 1989 1990 } 1990 1991 end 1991 object JobProgressView1: TJobProgressView1992 OwnerDraw = False1993 ShowDelay = 01994 AutoClose = False1995 left = 2641996 top = 2961997 end1998 1992 object PopupMenuOpenRecent: TPopupMenu 1999 1993 left = 672 -
trunk/Forms/UFormMain.pas
r96 r97 35 35 CheckBoxExactMath: TCheckBox; 36 36 ImageList1: TImageList; 37 JobProgressView1: TJobProgressView;38 37 LastOpenedList1: TLastOpenedList; 39 38 ListViewAcronyms: TListView; … … 104 103 procedure AShowImportSourcesExecute(Sender: TObject); 105 104 procedure CheckBoxExactMathChange(Sender: TObject); 106 procedure CoolTranslator1Translate(Sender: TObject);107 105 procedure EditSearchChange(Sender: TObject); 108 106 procedure FormHide(Sender: TObject); … … 298 296 ImportTotalItemCount := 0; 299 297 Core.AcronymDb.AddedCount := 0; 300 JobProgressView1.AddJob(SProcessImportSources, ProcessImportsJob);301 JobProgressView1.Start;298 Core.JobProgressView1.AddJob(SProcessImportSources, ProcessImportsJob); 299 Core.JobProgressView1.Start; 302 300 ShowMessage(Format(SAddedCount, [ImportTotalItemCount, Core.AcronymDb.AddedCount])); 303 301 UpdateAcronymsList; … … 403 401 begin 404 402 UpdateAcronymsList; 405 end;406 407 procedure TFormMain.CoolTranslator1Translate(Sender: TObject);408 begin409 UAcronym.Translate;410 403 end; 411 404 -
trunk/Languages/AcronymDecoder.cs.po
r95 r97 104 104 105 105 #: tformacronyms.aselectall.caption 106 msgctxt "tformacronyms.aselectall.caption" 106 107 msgid "Select all" 107 108 msgstr "Vybrat vše" … … 147 148 msgstr "Odebrat" 148 149 150 #: tformcategories.aselectall.caption 151 msgctxt "tformcategories.aselectall.caption" 152 msgid "Select all" 153 msgstr "Vybrat vše" 154 149 155 #: tformcategories.caption 150 156 msgid "Acronym categories" … … 671 677 msgstr "Zkratka" 672 678 679 #: uacronym.scategory 680 msgctxt "uacronym.scategory" 681 msgid "Category" 682 msgstr "Kategorie" 683 673 684 #: uacronym.sdescription 674 685 msgctxt "uacronym.sdescription" … … 796 807 msgstr "Opravdu chcete odebrat vybrané kategorie?" 797 808 798 #: uformexport.sexpotedacronyms 809 #: uformexport.sexportedacronyms 810 msgctxt "uformexport.sexportedacronyms" 799 811 msgid "Exported %d acronyms" 800 812 msgstr "Exportováno %d zkratek" 813 814 #: uformexport.sexporting 815 msgid "Exporting" 816 msgstr "Exportování" 801 817 802 818 #: uformimport.simportednewacronyms … … 870 886 msgid "Process import sources" 871 887 msgstr "Zpracovat zdroje importu" 872 -
trunk/Languages/AcronymDecoder.po
r90 r97 94 94 95 95 #: tformacronyms.aselectall.caption 96 msgctxt "tformacronyms.aselectall.caption" 96 97 msgid "Select all" 97 98 msgstr "" … … 137 138 msgstr "" 138 139 140 #: tformcategories.aselectall.caption 141 msgctxt "TFORMCATEGORIES.ASELECTALL.CAPTION" 142 msgid "Select all" 143 msgstr "" 144 139 145 #: tformcategories.caption 140 146 msgid "Acronym categories" … … 661 667 msgstr "" 662 668 669 #: uacronym.scategory 670 msgctxt "uacronym.scategory" 671 msgid "Category" 672 msgstr "" 673 663 674 #: uacronym.sdescription 664 675 msgctxt "uacronym.sdescription" … … 786 797 msgstr "" 787 798 788 #: uformexport.sexpotedacronyms 799 #: uformexport.sexportedacronyms 800 msgctxt "uformexport.sexportedacronyms" 789 801 msgid "Exported %d acronyms" 802 msgstr "" 803 804 #: uformexport.sexporting 805 msgid "Exporting" 790 806 msgstr "" 791 807 -
trunk/UAcronym.pas
r89 r97 7 7 uses 8 8 Classes, SysUtils, Contnrs, XMLRead, XMLWrite, DOM, UXMLUtils, 9 SpecializedList, fphttpclient , Dialogs, odbcconn, sqldb;9 SpecializedList, fphttpclient2, Dialogs, odbcconn, sqldb; 10 10 11 11 type … … 13 13 TAcronymMeanings = class; 14 14 TAcronymDb = class; 15 TImportSource = class; 15 16 TImportSources = class; 16 17 TImportFormats = class; … … 73 74 Name: string; 74 75 AcronymMeanings: TAcronymMeanings; 76 ImportSources: TImportSources; 75 77 procedure SaveToNode(Node: TDOMNode); 76 78 procedure LoadFromNode(Node: TDOMNode); … … 93 95 procedure AssignToStrings(Strings: TStrings); 94 96 procedure AssignFromStrings(Strings: TStrings); 97 procedure AddFromStrings(Strings: TStrings); 95 98 function GetString: string; 99 procedure UpdateLinkImportSources(Item: TImportSource); 100 procedure UpdateLinkAcronymMeanings(Item: TAcronymMeaning); 96 101 end; 97 102 … … 108 113 end; 109 114 110 TImportPatternFlag = (ipf None, ipfNewItem, ipfSkip, ipfRemove);111 TImportVariable = (ivNone, ivAcronym, ivMeaning, ivDescription );115 TImportPatternFlag = (ipfSet, ipfNewItem, ipfSkip, ipfRemove, ipfCleanSet); 116 TImportVariable = (ivNone, ivAcronym, ivMeaning, ivDescription, ivCategory); 112 117 113 118 { TImportPattern } … … 244 249 SMeaning = 'Meaning'; 245 250 SAcronym = 'Acronym'; 251 SCategory = 'Category'; 246 252 SNone = 'None'; 247 253 SNewItem = 'New item'; … … 258 264 ImportVariableString[ivMeaning] := SMeaning; 259 265 ImportVariableString[ivDescription] := SDescription; 260 ImportPatternFlagString[ipfNone] := SNone; 266 ImportVariableString[ivCategory] := SCategory; 267 ImportPatternFlagString[ipfSet] := SNone; 261 268 ImportPatternFlagString[ipfNewItem] := SNewItem; 262 269 ImportPatternFlagString[ipfSkip] := SSkip; … … 429 436 I: Integer; 430 437 T: string; 438 TT: string; 431 439 LastLength: Integer; 432 440 AddedAcronym: TAcronymMeaning; 441 NewCategory: TAcronymCategory; 433 442 begin 434 443 NewAcronym := TAcronymEntry.Create; … … 492 501 ivMeaning: NewAcronym.Meaning := T; 493 502 ivDescription: NewAcronym.Description := T; 503 ivCategory: begin 504 NewAcronym.Categories.Clear; 505 while T <> '' do begin 506 if Pos(',', T) > 0 then begin 507 TT := Copy(T, 1, Pos(',', T) - 1); 508 Delete(T, 1, Length(TT) + 1); 509 end else begin 510 TT := T; 511 T := ''; 512 end; 513 TT := Trim(TT); 514 NewCategory := Sources.AcronymDb.Categories.SearchByName(TT); 515 if not Assigned(NewCategory) then begin 516 NewCategory := TAcronymCategory.Create; 517 NewCategory.Name := TT; 518 Sources.AcronymDb.Categories.Add(NewCategory); 519 end; 520 NewAcronym.Categories.AddObject(TT, NewCategory); 521 end; 522 end; 494 523 end; 495 524 end; … … 501 530 AddedAcronym.Description := NewAcronym.Description; 502 531 AddedAcronym.MergeCategories(Categories); 532 AddedAcronym.Categories.AddFromStrings(NewAcronym.Categories); 533 AddedAcronym.Categories.UpdateLinkAcronymMeanings(AddedAcronym); 503 534 if AddedAcronym.Sources.IndexOf(Self) = -1 then 504 535 AddedAcronym.Sources.Add(Self); … … 877 908 var 878 909 Node2: TDOMNode; 910 I: Integer; 879 911 begin 880 912 Name := ReadString(Node, 'Name', ''); … … 890 922 if Assigned(Node2) then 891 923 Categories.LoadRefFromNode(Node2); 924 925 // Add reverse references 926 for I := 0 to Categories.Count - 1 do 927 TAcronymCategory(Categories[I]).ImportSources.Add(Self); 892 928 end; 893 929 … … 902 938 903 939 destructor TImportSource.Destroy; 904 begin 940 var 941 I: Integer; 942 begin 943 for I := 0 to Categories.Count - 1 do 944 TAcronymCategory(Categories[I]).ImportSources.Remove(Self); 945 FreeAndNil(Categories); 905 946 FreeAndNil(ResponseStream); 906 FreeAndNil(Categories);907 947 inherited Destroy; 908 948 end; … … 1245 1285 1246 1286 procedure TAcronymCategories.AssignFromStrings(Strings: TStrings); 1247 var1248 I: Integer;1249 1287 begin 1250 1288 Clear; 1289 AddFromStrings(Strings); 1290 end; 1291 1292 procedure TAcronymCategories.AddFromStrings(Strings: TStrings); 1293 var 1294 I: Integer; 1295 begin 1251 1296 for I := 0 to Strings.Count - 1 do begin 1252 1297 Add(TAcronymCategory(Strings.Objects[I])); … … 1264 1309 end; 1265 1310 1311 procedure TAcronymCategories.UpdateLinkImportSources(Item: TImportSource); 1312 var 1313 I: Integer; 1314 begin 1315 for I := 0 to Count - 1 do 1316 if TAcronymCategory(Items[I]).ImportSources.IndexOf(Item) = -1 then 1317 TAcronymCategory(Items[I]).ImportSources.Add(Item); 1318 end; 1319 1320 procedure TAcronymCategories.UpdateLinkAcronymMeanings(Item: TAcronymMeaning); 1321 var 1322 I: Integer; 1323 begin 1324 for I := 0 to Count - 1 do 1325 if TAcronymCategory(Items[I]).AcronymMeanings.IndexOf(Item) = -1 then 1326 TAcronymCategory(Items[I]).AcronymMeanings.Add(Item); 1327 end; 1328 1266 1329 1267 1330 { TAcronym } … … 1318 1381 begin 1319 1382 AcronymMeanings := TAcronymMeanings.Create(False); 1383 ImportSources := TImportSources.Create(False); 1320 1384 end; 1321 1385 … … 1327 1391 TAcronymMeaning(AcronymMeanings[I]).Categories.Remove(Self); 1328 1392 FreeAndNil(AcronymMeanings); 1393 for I := 0 to ImportSources.Count - 1 do 1394 TImportSource(ImportSources[I]).Categories.Remove(Self); 1395 FreeAndNil(ImportSources); 1329 1396 inherited Destroy; 1330 1397 end; -
trunk/UCore.lfm
r96 r97 9 9 object CoolTranslator1: TCoolTranslator 10 10 POFilesFolder = 'Languages' 11 OnTranslate = CoolTranslator1Translate 11 12 left = 152 12 13 top = 152 … … 18 19 top = 156 19 20 end 21 object JobProgressView1: TJobProgressView 22 OwnerDraw = False 23 ShowDelay = 0 24 AutoClose = False 25 left = 292 26 top = 272 27 end 20 28 end -
trunk/UCore.pas
r96 r97 7 7 uses 8 8 Classes, SysUtils, FileUtil, UAcronym, UCoolTranslator, UPersistentForm, 9 Forms, Controls, LazFileUtils;9 UJobProgressView, Forms, Controls, LazFileUtils; 10 10 11 11 type … … 15 15 TCore = class(TDataModule) 16 16 CoolTranslator1: TCoolTranslator; 17 JobProgressView1: TJobProgressView; 17 18 PersistentForm1: TPersistentForm; 19 procedure CoolTranslator1Translate(Sender: TObject); 18 20 procedure DataModuleCreate(Sender: TObject); 19 21 procedure DataModuleDestroy(Sender: TObject); … … 58 60 begin 59 61 FreeAndNil(AcronymDb); 62 end; 63 64 procedure TCore.CoolTranslator1Translate(Sender: TObject); 65 begin 66 UAcronym.Translate; 60 67 end; 61 68
Note:
See TracChangeset
for help on using the changeset viewer.