root/trunk/BaseOptForm.pas

Revision 4, 8.3 kB (checked in by sagrer, 1 year ago)

Исходник помещен в trunk

  • Property svnmailer:content-charset set to cp1251
Line 
1 ///////////////////////////////////////////////////////////
2 //                        EiEdit                         //
3 //      Ðåäàêòîð ÷àñòè ðåñóðñîâ Ïðîêëÿòûõ Çåìåëü         //
4 //             Copyright (C) 2002 Gipat Group            //
5 //              Ðàñïðîñòðàíÿåòñÿ íà óñëîâèÿõ             //
6 //    Gipat Group's opened EI-editor-utility license     //
7 //                      âåðñèè 1.0                       //
8 //                                                       //
9 //                  www.gipatgroup.org                   //
10 ///////////////////////////////////////////////////////////
11
12 //Ê ðàáîòå íàä äàííûì ôàéëîì ïðèëîæèëè ðóêè, íîãè.... êîðî÷å àôôòàðû:
13 // 1) Sagrer (sagrer@yandex.ru)
14
15 ////////////////////////////////////////////////////////////////////////
16
17 unit BaseOptForm;
18
19 interface
20
21 uses
22   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
23   StdCtrls, initer, PZed, MySys;
24
25 type
26   TBaseOptF = class(TForm)
27     OkBut: TButton;
28     CancelBut: TButton;
29     DbLmpResIshEd: TEdit;
30     DbResEd: TEdit;
31     Label1: TLabel;
32     Label2: TLabel;
33     Browse1But: TButton;
34     Browse4But: TButton;
35     Label3: TLabel;
36     DbLmpResEd: TEdit;
37     Browse2But: TButton;
38     Label4: TLabel;
39     DbResIshEd: TEdit;
40     Browse3But: TButton;
41     OFD1: TOpenDialog;
42     procedure Browse1ButClick(Sender: TObject);
43     procedure Browse4ButClick(Sender: TObject);
44     procedure FormShow(Sender: TObject);
45     procedure OkButClick(Sender: TObject);
46     procedure CancelButClick(Sender: TObject);
47     procedure Browse3ButClick(Sender: TObject);
48     procedure Browse2ButClick(Sender: TObject);
49     procedure FormClose(Sender: TObject; var Action: TCloseAction);
50     procedure FormKeyPress(Sender: TObject; var Key: Char);
51   private
52     { Private declarations }
53     DbResEd_PBSost : boolean;
54     DbLmpResEd_PBSost : boolean;
55     DbResIshEd_PBSost : boolean;
56     DbLmpResIshEd_PBSost : boolean;
57     Browse1But_PBSost : boolean;
58     Browse2But_PBSost : boolean;
59     Browse3But_PBSost : boolean;
60     Browse4But_PBSost : boolean;
61     OkBut_PBSost : boolean;
62     CancelBut_PBSost : boolean;
63     CanClose : boolean;
64     procedure BlockForm;
65     procedure UnBlockForm;
66   public
67     { Public declarations }
68   end;
69
70 var
71   BaseOptF: TBaseOptF;
72
73 implementation
74
75 uses BrowseDirForm, KOL;
76
77 {$R *.DFM}
78
79 procedure TBaseOptF.Browse1ButClick(Sender: TObject);
80 begin
81   //Ïî íàæàòèþ êíîïêè - îòêðûòü äèàëîã âûáîðà ôàéëà...
82
83   //Ïîäãîòîâèòü äèàëîã...
84   If DirectoryExists(ExtractFilePath(DbResEd.Text)) = true then begin
85     OFD1.InitialDir := ExtractFilePath(DbResEd.Text);
86     OFD1.FileName := ExtractFileName(DbResEd.Text);
87   end
88   else begin
89     OFD1.InitialDir := DefalDir;
90   end;
91
92   //Çàïóñòèòü äèàëîã è â ñëó÷àå åãî óñåøíîãî çàâåðøåíèÿ - îáðàáîòàòü ðåçóëüòàò.
93   If OFD1.Execute = true then begin
94     DbResEd.Text := OFD1.FileName;
95   end;
96  
97 end;
98
99 procedure TBaseOptF.Browse4ButClick(Sender: TObject);
100 var
101   ODD1 : POpenDirDialog;
102 begin
103   //Ïî íàæàòèþ êíîïêè - îòêðûòü äèàëîã âûáîðà ïàïêè...
104
105   //Ïîäãîòîâèòü äèàëîã...
106   ODD1 := NewOpenDirDialog('Âûáåðèòå äèðåêòîðèþ',[]);
107   If DirectoryExists(DbLmpResIshEd.Text) = true then begin
108     ODD1.InitialPath := DbLmpResIshEd.Text;
109   end
110   else begin
111     ODD1.InitialPath := DefalDir;
112   end;
113   ODD1.WndOwner := Application.Handle;  //Õåíäë "õîçÿèíà äèàëîãà"...
114
115   //Çàïóñòèòü äèàëîã è â ñëó÷àå åãî óñåøíîãî çàâåðøåíèÿ - îáðàáîòàòü ðåçóëüòàò.
116   If ODD1.Execute = true then begin
117     DbLmpResIshEd.Text := AddLastSlash(ODD1.Path);
118   end;
119
120   //È óáèòü äèàëîã...
121   ODD1.Free;
122 end;
123
124 procedure TBaseOptF.FormShow(Sender: TObject);
125 begin
126   //Çàñóíóòü â ïîëÿ ââîäà ñòðîêè èç ïåðåìåííûõ...
127   DbResEd.Text := DatabaseResPath;
128   DbLmpResEd.Text := DatabaselmpResPath;
129   DbResIshEd.Text := DatabaseResIsh;
130   DbLmpResIshEd.Text := DatabaselmpResIsh;
131
132   CanClose := false;  //Çàïðåòèòü çàêðûâàòü ïðîñòî òàê...
133 end;
134
135 procedure TBaseOptF.OkButClick(Sender: TObject);
136 begin
137   //Çàïèñàòü â èíèøíèê è ãëîáàëüíûå ïåðåìåííûå íîâûå çíà÷åíèÿ...
138
139   //Äëÿ íà÷àëà - çàïîìíèòü ãëîáàëüíûå ïåðåìåííûå...
140   DatabaseResPath := DbResEd.Text;
141   DatabaselmpResPath := DbLmpResEd.Text;
142   DatabaseResIsh := DbResIshEd.Text;
143   DatabaselmpResIsh := DbLmpResIshEd.Text;
144
145   //È çàïèñàòü ýòî âñå â èíèøíèê...
146   AnIniFil.Load(IniFilPath);  //Ëîàäíóòü èíèøíèê.
147   AnIniFil.WriteString('MainSettings','DatabaseResPath',DatabaseResPath);
148   AnIniFil.WriteString('MainSettings','DatabaselmpResPath',DatabaselmpResPath);
149   AnIniFil.WriteString('MainSettings','DatabaseResIsh',DatabaseResIsh);
150   AnIniFil.WriteString('MainSettings','DatabaselmpResIsh',DatabaselmpResIsh);
151   AnIniFil.Save(IniFilPath);  //È ñàâíóòü. Òèïà âñå îê :)
152
153   //È çàêðûòü äèàëîã.
154   CanClose := true;
155   ModalResult := MrOk;
156   CloseLishneeBase;
157 end;
158
159 procedure TBaseOptF.CancelButClick(Sender: TObject);
160 begin
161   CanClose := true;
162   ModalResult := MrCancel;
163 end;
164
165 procedure TBaseOptF.Browse3ButClick(Sender: TObject);
166 var
167   ODD1 : POpenDirDialog;
168 begin
169   //Ïî íàæàòèþ êíîïêè - îòêðûòü äèàëîã âûáîðà ïàïêè...
170
171   //Ïîäãîòîâèòü äèàëîã...
172   ODD1 := NewOpenDirDialog('Âûáåðèòå äèðåêòîðèþ',[]);
173   If DirectoryExists(DbResIshEd.Text) = true then begin
174     ODD1.InitialPath := DbResIshEd.Text;
175   end
176   else begin
177     ODD1.InitialPath := DefalDir;
178   end;
179   ODD1.WndOwner := Application.Handle;  //Õåíäë "õîçÿèíà äèàëîãà"...
180
181   //Çàïóñòèòü äèàëîã è â ñëó÷àå åãî óñåøíîãî çàâåðøåíèÿ - îáðàáîòàòü ðåçóëüòàò.
182   If ODD1.Execute = true then begin
183     DbResIshEd.Text := AddLastSlash(ODD1.Path);
184   end;
185
186   //È óáèòü äèàëîã...
187   ODD1.Free;
188 end;
189
190 procedure TBaseOptF.Browse2ButClick(Sender: TObject);
191 begin
192   //Ïî íàæàòèþ êíîïêè - îòêðûòü äèàëîã âûáîðà ôàéëà...
193
194   //Ïîäãîòîâèòü äèàëîã...
195   If DirectoryExists(ExtractFilePath(DbLmpResEd.Text)) = true then begin
196     OFD1.InitialDir := ExtractFilePath(DbLmpResEd.Text);
197     OFD1.FileName := ExtractFileName(DbLmpResEd.Text);
198   end
199   else begin
200     OFD1.InitialDir := DefalDir;
201   end;
202
203   //Çàïóñòèòü äèàëîã è â ñëó÷àå åãî óñåøíîãî çàâåðøåíèÿ - îáðàáîòàòü ðåçóëüòàò.
204   If OFD1.Execute = true then begin
205     DbLmpResEd.Text := OFD1.FileName;
206   end;
207 end;
208
209 procedure TBaseOptF.BlockForm;
210 begin
211   //Áëîêèðîâêà âñåõ ýëåìåíòîâ ôîðìû...
212
213   //Çàïîìíèòü ñîñòîÿíèÿ...
214   DbResEd_PBSost := DbResEd.Enabled;
215   DbLmpResEd_PBSost := DbLmpResEd.Enabled;
216   DbResIshEd_PBSost := DbResIshEd.Enabled;
217   DbLmpResIshEd_PBSost := DbLmpResIshEd.Enabled;
218   Browse1But_PBSost := Browse1But.Enabled;
219   Browse2But_PBSost := Browse2But.Enabled;
220   Browse3But_PBSost := Browse3But.Enabled;
221   Browse4But_PBSost := Browse4But.Enabled;
222   OkBut_PBSost := OkBut.Enabled;
223   CancelBut_PBSost := CancelBut.Enabled;
224
225   //È çàáëîêèðîâàòü...
226   DbResEd.Enabled := false;
227   DbLmpResEd.Enabled := false;
228   DbResIshEd.Enabled := false;
229   DbLmpResIshEd.Enabled := false;
230   Browse1But.Enabled := false;
231   Browse2But.Enabled := false;
232   Browse3But.Enabled := false;
233   Browse4But.Enabled := false;
234   OkBut.Enabled := false;
235   CancelBut.Enabled := false;
236 end;
237
238
239 procedure TBaseOptF.FormClose(Sender: TObject; var Action: TCloseAction);
240 begin
241   If CanClose = true then begin
242     Action := Forms.caHide;   //Forms - ïîòîìó ÷òî èíà÷å êîíôëèêòóåò ñ KOL.
243   end
244   else begin
245     Action := Forms.caNone;
246   end; 
247 end;
248
249 procedure TBaseOptF.UnBlockForm;
250 begin
251   //À òóò - âåðíóòü ýëåìåíòàì äîáëîêèðîâî÷íîå ñîñòîÿíèå
252   DbResEd.Enabled := DbResEd_PBSost;
253   DbLmpResEd.Enabled := DbLmpResEd_PBSost;
254   DbResIshEd.Enabled := DbResIshEd_PBSost;
255   DbLmpResIshEd.Enabled := DbLmpResIshEd_PBSost;
256   Browse1But.Enabled := Browse1But_PBSost;
257   Browse2But.Enabled := Browse2But_PBSost;
258   Browse3But.Enabled := Browse3But_PBSost;
259   Browse4But.Enabled := Browse4But_PBSost;
260   OkBut.Enabled := OkBut_PBSost;
261   CancelBut.Enabled := CancelBut_PBSost;
262 end;
263
264 procedure TBaseOptF.FormKeyPress(Sender: TObject; var Key: Char);
265 begin
266   //ShowMessage('');   //Äëÿ óçíàâàíèÿ êîäîâ ðàñêîììåíòèðîâàòü è ñìîòðåòü watch-åì, ïîñòàâèâ áðÿêó.
267
268   //Ñîáñíî ýòî ôóíêà äëÿ îáðàáîòêè íàæàíèÿ êíîïêîâ :).
269   If Key = #13 then begin
270     //Enter
271     OkButClick(Sender);
272     //È íå ïåðåäàâàòü ñèìâîë äàëüøå...
273     Key := #0;
274   end;
275
276   If Key = #27 then begin
277     //Escape
278     CancelButClick(Sender);
279     //È íå ïåðåäàâàòü ñèìâîë äàëüøå...
280     Key := #0;
281   end;
282 end;
283
284 end.
Note: See TracBrowser for help on using the browser.