OSDN Git Service

・板一覧更新の処理メッセージを追加
[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 var
283     CenterForm: TCustomForm;
284 begin
285     CenterForm := TCustomForm(Owner);
286     if Assigned(CenterForm) then begin
287         Left := ((CenterForm.Width - Width) div 2) + CenterForm.Left;
288         Top := ((CenterForm.Height - Height) div 2) + CenterForm.Top;
289     end else begin
290         Left := (Screen.Width - Width) div 2;
291         Top := (Screen.Height - Height) div 2;
292     end;
293
294         SetValue;
295         PostTimeCheckBoxClick(Sender);
296
297 end;
298 procedure TKuroutOption.SetColumnData();
299 var
300         i, j : Integer;
301         flag : Boolean;
302 begin
303
304         //===== \94Â\83\8a\83X\83g =====
305         for i := 0 to GikoSys.Setting.CategoryColumnOrder.Count - 1 do begin
306                 for j := 1 to Length( GikoCategoryColumnCaption ) - 1 do begin
307                         if GikoSys.Setting.CategoryColumnOrder[ i ] = TGikoCategoryColumnID( j ) then begin
308                                 CVisibledListBox.AddItem(GikoCategoryColumnCaption[ j ], nil);
309                                 break;
310                         end;
311                 end;
312         end;
313
314         for i := 1 to Length( GikoCategoryColumnCaption ) - 1 do begin
315                 flag := false;
316                 for j := 0 to GikoSys.Setting.CategoryColumnOrder.Count - 1 do begin
317                         if GikoSys.Setting.CategoryColumnOrder[ j ] = TGikoCategoryColumnID( i ) then begin
318                                 flag := true;
319                                 break;
320                         end;
321                 end;
322                 if not flag then
323                         CUnVisibledListBox.AddItem(GikoCategoryColumnCaption[ i ], nil);
324         end;
325
326         //===== \83X\83\8c\83\8a\83X\83g =====
327         for i := 0 to GikoSys.Setting.BoardColumnOrder.Count - 1 do begin
328                 for j := 1 to Length( GikoBoardColumnCaption ) - 1 do begin
329                         if GikoSys.Setting.BoardColumnOrder[ i ] = TGikoBoardColumnID( j ) then begin
330                                 BVisibledListBox.AddItem(GikoBoardColumnCaption[ j ], nil);
331                                 Break;
332                         end;
333                 end;
334         end;
335
336         for i := 1 to Length( GikoBoardColumnCaption ) - 1 do begin
337                 flag := false;
338                 for j := GikoSys.Setting.BoardColumnOrder.Count - 1 downto 0 do begin
339                         if GikoSys.Setting.BoardColumnOrder[ j ] = TGikoBoardColumnID( i ) then begin
340                                 flag := true;
341                                 Break;
342                         end;
343                 end;
344                 if not flag then
345                         BUnVisibledListBox.AddItem(GikoBoardColumnCaption[ i ], nil);
346
347         end;
348 end;
349 procedure TKuroutOption.CDeleteButtonClick(Sender: TObject);
350 var
351         i: Integer;
352 begin
353         for i := 0 to CVisibledListBox.Count - 1 do begin
354                 if CVisibledListBox.Selected[i] then begin
355                         CUnVisibledListBox.AddItem(     CVisibledListBox.Items.Strings[ i ], nil);
356                         CVisibledListBox.DeleteSelected;
357                         break;
358                 end;
359         end;
360 end;
361
362 procedure TKuroutOption.CAddButtonClick(Sender: TObject);
363 var
364         i: Integer;
365 begin
366         for i := 0 to CUnVisibledListBox.Count - 1 do begin
367                 if CUnVisibledListBox.Selected[i] then begin
368                         CVisibledListBox.AddItem(       CUnVisibledListBox.Items.Strings[ i ], nil);
369                         CUnVisibledListBox.DeleteSelected;
370                         break;
371                 end;
372         end;
373 end;
374
375 procedure TKuroutOption.BAddButtonClick(Sender: TObject);
376 var
377         i: Integer;
378 begin
379         for i := 0 to BUnVisibledListBox.Count - 1 do begin
380                 if BUnVisibledListBox.Selected[i] then begin
381                         BVisibledListBox.AddItem(       BUnVisibledListBox.Items.Strings[ i ], nil);
382                         BUnVisibledListBox.DeleteSelected;
383                         break;
384                 end;
385         end;
386 end;
387
388 procedure TKuroutOption.BDeleteButtonClick(Sender: TObject);
389 var
390         i: Integer;
391 begin
392         for i := 0 to BVisibledListBox.Count - 1 do begin
393                 if BVisibledListBox.Selected[i] then begin
394                         BUnVisibledListBox.AddItem(     BVisibledListBox.Items.Strings[ i ], nil);
395                         BVisibledListBox.DeleteSelected;
396                         break;
397                 end;
398         end;
399 end;
400
401 procedure TKuroutOption.CUpButtonClick(Sender: TObject);
402 var
403         i: Integer;
404 begin
405         for i := 1 to CVisibledListBox.Count - 1 do begin
406                 if CVisibledListBox.Selected[i] then begin
407                         CVisibledListBox.Items.Exchange(i, i -1);
408                         break;
409                 end;
410         end;
411 end;
412
413 procedure TKuroutOption.CDownButtonClick(Sender: TObject);
414 var
415         i: Integer;
416 begin
417         for i := 0 to CVisibledListBox.Count - 2 do begin
418                 if CVisibledListBox.Selected[i] then begin
419                         CVisibledListBox.Items.Exchange(i, i + 1);
420                         break;
421                 end;
422         end;
423 end;
424
425 procedure TKuroutOption.BUpButtonClick(Sender: TObject);
426 var
427         i: Integer;
428 begin
429         for i := 1 to BVisibledListBox.Count - 1 do begin
430                 if BVisibledListBox.Selected[i] then begin
431                         BVisibledListBox.Items.Exchange(i, i -1);
432                         break;
433                 end;
434         end;
435 end;
436
437 procedure TKuroutOption.BDownButtonClick(Sender: TObject);
438 var
439         i: Integer;
440 begin
441         for i := 0 to BVisibledListBox.Count - 2 do begin
442                 if BVisibledListBox.Selected[i] then begin
443                         BVisibledListBox.Items.Exchange(i, i + 1);
444                         break;
445                 end;
446         end;
447 end;
448
449
450 procedure TKuroutOption.PostColumnData();
451 var
452         i, j : Integer;
453 begin
454         GikoForm.ActiveListColumnSave;
455
456         //===== \94Â\83\8a\83X\83g =====
457         for i := GikoSys.Setting.CategoryColumnOrder.Count -1 downto 1 do
458                 GikoSys.Setting.CategoryColumnOrder.Delete(i);
459
460         for i := 0 to CVisibledListBox.Count - 1 do begin
461                 for j := 1 to Length( GikoCategoryColumnCaption ) - 1 do begin
462                         if CVisibledListBox.Items.Strings[ i ] = GikoCategoryColumnCaption[ j ] then begin
463                                 GikoSys.Setting.CategoryColumnOrder.Add(  TGikoCategoryColumnID(j) );
464                                 break;
465                         end;
466                 end;
467         end;
468
469         //===== \83X\83\8c\83\8a\83X\83g =====
470         for i := GikoSys.Setting.BoardColumnOrder.Count - 1 downto 1 do
471                 GikoSys.Setting.BoardColumnOrder.Delete(i);
472
473         for i := 0 to BVisibledListBox.Count - 1 do begin
474                 for j := 1 to Length( GikoBoardColumnCaption ) - 1 do begin
475                         if BVisibledListBox.Items.Strings[ i ] = GikoBoardColumnCaption[ j ] then begin
476                                 GikoSys.Setting.BoardColumnOrder.Add( TGikoBoardColumnID(j) );
477                                 Break;
478                         end;
479                 end;
480         end;
481         //\83X\83\8c\88ê\97\97\82Ì\95`\89æ\82Ì\8dX\90V
482         GikoForm.SetActiveList(GikoForm.ActiveList);
483 end;
484 // \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
485 procedure TKuroutOption.MoveHistoryMaxEditExit(Sender: TObject);
486 begin
487         if not GikoSys.IsNumeric(MoveHistoryMaxEdit.Text) then
488                 MoveHistoryMaxEdit.Text := '20';
489     if StrToInt(MoveHistoryMaxEdit.Text) < 1 then
490         MoveHistoryMaxEdit.Text := '1';
491 end;
492 // \90æ\93ª\95\\8e¦\83\8c\83X\90\94\82Ì\95Ò\8fW\8cã\82Ì\90Ý\92è\95\8e\9a\97ñ\83`\83F\83b\83N
493 procedure TKuroutOption.AHandredLabeledEditExit(Sender: TObject);
494 begin
495         if not GikoSys.IsNumeric(AHandredLabeledEdit.Text) then
496                 AHandredLabeledEdit.Text := '1';
497     if StrToInt(AHandredLabeledEdit.Text) < 1 then
498         AHandredLabeledEdit.Text := '1';
499
500 end;
501
502 procedure TKuroutOption.ExtListLabeledEditExit(Sender: TObject);
503 begin
504     if AnsiEndsStr(';', ExtListLabeledEdit.Text) then begin
505         ExtListLabeledEdit.Text :=
506             Copy(ExtListLabeledEdit.Text, 0,
507                 Length(ExtListLabeledEdit.Text) - 1);
508     end;
509 end;
510 // \83\8c\83X\83|\83b\83v\83A\83b\83v\88Ê\92uX
511 procedure TKuroutOption.DeltaXLabeledEditExit(Sender: TObject);
512 begin
513         if not GikoSys.IsNumeric(DeltaXLabeledEdit.Text) then
514                 DeltaXLabeledEdit.Text := IntToStr(GikoSys.Setting.RespopupDeltaX);
515     if StrToInt(DeltaXLabeledEdit.Text) < DeltaXUpDown.Min then
516         DeltaXLabeledEdit.Text := IntToStr(DeltaXUpDown.Min);
517     if StrToInt(DeltaXLabeledEdit.Text) > DeltaXUpDown.Max then
518         DeltaXLabeledEdit.Text:= IntToStr(DeltaXUpDown.Max);
519 end;
520 // \83\8c\83X\83|\83b\83v\83A\83b\83v\88Ê\92uY
521 procedure TKuroutOption.DeltaYLabeledEditExit(Sender: TObject);
522 begin
523         if not GikoSys.IsNumeric(DeltaYLabeledEdit.Text) then
524         DeltaYLabeledEdit.Text := IntToStr(GikoSys.Setting.RespopupDeltaY);
525     if StrToInt(DeltaYLabeledEdit.Text) < DeltaYUpDown.Min then
526         DeltaYLabeledEdit.Text := IntToStr(DeltaYUpDown.Min);
527     if StrToInt(DeltaYLabeledEdit.Text) > DeltaYUpDown.Max then
528         DeltaYLabeledEdit.Text := IntToStr(DeltaYUpDown.Max);
529 end;
530
531 procedure TKuroutOption.RespopupWaitLabeledEditExit(Sender: TObject);
532 begin
533         if not GikoSys.IsNumeric(RespopupWaitLabeledEdit.Text) then
534                 RespopupWaitLabeledEdit.Text := IntToStr(GikoSys.Setting.RespopupWait);
535     if StrToInt(RespopupWaitLabeledEdit.Text) < RespopupWaitUpDown.Min then
536                 RespopupWaitLabeledEdit.Text := IntToStr(RespopupWaitUpDown.Min);
537     if StrToInt(RespopupWaitLabeledEdit.Text) > RespopupWaitUpDown.Max then
538                 RespopupWaitLabeledEdit.Text := IntToStr(RespopupWaitUpDown.Max);
539 end;
540
541 procedure TKuroutOption.ResRangeLabeledEditExit(Sender: TObject);
542 begin
543         if not GikoSys.IsNumeric(ResRangeLabeledEdit.Text) then
544                 ResRangeLabeledEdit.Text := '100';
545     if StrToInt(ResRangeLabeledEdit.Text) < 100 then
546         ResRangeLabeledEdit.Text := '100';
547     if StrToInt(ResRangeLabeledEdit.Text) > 9999 then
548         ResRangeLabeledEdit.Text := '9999';
549 end;
550
551 end.