6 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
7 Dialogs, StdCtrls, ComCtrls, GikoSystem, GikoUtil, ExtCtrls, StrUtils;
10 TKuroutOption = class(TForm)
11 PageControl1: TPageControl;
13 GroupBox11: TGroupBox;
16 RecvBufferSize: TEdit;
17 ProxyProtocolCheckBox: TCheckBox;
18 ProtocolCheckBox: TCheckBox;
19 GroupBox13: TGroupBox;
22 PostTimeLabel: TLabel;
24 PostTimeCheckBox: TCheckBox;
26 PutPostTimeRadioButton: TRadioButton;
27 BackPostTimeRadioButton: TRadioButton;
29 CancelBotton: TButton;
31 ColumnTabSheet: TTabSheet;
32 CategoryColumnGroupBox: TGroupBox;
33 CUnVisibledListBox: TListBox;
34 CVisibledListBox: TListBox;
36 CDeleteButton: TButton;
37 BoardColumnGroupBox: TGroupBox;
38 BUnVisibledListBox: TListBox;
39 BVisibledListBox: TListBox;
41 BDeleteButton: TButton;
51 GengoSupport: TCheckBox;
56 KakikomiTabSheet: TTabSheet;
57 CookieGroupBox: TGroupBox;
59 FixedCookieEdit: TEdit;
63 MoveHistoryMaxEdit: TEdit;
65 AHandredGroupBox: TGroupBox;
66 AHandredLabeledEdit: TLabeledEdit;
68 ThreadGroupBox: TGroupBox;
69 AddKeywordCheckBox: TCheckBox;
71 SecurityGroupBox: TGroupBox;
73 LocalTrapAtt: TCheckBox;
74 RemoteTrapAtt: TCheckBox;
75 ReplaceDatCheckBox: TCheckBox;
78 SentIniFileSizeEdit: TEdit;
79 SentIniFileSizeUpDown: TUpDown;
82 ExtListLabeledEdit: TLabeledEdit;
84 procedure OkBottonClick(Sender: TObject);
85 procedure FormCreate(Sender: TObject);
86 procedure CDeleteButtonClick(Sender: TObject);
87 procedure CAddButtonClick(Sender: TObject);
88 procedure BAddButtonClick(Sender: TObject);
89 procedure BDeleteButtonClick(Sender: TObject);
90 procedure CUpButtonClick(Sender: TObject);
91 procedure CDownButtonClick(Sender: TObject);
92 procedure BUpButtonClick(Sender: TObject);
93 procedure BDownButtonClick(Sender: TObject);
94 procedure MoveHistoryMaxEditExit(Sender: TObject);
95 procedure AHandredLabeledEditExit(Sender: TObject);
96 procedure ExtListLabeledEditExit(Sender: TObject);
100 procedure SaveSetting;
101 procedure RecvBufferSizeExit(Sender: TObject);
102 procedure PostTimeEditExit(Sender: TObject);
103 procedure PostTimeCheckBoxClick(Sender: TObject);
104 procedure SetColumnData();
105 procedure PostColumnData();
111 KuroutOption: TKuroutOption;
120 procedure TKuroutOption.SetValue;
122 //
\8eó
\90M
\83o
\83b
\83t
\83@
\83T
\83C
\83Y
123 RecvBufferSize.Text := IntToStr(Gikosys.Setting.RecvBufferSize);
125 ProtocolCheckBox.Checked := GikoSys.Setting.Protocol;
126 //
\83v
\83\8d\83L
\83V
\90Ú
\91±HTTP1.1
\8eg
\97p
127 ProxyProtocolCheckBox.Checked := Gikosys.Setting.ProxyProtocol;
128 ReadTimeOut.Text := IntToStr(GikoSys.Setting.ReadTimeOut);
130 //
\8f\91\82«
\8d\9e\82Ý
\8e\9e\83}
\83V
\83\93\8e\9e\8aÔ
\8eg
\97p
\90Ý
\92è
131 PostTimeCheckBox.Checked := GikoSys.Setting.UseMachineTime;
132 PostTimeEdit.Text := IntToStr(GikoSys.Setting.TimeAdjustSec);
133 if GikoSys.Setting.TimeAdjust then
134 PutPostTimeRadioButton.Checked := True
136 BackPostTimeRadioButton.Checked := True;
140 PageControl1.ActivePageIndex := GikoSys.Setting.KuroutSettingTabIndex;
143 GengoSupport.Checked := GikoSys.Setting.GengoSupport;
145 LocalTrapAtt.Checked := GikoSys.Setting.LocalTrapAtt;
146 RemoteTrapAtt.Checked := GikoSys.Setting.RemoteTrapAtt;
148 FixedCookieEdit.Text := GikoSys.Setting.FixedCookie;
149 //
\83\8a\83\93\83N
\88Ú
\93®
\97\9a\97ð
150 MoveHistoryMaxEdit.Text := IntToStr( GikoSys.Setting.MoveHistorySize );
151 //
\81@
\90æ
\93ª
\95\
\8e¦
\83\8c\83X
\90\94
152 AHandredLabeledEdit.Text := IntToStr( GikoSys.Setting.HeadResCount );
153 //
\8aÖ
\98A
\83L
\81[
\83\8f\81[
\83h
\92Ç
\89Á
\83t
\83\89\83O
154 AddKeywordCheckBox.Checked := GikoSys.Setting.AddKeywordLink;
155 //
\8cë
\94½
\89\9e\91Î
\8dô
156 ReplaceDatCheckBox.Checked := GikoSys.Setting.ReplaceDat;
157 SentIniFileSizeUpDown.Position := GikoSys.Setting.SentIniFileSize;
158 ExtListLabeledEdit.Text := GikoSys.Setting.ExtList;
161 procedure TKuroutOption.SaveSetting;
163 //
\8eó
\90M
\83o
\83b
\83t
\83@
\83T
\83C
\83Y
164 Gikosys.Setting.RecvBufferSize := StrToIntDef(RecvBufferSize.Text, Gikosys.Setting.RecvBufferSize);
165 GikoSys.Setting.ReadTimeOut := StrToIntDef(ReadTimeOut.Text, GikoSys.Setting.ReadTimeOut);
167 GikoSys.Setting.Protocol := ProtocolCheckBox.Checked;
168 //
\83v
\83\8d\83L
\83V
\90Ú
\91±HTTP1.1
\8eg
\97p
169 Gikosys.Setting.ProxyProtocol := ProxyProtocolCheckBox.Checked;
170 //
\8f\91\82«
\8d\9e\82Ý
\8e\9e\83}
\83V
\83\93\8e\9e\8aÔ
\8eg
\97p
\90Ý
\92è
171 GikoSys.Setting.UseMachineTime := PostTimeCheckBox.Checked;
172 if GikoSys.IsNumeric(PostTimeEdit.Text) then
173 GikoSys.Setting.TimeAdjustSec := StrToIntDef(PostTimeEdit.Text, GikoSys.Setting.TimeAdjustSec)
175 GikoSys.Setting.TimeAdjustSec := 0;
176 GikoSys.Setting.TimeAdjust := PutPostTimeRadioButton.Checked;
177 //2ch
\8c¾
\8cê
\83T
\83|
\81[
\83g
178 GikoSys.Setting.GengoSupport := GengoSupport.Checked;
179 GikoSys.SetGikoMessage;
180 //
\83\8d\81[
\83J
\83\8b\81E
\83\8a\83\82\81[
\83g̼±Å
\8cx
\8d\90
181 GikoSys.Setting.LocalTrapAtt := LocalTrapAtt.Checked;
182 GikoSys.Setting.RemoteTrapAtt := RemoteTrapAtt.Checked;
184 GikoSys.Setting.FixedCookie := FixedCookieEdit.Text;
186 //
\83\8a\83\93\83N
\88Ú
\93®
\97\9a\97ð
187 GikoSys.Setting.MoveHistorySize :=
188 StrToIntDef( MoveHistoryMaxEdit.Text, 20 );
190 //
\81@
\90æ
\93ª
\95\
\8e¦
\83\8c\83X
\90\94
191 GikoSys.Setting.HeadResCount :=
192 StrToIntDef( AHandredLabeledEdit.Text , 1);
194 GikoSys.Setting.KuroutSettingTabIndex := PageControl1.ActivePageIndex;
195 //
\8aÖ
\98A
\83L
\81[
\83\8f\81[
\83h
\92Ç
\89Á
\83t
\83\89\83O
196 GikoSys.Setting.AddKeywordLink := AddKeywordCheckBox.Checked;
197 //
\8cë
\94½
\89\9e\91Î
\8dô
198 GikoSys.Setting.ReplaceDat := ReplaceDatCheckBox.Checked;
199 GikoSys.Setting.SentIniFileSize := SentIniFileSizeUpDown.Position;
200 GikoSys.Setting.ExtList := ExtListLabeledEdit.Text;
203 procedure TKuroutOption.RecvBufferSizeExit(Sender: TObject);
205 if not GikoSys.IsNumeric(RecvBufferSize.Text) then
206 RecvBufferSize.Text := '4096';
207 if StrToInt(RecvBufferSize.Text) < 256 then
208 RecvBufferSize.Text := '4096';
211 procedure TKuroutOption.PostTimeEditExit(Sender: TObject);
213 if not GikoSys.IsNumeric(PostTimeEdit.Text) then
214 PostTimeEdit.Text := '0';
217 procedure TKuroutOption.PostTimeCheckBoxClick(Sender: TObject);
219 PostTimeLabel.Enabled := PostTimeCheckBox.Checked;
220 PostTimeEdit.Enabled := PostTimeCheckBox.Checked;
221 PutPostTimeRadioButton.Enabled := PostTimeCheckBox.Checked;
222 BackPostTimeRadioButton.Enabled := PostTimeCheckBox.Checked;
225 procedure TKuroutOption.OkBottonClick(Sender: TObject);
227 RecvBufferSizeExit(Sender);
228 PostTimeEditExit(Sender);
229 MoveHistoryMaxEditExit(Sender);
230 AHandredLabeledEditExit(Sender);
231 ExtListLabeledEditExit(Sender);
236 procedure TKuroutOption.FormCreate(Sender: TObject);
239 PostTimeCheckBoxClick(Sender);
242 procedure TKuroutOption.SetColumnData();
248 //=====
\94Â
\83\8a\83X
\83g =====
249 for i := 0 to GikoSys.Setting.CategoryColumnOrder.Count - 1 do begin
250 for j := 1 to Length( GikoCategoryColumnCaption ) - 1 do begin
251 if GikoSys.Setting.CategoryColumnOrder[ i ] = TGikoCategoryColumnID( j ) then begin
252 CVisibledListBox.AddItem(GikoCategoryColumnCaption[ j ], nil);
258 for i := 1 to Length( GikoCategoryColumnCaption ) - 1 do begin
260 for j := 0 to GikoSys.Setting.CategoryColumnOrder.Count - 1 do begin
261 if GikoSys.Setting.CategoryColumnOrder[ j ] = TGikoCategoryColumnID( i ) then begin
267 CUnVisibledListBox.AddItem(GikoCategoryColumnCaption[ i ], nil);
270 //=====
\83X
\83\8c\83\8a\83X
\83g =====
271 for i := 0 to GikoSys.Setting.BoardColumnOrder.Count - 1 do begin
272 for j := 1 to Length( GikoBoardColumnCaption ) - 1 do begin
273 if GikoSys.Setting.BoardColumnOrder[ i ] = TGikoBoardColumnID( j ) then begin
274 BVisibledListBox.AddItem(GikoBoardColumnCaption[ j ], nil);
280 for i := 1 to Length( GikoBoardColumnCaption ) - 1 do begin
282 for j := GikoSys.Setting.BoardColumnOrder.Count - 1 downto 0 do begin
283 if GikoSys.Setting.BoardColumnOrder[ j ] = TGikoBoardColumnID( i ) then begin
289 BUnVisibledListBox.AddItem(GikoBoardColumnCaption[ i ], nil);
293 procedure TKuroutOption.CDeleteButtonClick(Sender: TObject);
297 for i := 0 to CVisibledListBox.Count - 1 do begin
298 if CVisibledListBox.Selected[i] then begin
299 CUnVisibledListBox.AddItem( CVisibledListBox.Items.Strings[ i ], nil);
300 CVisibledListBox.DeleteSelected;
306 procedure TKuroutOption.CAddButtonClick(Sender: TObject);
310 for i := 0 to CUnVisibledListBox.Count - 1 do begin
311 if CUnVisibledListBox.Selected[i] then begin
312 CVisibledListBox.AddItem( CUnVisibledListBox.Items.Strings[ i ], nil);
313 CUnVisibledListBox.DeleteSelected;
319 procedure TKuroutOption.BAddButtonClick(Sender: TObject);
323 for i := 0 to BUnVisibledListBox.Count - 1 do begin
324 if BUnVisibledListBox.Selected[i] then begin
325 BVisibledListBox.AddItem( BUnVisibledListBox.Items.Strings[ i ], nil);
326 BUnVisibledListBox.DeleteSelected;
332 procedure TKuroutOption.BDeleteButtonClick(Sender: TObject);
336 for i := 0 to BVisibledListBox.Count - 1 do begin
337 if BVisibledListBox.Selected[i] then begin
338 BUnVisibledListBox.AddItem( BVisibledListBox.Items.Strings[ i ], nil);
339 BVisibledListBox.DeleteSelected;
345 procedure TKuroutOption.CUpButtonClick(Sender: TObject);
349 for i := 1 to CVisibledListBox.Count - 1 do begin
350 if CVisibledListBox.Selected[i] then begin
351 CVisibledListBox.Items.Exchange(i, i -1);
357 procedure TKuroutOption.CDownButtonClick(Sender: TObject);
361 for i := 0 to CVisibledListBox.Count - 2 do begin
362 if CVisibledListBox.Selected[i] then begin
363 CVisibledListBox.Items.Exchange(i, i + 1);
369 procedure TKuroutOption.BUpButtonClick(Sender: TObject);
373 for i := 1 to BVisibledListBox.Count - 1 do begin
374 if BVisibledListBox.Selected[i] then begin
375 BVisibledListBox.Items.Exchange(i, i -1);
381 procedure TKuroutOption.BDownButtonClick(Sender: TObject);
385 for i := 0 to BVisibledListBox.Count - 2 do begin
386 if BVisibledListBox.Selected[i] then begin
387 BVisibledListBox.Items.Exchange(i, i + 1);
394 procedure TKuroutOption.PostColumnData();
398 GikoForm.ActiveListColumnSave;
400 //=====
\94Â
\83\8a\83X
\83g =====
401 for i := GikoSys.Setting.CategoryColumnOrder.Count -1 downto 1 do
402 GikoSys.Setting.CategoryColumnOrder.Delete(i);
404 for i := 0 to CVisibledListBox.Count - 1 do begin
405 for j := 1 to Length( GikoCategoryColumnCaption ) - 1 do begin
406 if CVisibledListBox.Items.Strings[ i ] = GikoCategoryColumnCaption[ j ] then begin
407 GikoSys.Setting.CategoryColumnOrder.Add( TGikoCategoryColumnID(j) );
413 //=====
\83X
\83\8c\83\8a\83X
\83g =====
414 for i := GikoSys.Setting.BoardColumnOrder.Count - 1 downto 1 do
415 GikoSys.Setting.BoardColumnOrder.Delete(i);
417 for i := 0 to BVisibledListBox.Count - 1 do begin
418 for j := 1 to Length( GikoBoardColumnCaption ) - 1 do begin
419 if BVisibledListBox.Items.Strings[ i ] = GikoBoardColumnCaption[ j ] then begin
420 GikoSys.Setting.BoardColumnOrder.Add( TGikoBoardColumnID(j) );
425 //
\83X
\83\8c\88ê
\97\97\82Ì
\95`
\89æ
\82Ì
\8dX
\90V
426 GikoForm.SetActiveList(GikoForm.ActiveList);
428 //
\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
429 procedure TKuroutOption.MoveHistoryMaxEditExit(Sender: TObject);
431 if not GikoSys.IsNumeric(MoveHistoryMaxEdit.Text) then
432 MoveHistoryMaxEdit.Text := '20';
433 if StrToInt(MoveHistoryMaxEdit.Text) < 1 then
434 MoveHistoryMaxEdit.Text := '1';
436 //
\90æ
\93ª
\95\
\8e¦
\83\8c\83X
\90\94\82Ì
\95Ò
\8fW
\8cã
\82Ì
\90Ý
\92è
\95¶
\8e\9a\97ñ
\83`
\83F
\83b
\83N
437 procedure TKuroutOption.AHandredLabeledEditExit(Sender: TObject);
439 if not GikoSys.IsNumeric(AHandredLabeledEdit.Text) then
440 AHandredLabeledEdit.Text := '1';
441 if StrToInt(AHandredLabeledEdit.Text) < 1 then
442 AHandredLabeledEdit.Text := '1';
446 procedure TKuroutOption.ExtListLabeledEditExit(Sender: TObject);
448 if AnsiEndsStr(';', ExtListLabeledEdit.Text) then begin
449 ExtListLabeledEdit.Text :=
450 Copy(ExtListLabeledEdit.Text, 0,
451 Length(ExtListLabeledEdit.Text) - 1);