Changeset 507 for ProjectTemplates/FileMenuProject/UCore.pas
- Timestamp:
- Mar 29, 2018, 10:11:06 AM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
ProjectTemplates/FileMenuProject/UCore.pas
r499 r507 8 8 Classes, SysUtils, FileUtil, Controls, ActnList, Forms, Dialogs, 9 9 ULastOpenedList, UApplicationInfo, UPersistentForm, UScaleDPI, UCommon, 10 UCoolTranslator, UDataFile, Menus, URegistry, Registry;10 UCoolTranslator, UDataFile, Menus, URegistry, UTheme, Registry; 11 11 12 12 type … … 34 34 SaveDialog1: TSaveDialog; 35 35 ScaleDPI1: TScaleDPI; 36 ThemeManager1: TThemeManager; 36 37 procedure AAboutExecute(Sender: TObject); 37 38 procedure AExitExecute(Sender: TObject); … … 57 58 public 58 59 DataFile: TDataFile; 60 DataFileClass: TDataFileClass; 61 59 62 FileClosed: Boolean; 60 63 ReopenLastFileOnStart: Boolean; … … 64 67 procedure FileClose; 65 68 procedure Initialize; 69 procedure Finalize; 66 70 procedure UpdateInterface; 67 71 end; … … 130 134 131 135 procedure TCore.AFileOpenExecute(Sender: TObject); 136 var 137 TempFile: TDataFile; 132 138 begin 133 139 OpenDialog1.DefaultExt := ''; 140 TempFile := DataFileClass.Create; 141 try 142 OpenDialog1.Filter := TempFile.GetFileDialogFilter; 143 OpenDialog1.DefaultExt := TempFile.GetFileExt; 144 finally 145 TempFile.Free; 146 end; 134 147 if Assigned(DataFile) then begin 135 148 OpenDialog1.InitialDir := ExtractFileDir(DataFile.FileName); … … 153 166 SaveDialog1.InitialDir := ExtractFileDir(DataFile.FileName); 154 167 SaveDialog1.FileName := ExtractFileName(DataFile.FileName); 168 SaveDialog1.Filter := DataFile.GetFileDialogFilter; 155 169 if SaveDialog1.Execute then begin 156 170 DataFile.SaveToFile(SaveDialog1.FileName); … … 173 187 DataFile := nil; 174 188 FileClosed := True; 189 DataFileClass := TDataFile; 175 190 end; 176 191 177 192 procedure TCore.DataModuleDestroy(Sender: TObject); 178 193 begin 179 SaveConfig;180 194 end; 181 195 … … 255 269 FormMain.MenuItemToolbar.Checked := ReadBoolWithDefault('ToolBarVisible', True); 256 270 ReopenLastFileOnStart := ReadBoolWithDefault('ReopenLastFileOnStart', True); 271 ThemeManager1.Theme := ThemeManager1.Themes.FindByName(ReadStringWithDefault('Theme', 'System')); 257 272 finally 258 273 Free; … … 273 288 WriteBool('ToolBarVisible', FormMain.MenuItemToolbar.Checked); 274 289 WriteBool('ReopenLastFileOnStart', ReopenLastFileOnStart); 290 WriteString('Theme', ThemeManager1.Theme.Name); 275 291 finally 276 292 Free; … … 311 327 end; 312 328 329 procedure TCore.Finalize; 330 begin 331 SaveConfig; 332 end; 333 313 334 function TCore.FindFirstNonOption: string; 314 335 var
Note:
See TracChangeset
for help on using the changeset viewer.