Changeset 97 for trunk/Forms
- Timestamp:
- Aug 22, 2016, 1:16:56 PM (8 years ago)
- Location:
- trunk/Forms
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
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
Note:
See TracChangeset
for help on using the changeset viewer.