OSDN Git Service

This commit was manufactured by cvs2svn to create branch 'Bb62'.
[gikonavigoeson/gikonavi.git] / KuroutSetting.pas
1 unit KuroutSetting;
2
3 interface
4
5 uses
6   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
7   Dialogs, StdCtrls, ComCtrls, GikoSystem, GikoUtil, ExtCtrls, StrUtils;
8
9 type
10   TKuroutOption = class(TForm)
11         PageControl1: TPageControl;
12         TabSheet1: TTabSheet;
13         GroupBox11: TGroupBox;
14         Label17: TLabel;
15         Label18: TLabel;
16         RecvBufferSize: TEdit;
17         ProxyProtocolCheckBox: TCheckBox;
18         ProtocolCheckBox: TCheckBox;
19         GroupBox13: TGroupBox;
20         Label24: TLabel;
21         Label25: TLabel;
22         PostTimeLabel: TLabel;
23         Label27: TLabel;
24         PostTimeCheckBox: TCheckBox;
25         PostTimeEdit: TEdit;
26         PutPostTimeRadioButton: TRadioButton;
27         BackPostTimeRadioButton: TRadioButton;
28         OkBotton: TButton;
29         CancelBotton: TButton;
30         ApplyButton: TButton;
31         ColumnTabSheet: TTabSheet;
32         CategoryColumnGroupBox: TGroupBox;
33         CUnVisibledListBox: TListBox;
34         CVisibledListBox: TListBox;
35         CAddButton: TButton;
36         CDeleteButton: TButton;
37         BoardColumnGroupBox: TGroupBox;
38         BUnVisibledListBox: TListBox;
39         BVisibledListBox: TListBox;
40         BAddButton: TButton;
41         BDeleteButton: TButton;
42         Label1: TLabel;
43         Label2: TLabel;
44         Label3: TLabel;
45         Label4: TLabel;
46         CUpButton: TButton;
47         CDownButton: TButton;
48         BUpButton: TButton;
49         BDownButton: TButton;
50     GroupBox1: TGroupBox;
51     GengoSupport: TCheckBox;
52     Label5: TLabel;
53     Label6: TLabel;
54     ReadTimeOut: TEdit;
55     Label7: TLabel;
56     KakikomiTabSheet: TTabSheet;
57     CookieGroupBox: TGroupBox;
58     Label8: TLabel;
59     FixedCookieEdit: TEdit;
60     Label9: TLabel;
61     GroupBox3: TGroupBox;
62     Label10: TLabel;
63     MoveHistoryMaxEdit: TEdit;
64     Label11: TLabel;
65     AHandredGroupBox: TGroupBox;
66     AHandredLabeledEdit: TLabeledEdit;
67     AHandredUpDown: TUpDown;
68     ThreadGroupBox: TGroupBox;
69     AddKeywordCheckBox: TCheckBox;
70     TabSheet2: TTabSheet;
71     SecurityGroupBox: TGroupBox;
72     GroupBox2: TGroupBox;
73     LocalTrapAtt: TCheckBox;
74     RemoteTrapAtt: TCheckBox;
75     ReplaceDatCheckBox: TCheckBox;
76     Label12: TLabel;
77     GroupBox4: TGroupBox;
78     SentIniFileSizeEdit: TEdit;
79     SentIniFileSizeUpDown: TUpDown;
80     Label13: TLabel;
81     Label14: TLabel;
82     ExtListLabeledEdit: TLabeledEdit;
83     Label15: TLabel;
84     LogGroupBox: TGroupBox;
85     CheckDatFileCheckBox: TCheckBox;
86     RespopupTabSheet: TTabSheet;
87     RespopuGroupBox: TGroupBox;
88     DeltaXLabeledEdit: TLabeledEdit;
89     DeltaYLabeledEdit: TLabeledEdit;
90     DeltaXUpDown: TUpDown;
91     DeltaYUpDown: TUpDown;
92     Label16: TLabel;
93     RespopupWaitLabeledEdit: TLabeledEdit;
94     RespopupWaitUpDown: TUpDown;
95     Label19: TLabel;
96     RespopupMailToCheckBox: TCheckBox;
97     ResRangeLabeledEdit: TLabeledEdit;
98     ResRangeCountUpDown: TUpDown;
99     UseGobakuCheckBox: TCheckBox;
100         procedure OkBottonClick(Sender: TObject);
101         procedure FormCreate(Sender: TObject);
102         procedure CDeleteButtonClick(Sender: TObject);
103         procedure CAddButtonClick(Sender: TObject);
104         procedure BAddButtonClick(Sender: TObject);
105         procedure BDeleteButtonClick(Sender: TObject);
106     procedure CUpButtonClick(Sender: TObject);
107     procedure CDownButtonClick(Sender: TObject);
108     procedure BUpButtonClick(Sender: TObject);
109     procedure BDownButtonClick(Sender: TObject);
110     procedure MoveHistoryMaxEditExit(Sender: TObject);
111     procedure AHandredLabeledEditExit(Sender: TObject);
112     procedure ExtListLabeledEditExit(Sender: TObject);
113     procedure DeltaXLabeledEditExit(Sender: TObject);
114     procedure DeltaYLabeledEditExit(Sender: TObject);
115     procedure RespopupWaitLabeledEditExit(Sender: TObject);
116     procedure ResRangeLabeledEditExit(Sender: TObject);
117   private
118         { Private \90é\8c¾ }
119         procedure SetValue;
120         procedure SaveSetting;
121         procedure RecvBufferSizeExit(Sender: TObject);
122         procedure PostTimeEditExit(Sender: TObject);
123         procedure PostTimeCheckBoxClick(Sender: TObject);
124         procedure SetColumnData();
125         procedure PostColumnData();
126   public
127         { Public \90é\8c¾ }
128   end;
129
130 var
131   KuroutOption: TKuroutOption;
132
133 implementation
134
135 uses
136         Giko, Setting;
137
138 {$R *.dfm}
139
140 procedure TKuroutOption.SetValue;
141 begin
142         //\8eó\90M\83o\83b\83t\83@\83T\83C\83Y
143         RecvBufferSize.Text := IntToStr(Gikosys.Setting.RecvBufferSize);
144         //HTTP1.1\8eg\97p
145         ProtocolCheckBox.Checked := GikoSys.Setting.Protocol;
146         //\83v\83\8d\83L\83V\90Ú\91±HTTP1.1\8eg\97p
147         ProxyProtocolCheckBox.Checked := Gikosys.Setting.ProxyProtocol;
148         ReadTimeOut.Text := IntToStr(GikoSys.Setting.ReadTimeOut);
149
150                 //\8f\91\82«\8d\9e\82Ý\8e\9e\83}\83V\83\93\8e\9e\8aÔ\8eg\97p\90Ý\92è
151         PostTimeCheckBox.Checked := GikoSys.Setting.UseMachineTime;
152         PostTimeEdit.Text := IntToStr(GikoSys.Setting.TimeAdjustSec);
153         if GikoSys.Setting.TimeAdjust then
154                 PutPostTimeRadioButton.Checked := True
155         else
156                 BackPostTimeRadioButton.Checked := True;
157
158         SetColumnData();
159
160         PageControl1.ActivePageIndex := GikoSys.Setting.KuroutSettingTabIndex;
161
162         //2chAnnai
163         GengoSupport.Checked := GikoSys.Setting.GengoSupport;
164         //FusianaSet
165         LocalTrapAtt.Checked := GikoSys.Setting.LocalTrapAtt;
166         RemoteTrapAtt.Checked := GikoSys.Setting.RemoteTrapAtt;
167         // Cookie
168     FixedCookieEdit.Text := GikoSys.Setting.FixedCookie;
169     // \83\8a\83\93\83N\88Ú\93®\97\9a\97ð
170     MoveHistoryMaxEdit.Text := IntToStr( GikoSys.Setting.MoveHistorySize );
171     //\81@\90æ\93ª\95\\8e¦\83\8c\83X\90\94
172     AHandredUpDown.Position := GikoSys.Setting.HeadResCount;
173     // \95\\8e¦\83\8c\83X\90\94
174     ResRangeCountUpDown.Position := GikoSys.Setting.ResRangeExCount;
175     // \8aÖ\98A\83L\81[\83\8f\81[\83h\92Ç\89Á\83t\83\89\83O
176     AddKeywordCheckBox.Checked := GikoSys.Setting.AddKeywordLink;
177     // \8cë\94½\89\9e\91Î\8dô
178     ReplaceDatCheckBox.Checked := GikoSys.Setting.ReplaceDat;
179     SentIniFileSizeUpDown.Position := GikoSys.Setting.SentIniFileSize;
180     ExtListLabeledEdit.Text := GikoSys.Setting.ExtList;
181     // Folder.idx\93Ç\82Ý\8d\9e\82Ý\8e\9edat\83`\83F\83b\83N
182     CheckDatFileCheckBox.Checked := GikoSys.Setting.CheckDatFile;
183     DeltaXUpDown.Position := GikoSys.Setting.RespopupDeltaX;
184     DeltaYUpDown.Position := GikoSys.Setting.RespopupDeltaY;
185     RespopupWaitUpDown.Position := GikoSys.Setting.RespopupWait;
186     RespopupMailToCheckBox.Checked := GikoSys.Setting.RespopupMailTo;
187     // \8cë\94\9a\83`\83F\83b\83N
188     UseGobakuCheckBox.Checked := GikoSys.Setting.UseGobakuCheck;
189 end;
190
191 procedure TKuroutOption.SaveSetting;
192 begin
193         //\8eó\90M\83o\83b\83t\83@\83T\83C\83Y
194         Gikosys.Setting.RecvBufferSize := StrToIntDef(RecvBufferSize.Text, Gikosys.Setting.RecvBufferSize);
195         GikoSys.Setting.ReadTimeOut := StrToIntDef(ReadTimeOut.Text, GikoSys.Setting.ReadTimeOut);
196         //HTTP1.1\8eg\97p
197         GikoSys.Setting.Protocol := ProtocolCheckBox.Checked;
198         //\83v\83\8d\83L\83V\90Ú\91±HTTP1.1\8eg\97p
199         Gikosys.Setting.ProxyProtocol := ProxyProtocolCheckBox.Checked;
200         //\8f\91\82«\8d\9e\82Ý\8e\9e\83}\83V\83\93\8e\9e\8aÔ\8eg\97p\90Ý\92è
201         GikoSys.Setting.UseMachineTime := PostTimeCheckBox.Checked;
202         if GikoSys.IsNumeric(PostTimeEdit.Text) then
203                 GikoSys.Setting.TimeAdjustSec := StrToIntDef(PostTimeEdit.Text, GikoSys.Setting.TimeAdjustSec)
204         else
205                 GikoSys.Setting.TimeAdjustSec := 0;
206         GikoSys.Setting.TimeAdjust := PutPostTimeRadioButton.Checked;
207         //2ch\8c¾\8cê\83T\83|\81[\83g
208         GikoSys.Setting.GengoSupport := GengoSupport.Checked;
209         GikoSys.SetGikoMessage;
210         //\83\8d\81[\83J\83\8b\81E\83\8a\83\82\81[\83g̼±Å\8cx\8d\90
211         GikoSys.Setting.LocalTrapAtt := LocalTrapAtt.Checked;
212         GikoSys.Setting.RemoteTrapAtt := RemoteTrapAtt.Checked;
213         // Cookie
214         GikoSys.Setting.FixedCookie := FixedCookieEdit.Text;
215
216     // \83\8a\83\93\83N\88Ú\93®\97\9a\97ð
217     GikoSys.Setting.MoveHistorySize :=
218         StrToIntDef( MoveHistoryMaxEdit.Text, 20 );
219
220     //\81@\90æ\93ª\95\\8e¦\83\8c\83X\90\94
221     GikoSys.Setting.HeadResCount :=
222         StrToIntDef( AHandredLabeledEdit.Text , 1);
223     GikoSys.Setting.ResRangeExCount :=
224         StrToIntDef( ResRangeLabeledEdit.Text , 100 );
225         GikoSys.Setting.KuroutSettingTabIndex := PageControl1.ActivePageIndex;
226     // \8aÖ\98A\83L\81[\83\8f\81[\83h\92Ç\89Á\83t\83\89\83O
227     GikoSys.Setting.AddKeywordLink := AddKeywordCheckBox.Checked;
228     // \8cë\94½\89\9e\91Î\8dô
229     GikoSys.Setting.ReplaceDat := ReplaceDatCheckBox.Checked;
230     GikoSys.Setting.SentIniFileSize := SentIniFileSizeUpDown.Position;
231     GikoSys.Setting.ExtList := ExtListLabeledEdit.Text;
232     // Folder.idx\93Ç\82Ý\8d\9e\82Ý\8e\9edat\83`\83F\83b\83N
233     GikoSys.Setting.CheckDatFile := CheckDatFileCheckBox.Checked;
234
235     GikoSys.Setting.RespopupDeltaX := StrToInt(DeltaXLabeledEdit.Text);
236     GikoSys.Setting.RespopupDeltaY := StrToInt(DeltaYLabeledEdit.Text);
237     GikoSys.Setting.RespopupWait := StrToInt(RespopupWaitLabeledEdit.Text);
238     GikoForm.ResPopupClearTimer.Interval := GikoSys.Setting.RespopupWait;
239     GikoSys.Setting.RespopupMailTo := RespopupMailToCheckBox.Checked;
240     // \8cë\94\9a\83`\83F\83b\83N
241     GikoSys.Setting.UseGobakuCheck := UseGobakuCheckBox.Checked;
242
243 end;
244
245 procedure TKuroutOption.RecvBufferSizeExit(Sender: TObject);
246 begin
247         if not GikoSys.IsNumeric(RecvBufferSize.Text) then
248                 RecvBufferSize.Text := '4096';
249         if StrToInt(RecvBufferSize.Text) < 256 then
250                 RecvBufferSize.Text := '4096';
251 end;
252
253 procedure TKuroutOption.PostTimeEditExit(Sender: TObject);
254 begin
255         if not GikoSys.IsNumeric(PostTimeEdit.Text) then
256                 PostTimeEdit.Text := '0';
257 end;
258
259 procedure TKuroutOption.PostTimeCheckBoxClick(Sender: TObject);
260 begin
261         PostTimeLabel.Enabled := PostTimeCheckBox.Checked;
262         PostTimeEdit.Enabled := PostTimeCheckBox.Checked;
263         PutPostTimeRadioButton.Enabled := PostTimeCheckBox.Checked;
264         BackPostTimeRadioButton.Enabled := PostTimeCheckBox.Checked;
265 end;
266
267 procedure TKuroutOption.OkBottonClick(Sender: TObject);
268 begin
269         RecvBufferSizeExit(Sender);
270         PostTimeEditExit(Sender);
271     MoveHistoryMaxEditExit(Sender);
272     AHandredLabeledEditExit(Sender);
273     ExtListLabeledEditExit(Sender);
274     DeltaXLabeledEditExit(Sender);
275     DeltaYLabeledEditExit(Sender);
276     RespopupWaitLabeledEditExit(Sender);
277     PostColumnData();
278         SaveSetting;
279 end;
280
281 procedure TKuroutOption.FormCreate(Sender: TObject);
282 begin
283         SetValue;
284         PostTimeCheckBoxClick(Sender);
285
286 end;
287 procedure TKuroutOption.SetColumnData();
288 var
289         i, j : Integer;
290         flag : Boolean;
291 begin
292
293         //===== \94Â\83\8a\83X\83g =====
294         for i := 0 to GikoSys.Setting.CategoryColumnOrder.Count - 1 do begin
295                 for j := 1 to Length( GikoCategoryColumnCaption ) - 1 do begin
296                         if GikoSys.Setting.CategoryColumnOrder[ i ] = TGikoCategoryColumnID( j ) then begin
297                                 CVisibledListBox.AddItem(GikoCategoryColumnCaption[ j ], nil);
298                                 break;
299                         end;
300                 end;
301         end;
302
303         for i := 1 to Length( GikoCategoryColumnCaption ) - 1 do begin
304                 flag := false;
305                 for j := 0 to GikoSys.Setting.CategoryColumnOrder.Count - 1 do begin
306                         if GikoSys.Setting.CategoryColumnOrder[ j ] = TGikoCategoryColumnID( i ) then begin
307                                 flag := true;
308                                 break;
309                         end;
310                 end;
311                 if not flag then
312                         CUnVisibledListBox.AddItem(GikoCategoryColumnCaption[ i ], nil);
313         end;
314
315         //===== \83X\83\8c\83\8a\83X\83g =====
316         for i := 0 to GikoSys.Setting.BoardColumnOrder.Count - 1 do begin
317                 for j := 1 to Length( GikoBoardColumnCaption ) - 1 do begin
318                         if GikoSys.Setting.BoardColumnOrder[ i ] = TGikoBoardColumnID( j ) then begin
319                                 BVisibledListBox.AddItem(GikoBoardColumnCaption[ j ], nil);
320                                 Break;
321                         end;
322                 end;
323         end;
324
325         for i := 1 to Length( GikoBoardColumnCaption ) - 1 do begin
326                 flag := false;
327                 for j := GikoSys.Setting.BoardColumnOrder.Count - 1 downto 0 do begin
328                         if GikoSys.Setting.BoardColumnOrder[ j ] = TGikoBoardColumnID( i ) then begin
329                                 flag := true;
330                                 Break;
331                         end;
332                 end;
333                 if not flag then
334                         BUnVisibledListBox.AddItem(GikoBoardColumnCaption[ i ], nil);
335
336         end;
337 end;
338 procedure TKuroutOption.CDeleteButtonClick(Sender: TObject);
339 var
340         i: Integer;
341 begin
342         for i := 0 to CVisibledListBox.Count - 1 do begin
343                 if CVisibledListBox.Selected[i] then begin
344                         CUnVisibledListBox.AddItem(     CVisibledListBox.Items.Strings[ i ], nil);
345                         CVisibledListBox.DeleteSelected;
346                         break;
347                 end;
348         end;
349 end;
350
351 procedure TKuroutOption.CAddButtonClick(Sender: TObject);
352 var
353         i: Integer;
354 begin
355         for i := 0 to CUnVisibledListBox.Count - 1 do begin
356                 if CUnVisibledListBox.Selected[i] then begin
357                         CVisibledListBox.AddItem(       CUnVisibledListBox.Items.Strings[ i ], nil);
358                         CUnVisibledListBox.DeleteSelected;
359                         break;
360                 end;
361         end;
362 end;
363
364 procedure TKuroutOption.BAddButtonClick(Sender: TObject);
365 var
366         i: Integer;
367 begin
368         for i := 0 to BUnVisibledListBox.Count - 1 do begin
369                 if BUnVisibledListBox.Selected[i] then begin
370                         BVisibledListBox.AddItem(       BUnVisibledListBox.Items.Strings[ i ], nil);
371                         BUnVisibledListBox.DeleteSelected;
372                         break;
373                 end;
374         end;
375 end;
376
377 procedure TKuroutOption.BDeleteButtonClick(Sender: TObject);
378 var
379         i: Integer;
380 begin
381         for i := 0 to BVisibledListBox.Count - 1 do begin
382                 if BVisibledListBox.Selected[i] then begin
383                         BUnVisibledListBox.AddItem(     BVisibledListBox.Items.Strings[ i ], nil);
384                         BVisibledListBox.DeleteSelected;
385                         break;
386                 end;
387         end;
388 end;
389
390 procedure TKuroutOption.CUpButtonClick(Sender: TObject);
391 var
392         i: Integer;
393 begin
394         for i := 1 to CVisibledListBox.Count - 1 do begin
395                 if CVisibledListBox.Selected[i] then begin
396                         CVisibledListBox.Items.Exchange(i, i -1);
397                         break;
398                 end;
399         end;
400 end;
401
402 procedure TKuroutOption.CDownButtonClick(Sender: TObject);
403 var
404         i: Integer;
405 begin
406         for i := 0 to CVisibledListBox.Count - 2 do begin
407                 if CVisibledListBox.Selected[i] then begin
408                         CVisibledListBox.Items.Exchange(i, i + 1);
409                         break;
410                 end;
411         end;
412 end;
413
414 procedure TKuroutOption.BUpButtonClick(Sender: TObject);
415 var
416         i: Integer;
417 begin
418         for i := 1 to BVisibledListBox.Count - 1 do begin
419                 if BVisibledListBox.Selected[i] then begin
420                         BVisibledListBox.Items.Exchange(i, i -1);
421                         break;
422                 end;
423         end;
424 end;
425
426 procedure TKuroutOption.BDownButtonClick(Sender: TObject);
427 var
428         i: Integer;
429 begin
430         for i := 0 to BVisibledListBox.Count - 2 do begin
431                 if BVisibledListBox.Selected[i] then begin
432                         BVisibledListBox.Items.Exchange(i, i + 1);
433                         break;
434                 end;
435         end;
436 end;
437
438
439 procedure TKuroutOption.PostColumnData();
440 var
441         i, j : Integer;
442 begin
443         GikoForm.ActiveListColumnSave;
444
445         //===== \94Â\83\8a\83X\83g =====
446         for i := GikoSys.Setting.CategoryColumnOrder.Count -1 downto 1 do
447                 GikoSys.Setting.CategoryColumnOrder.Delete(i);
448
449         for i := 0 to CVisibledListBox.Count - 1 do begin
450                 for j := 1 to Length( GikoCategoryColumnCaption ) - 1 do begin
451                         if CVisibledListBox.Items.Strings[ i ] = GikoCategoryColumnCaption[ j ] then begin
452                                 GikoSys.Setting.CategoryColumnOrder.Add(  TGikoCategoryColumnID(j) );
453                                 break;
454                         end;
455                 end;
456         end;
457
458         //===== \83X\83\8c\83\8a\83X\83g =====
459         for i := GikoSys.Setting.BoardColumnOrder.Count - 1 downto 1 do
460                 GikoSys.Setting.BoardColumnOrder.Delete(i);
461
462         for i := 0 to BVisibledListBox.Count - 1 do begin
463                 for j := 1 to Length( GikoBoardColumnCaption ) - 1 do begin
464                         if BVisibledListBox.Items.Strings[ i ] = GikoBoardColumnCaption[ j ] then begin
465                                 GikoSys.Setting.BoardColumnOrder.Add( TGikoBoardColumnID(j) );
466                                 Break;
467                         end;
468                 end;
469         end;
470         //\83X\83\8c\88ê\97\97\82Ì\95`\89æ\82Ì\8dX\90V
471         GikoForm.SetActiveList(GikoForm.ActiveList);
472 end;
473 // \83\8a\83\93\83N\88Ú\93®\97\9a\97ð\82Ì\95Ò\8fW\8cã\82Ì\90Ý\92è\95\8e\9a\97ñ\83`\83F\83b\83N
474 procedure TKuroutOption.MoveHistoryMaxEditExit(Sender: TObject);
475 begin
476         if not GikoSys.IsNumeric(MoveHistoryMaxEdit.Text) then
477                 MoveHistoryMaxEdit.Text := '20';
478     if StrToInt(MoveHistoryMaxEdit.Text) < 1 then
479         MoveHistoryMaxEdit.Text := '1';
480 end;
481 // \90æ\93ª\95\\8e¦\83\8c\83X\90\94\82Ì\95Ò\8fW\8cã\82Ì\90Ý\92è\95\8e\9a\97ñ\83`\83F\83b\83N
482 procedure TKuroutOption.AHandredLabeledEditExit(Sender: TObject);
483 begin
484         if not GikoSys.IsNumeric(AHandredLabeledEdit.Text) then
485                 AHandredLabeledEdit.Text := '1';
486     if StrToInt(AHandredLabeledEdit.Text) < 1 then
487         AHandredLabeledEdit.Text := '1';
488
489 end;
490
491 procedure TKuroutOption.ExtListLabeledEditExit(Sender: TObject);
492 begin
493     if AnsiEndsStr(';', ExtListLabeledEdit.Text) then begin
494         ExtListLabeledEdit.Text :=
495             Copy(ExtListLabeledEdit.Text, 0,
496                 Length(ExtListLabeledEdit.Text) - 1);
497     end;
498 end;
499 // \83\8c\83X\83|\83b\83v\83A\83b\83v\88Ê\92uX
500 procedure TKuroutOption.DeltaXLabeledEditExit(Sender: TObject);
501 begin
502         if not GikoSys.IsNumeric(DeltaXLabeledEdit.Text) then
503                 DeltaXLabeledEdit.Text := IntToStr(GikoSys.Setting.RespopupDeltaX);
504     if StrToInt(DeltaXLabeledEdit.Text) < DeltaXUpDown.Min then
505         DeltaXLabeledEdit.Text := IntToStr(DeltaXUpDown.Min);
506     if StrToInt(DeltaXLabeledEdit.Text) > DeltaXUpDown.Max then
507         DeltaXLabeledEdit.Text:= IntToStr(DeltaXUpDown.Max);
508 end;
509 // \83\8c\83X\83|\83b\83v\83A\83b\83v\88Ê\92uY
510 procedure TKuroutOption.DeltaYLabeledEditExit(Sender: TObject);
511 begin
512         if not GikoSys.IsNumeric(DeltaYLabeledEdit.Text) then
513         DeltaYLabeledEdit.Text := IntToStr(GikoSys.Setting.RespopupDeltaY);
514     if StrToInt(DeltaYLabeledEdit.Text) < DeltaYUpDown.Min then
515         DeltaYLabeledEdit.Text := IntToStr(DeltaYUpDown.Min);
516     if StrToInt(DeltaYLabeledEdit.Text) > DeltaYUpDown.Max then
517         DeltaYLabeledEdit.Text := IntToStr(DeltaYUpDown.Max);
518 end;
519
520 procedure TKuroutOption.RespopupWaitLabeledEditExit(Sender: TObject);
521 begin
522         if not GikoSys.IsNumeric(RespopupWaitLabeledEdit.Text) then
523                 RespopupWaitLabeledEdit.Text := IntToStr(GikoSys.Setting.RespopupWait);
524     if StrToInt(RespopupWaitLabeledEdit.Text) < RespopupWaitUpDown.Min then
525                 RespopupWaitLabeledEdit.Text := IntToStr(RespopupWaitUpDown.Min);
526     if StrToInt(RespopupWaitLabeledEdit.Text) > RespopupWaitUpDown.Max then
527                 RespopupWaitLabeledEdit.Text := IntToStr(RespopupWaitUpDown.Max);
528 end;
529
530 procedure TKuroutOption.ResRangeLabeledEditExit(Sender: TObject);
531 begin
532         if not GikoSys.IsNumeric(ResRangeLabeledEdit.Text) then
533                 ResRangeLabeledEdit.Text := '100';
534     if StrToInt(ResRangeLabeledEdit.Text) < 100 then
535         ResRangeLabeledEdit.Text := '100';
536     if StrToInt(ResRangeLabeledEdit.Text) > 9999 then
537         ResRangeLabeledEdit.Text := '9999';
538 end;
539
540 end.