Changeset 3 for trunk/UMainForm.pas
- Timestamp:
- Feb 2, 2011, 2:14:37 PM (13 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk
- Property svn:ignore
-
old new 1 1 lib 2 2 FreePascalManager.exe 3 SourceList.xml 4 Config.xml
-
- Property svn:ignore
-
trunk/UMainForm.pas
r2 r3 8 8 Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ComCtrls, 9 9 StdCtrls, ActnList, Contnrs, USource, UInstance, UOptions, 10 DOM, XMLWrite, XMLRead ;10 DOM, XMLWrite, XMLRead, HTTPSend; 11 11 12 12 const 13 13 ConfigFileName = 'Config.xml'; 14 SourceURL = 'http://tv.zdechov.net/fpc/SourceList.xml'; 14 15 15 16 type 16 17 17 { T Form1}18 19 T Form1= class(TForm)18 { TMainForm } 19 20 TMainForm = class(TForm) 20 21 AAdd: TAction; 21 22 ACompile: TAction; … … 51 52 Instances: TObjectList; 52 53 Sources: TSourceList; 53 end; 54 end; 54 55 55 56 var 56 Form1: TForm1;57 MainForm: TMainForm; 57 58 58 59 implementation … … 60 61 {$R *.lfm} 61 62 62 { T Form1}63 64 procedure T Form1.FormCreate(Sender: TObject);63 { TMainForm } 64 65 procedure TMainForm.FormCreate(Sender: TObject); 65 66 begin 66 67 Instances := TObjectList.Create; 67 68 Sources := TSourceList.Create; 68 end; 69 70 procedure TForm1.AAddExecute(Sender: TObject); 69 LoadInstanceList; 70 end; 71 72 procedure TMainForm.AAddExecute(Sender: TObject); 71 73 begin 72 74 OptionsForm.ShowModal; 73 75 end; 74 76 75 procedure T Form1.ACompileExecute(Sender: TObject);77 procedure TMainForm.ACompileExecute(Sender: TObject); 76 78 begin 77 79 if Assigned(ListView1.Selected) then … … 82 84 end; 83 85 84 procedure T Form1.ARemoveExecute(Sender: TObject);86 procedure TMainForm.ARemoveExecute(Sender: TObject); 85 87 begin 86 88 if Assigned(ListView1.Selected) then … … 91 93 end; 92 94 93 procedure T Form1.AStartExecute(Sender: TObject);95 procedure TMainForm.AStartExecute(Sender: TObject); 94 96 begin 95 97 if Assigned(ListView1.Selected) then … … 100 102 end; 101 103 102 procedure T Form1.AUpdateExecute(Sender: TObject);104 procedure TMainForm.AUpdateExecute(Sender: TObject); 103 105 begin 104 106 if Assigned(ListView1.Selected) then … … 109 111 end; 110 112 111 procedure TForm1.FormDestroy(Sender: TObject); 112 begin 113 procedure TMainForm.FormDestroy(Sender: TObject); 114 begin 115 SaveInstanceList; 113 116 Instances.Free; 114 117 Sources.Free; 115 118 end; 116 119 117 procedure T Form1.FormShow(Sender: TObject);120 procedure TMainForm.FormShow(Sender: TObject); 118 121 begin 119 122 ListView1SelectItem(nil, nil, False); 120 123 end; 121 124 122 procedure T Form1.ListView1Data(Sender: TObject; Item: TListItem);125 procedure TMainForm.ListView1Data(Sender: TObject; Item: TListItem); 123 126 begin 124 127 if Item.Index < Instances.Count then … … 131 134 end; 132 135 133 procedure T Form1.ListView1SelectItem(Sender: TObject; Item: TListItem;136 procedure TMainForm.ListView1SelectItem(Sender: TObject; Item: TListItem; 134 137 Selected: Boolean); 135 138 begin … … 141 144 end; 142 145 143 procedure T Form1.ReloadList;146 procedure TMainForm.ReloadList; 144 147 begin 145 148 ListView1.Items.Count := Instances.Count; … … 147 150 end; 148 151 149 procedure T Form1.LoadInstanceList;152 procedure TMainForm.LoadInstanceList; 150 153 var 151 154 Doc: TXMLDocument; … … 157 160 Child: TDOMNode; 158 161 begin 162 if FileExistsUTF8(ConfigFileName) then 159 163 try 160 164 ReadXMLFile(Doc, UTF8Decode(ConfigFileName)); … … 177 181 if Assigned(NewNode) then 178 182 SubversionURL := UTF8Encode(string(NewNode.TextContent)); 179 NewNode := Doc.DocumentElement.FindNode('Version ');180 if Assigned(NewNode) then 181 Version := UTF8Encode(string(NewNode.TextContent));182 NewNode := Doc.DocumentElement.FindNode('V ariation');183 if Assigned(NewNode) then 184 V ariation:= UTF8Encode(string(NewNode.TextContent));183 NewNode := Doc.DocumentElement.FindNode('VersionNumber'); 184 if Assigned(NewNode) then 185 VersionNumber := UTF8Encode(string(NewNode.TextContent)); 186 NewNode := Doc.DocumentElement.FindNode('VersionType'); 187 if Assigned(NewNode) then 188 VersionType := UTF8Encode(string(NewNode.TextContent)); 185 189 NewNode := Doc.DocumentElement.FindNode('SourceType'); 186 190 if Assigned(NewNode) then … … 227 231 end; 228 232 229 procedure T Form1.SaveInstanceList;233 procedure TMainForm.SaveInstanceList; 230 234 var 231 235 I: Integer; … … 270 274 AppendChild(NewNode); 271 275 end; 272 AppendChild( RootNode);276 AppendChild(NewNode); 273 277 274 278 NewNode := OwnerDocument.CreateElement('Sources'); … … 285 289 NewNode2.TextContent := UTF8Decode(SubversionURL); 286 290 AppendChild(NewNode); 287 NewNode2 := OwnerDocument.CreateElement('Version ');288 NewNode2.TextContent := UTF8Decode(Version );289 AppendChild(NewNode); 290 NewNode2 := OwnerDocument.CreateElement('V ariation');291 NewNode2.TextContent := UTF8Decode(V ariation);291 NewNode2 := OwnerDocument.CreateElement('VersionType'); 292 NewNode2.TextContent := UTF8Decode(VersionType); 293 AppendChild(NewNode); 294 NewNode2 := OwnerDocument.CreateElement('VersionNumber'); 295 NewNode2.TextContent := UTF8Decode(VersionNumber); 292 296 AppendChild(NewNode); 293 297 NewNode2 := OwnerDocument.CreateElement('SourceType'); … … 295 299 AppendChild(NewNode); 296 300 end; 297 AppendChild( RootNode);301 AppendChild(NewNode); 298 302 end; 299 303 WriteXMLFile(Doc, UTF8Decode(ConfigFileName)); … … 303 307 end; 304 308 309 procedure DownloadFile(const Url, PathToSaveTo: string); 310 var 311 fs: TFileStream; 312 begin 313 fs := TFileStream.Create(PathToSaveTo, fmOpenWrite or fmCreate); 314 try 315 HttpGetBinary(Url, fs); 316 finally 317 fs.Free; 318 end; 319 end; 320 305 321 end. 306 322
Note:
See TracChangeset
for help on using the changeset viewer.