Develop and Download Open Source Software

Browse CVS Repository

Annotation of /gikonavigoeson/gikonavi/Giko.pas

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.349 - (hide annotations) (download) (as text)
Sat Jul 3 13:01:56 2004 UTC (19 years, 9 months ago) by genyakun
Branch: MAIN
Changes since 1.348: +14 -10 lines
File MIME type: text/x-pascal
表示できるようにしたけど例外出るかも

1 hi_ 1.1 unit Giko;
2    
3     interface
4    
5     uses
6     Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
7 yoffy 1.117 OleCtrls, ComCtrls, ExtCtrls, Menus, StdCtrls, MMSystem, DateUtils, Math,
8 hi_ 1.4 {$IF Defined(DELPRO) }
9 yoffy 1.138 SHDocVw,
10 hi_ 1.4 MSHTML,
11     {$ELSE}
12     SHDocVw_TLB,
13     MSHTML_TLB,
14     {$IFEND}
15 h677 1.183 IdHTTP, ActiveX, ActnList, ImgList,
16 h677 1.343 ToolWin, Buttons, {Clipbrd,} {HTTPApp,} YofUtils, IdComponent,
17 h677 1.183 ShellAPI, UrlMon, Tabs, IdGlobal, StrUtils,
18 h677 1.170 CommCtrl, IniFiles, Dialogs,
19 hi_ 1.1 GikoSystem, GikoUtil, Setting, BoardGroup, ThreadControl, ItemDownload,
20     Editor, RoundData, RoundName, KeySetting, GikoPanel, Favorite, FavoriteAdd,
21     FavoriteArrange, AddressHistory, Preview, HTMLDocumentEvent, Kotehan,
22 h677 1.35 HintWindow, GikoCoolBar, GikoListView, ToolBarSetting, ToolBarUtil,
23 h677 1.170 IndividualAbon, Search, ExternalBoardManager, ExternalBoardPlugInMain,
24 genyakun 1.348 StdActns, GikoXMLDoc, Variants, ExtActns,IdTCPConnection, IdBaseComponent,
25     IdTCPClient;
26 hi_ 1.1
27     type
28 yoffy 1.138 TGikoTreeType = (gttNone, gtt2ch, gttHistory, gttFavorite);
29 yoffy 1.258 TToolBarSettingSenderType = (tssNone, tssMain, tssList, tssBrowser);
30 yoffy 1.280 TMinimizeType = (mtNone, mtMinimizing, mtMinimized);
31 hi_ 1.1
32 h677 1.299 TBrowserRecord = class;
33    
34 hi_ 1.1 TGikoForm = class(TForm)
35     StatusBar: TStatusBar;
36     MainPanel: TPanel;
37     ClientPanel: TPanel;
38     TreeSplitter: TSplitter;
39     CabinetPanel: TPanel;
40     TreeView: TTreeView;
41     ThreadMainPanel: TPanel;
42     ListSplitter: TSplitter;
43     ViewPanel: TPanel;
44 yoffy 1.51 ListView: TGikoListView;
45 hi_ 1.1 ThreadPanel: TPanel;
46     MessagePanel: TPanel;
47     MessageBar: TPanel;
48     MessageHideButton: TSpeedButton;
49     MessageListView: TListView;
50     MessageSplitter: TSplitter;
51     Panel3: TPanel;
52     SpeedButton1: TSpeedButton;
53     ToolBar1: TToolBar;
54     CabinetSelectToolButton: TToolButton;
55     HistoryToolBar: TToolBar;
56     ToolButton15: TToolButton;
57     ToolButton18: TToolButton;
58     ItemIcon16: TImageList;
59     ItemIcon32: TImageList;
60 yoffy 1.2 HotToobarImageList: TImageList;
61 yoffy 1.51 ToobarImageList: TImageList;
62 hi_ 1.1 ItemImageList: TImageList;
63 yoffy 1.2 ActionList: TActionList;
64 hi_ 1.1 LogDeleteAction: TAction;
65     KidokuAction: TAction;
66     StdToolBarVisibleAction: TAction;
67     SearchAction: TAction;
68 yoffy 1.51 GikoNaviWebPageAction: TAction;
69 hi_ 1.1 AboutAction: TAction;
70     ExitAction: TAction;
71 yoffy 1.51 MsgBarVisibleAction: TAction;
72 hi_ 1.1 StatusBarVisibleAction: TAction;
73     LargeIconAction: TAction;
74     SmallIconAction: TAction;
75     ListIconAction: TAction;
76 yoffy 1.51 DetailIconAction: TAction;
77 yoffy 1.141 CabinetBBSAction: TAction;
78 hi_ 1.1 CabinetHistoryAction: TAction;
79 yoffy 1.51 CabinetVisibleAction: TAction;
80     MidokuAction: TAction;
81 hi_ 1.1 AllSelectAction: TAction;
82     UpFolderAction: TAction;
83 yoffy 1.51 ListNumberVisibleAction: TAction;
84 hi_ 1.1 AllItemAction: TAction;
85 yoffy 1.51 LogItemAction: TAction;
86     NewItemAction: TAction;
87 hi_ 1.1 SelectItemAction: TAction;
88     ShowThreadAction: TAction;
89     StopAction: TAction;
90     MainMenu: TMainMenu;
91     FileMenu: TMenuItem;
92 yoffy 1.51 DeleteMenu: TMenuItem;
93     ExitMenu: TMenuItem;
94     KidokuMenu: TMenuItem;
95 hi_ 1.1 MidokuMenu: TMenuItem;
96 yoffy 1.51 AllSelectMenu: TMenuItem;
97 hi_ 1.1 ViewMenu: TMenuItem;
98     StdToolBarMenu: TMenuItem;
99     CabinetMenu: TMenuItem;
100 yoffy 1.51 H1: TMenuItem;
101 hi_ 1.1 N4: TMenuItem;
102 yoffy 1.51 CabinetVisibleMenu: TMenuItem;
103 hi_ 1.1 MessageMenu: TMenuItem;
104     StatusBarMenu: TMenuItem;
105     MMSep03: TMenuItem;
106 yoffy 1.51 LargeIconMenu: TMenuItem;
107 hi_ 1.1 SmallIconMenu: TMenuItem;
108     ListMenu: TMenuItem;
109     DetailMenu: TMenuItem;
110 yoffy 1.51 ToolMenu: TMenuItem;
111 hi_ 1.1 Find1: TMenuItem;
112     RoundMenu: TMenuItem;
113     MMSep04: TMenuItem;
114     OptionMenu: TMenuItem;
115     HelpMenu: TMenuItem;
116     G1: TMenuItem;
117 yoffy 1.51 N1: TMenuItem;
118 hi_ 1.1 AboutMenu: TMenuItem;
119 yoffy 1.51 IconStyle: TAction;
120 hi_ 1.1 BrowserPopupMenu: TPopupMenu;
121 yoffy 1.51 ShowThreadMenu: TMenuItem;
122 yoffy 1.2 ShowBoardMenu: TMenuItem;
123 hi_ 1.1 ShowBoardAction: TAction;
124     ListIconPopupMenu: TPopupMenu;
125     LargeIconPMenu: TMenuItem;
126     SmallIconPMenu: TMenuItem;
127     ListPMenu: TMenuItem;
128 yoffy 1.51 DetailPMenu: TMenuItem;
129     CabinetCloseAction: TAction;
130 hi_ 1.1 ClosePopupMenu: TPopupMenu;
131 yoffy 1.51 CloseMenu: TMenuItem;
132     OptionAction: TAction;
133 hi_ 1.1 U1: TMenuItem;
134     N3: TMenuItem;
135     B1: TMenuItem;
136     S1: TMenuItem;
137     N2: TMenuItem;
138     A1: TMenuItem;
139     L1: TMenuItem;
140     N5: TMenuItem;
141     S2: TMenuItem;
142 yoffy 1.51 RoundAction: TAction;
143 hi_ 1.1 ListPopupMenu: TPopupMenu;
144 yoffy 1.51 ListRoundPMenu: TMenuItem;
145 hi_ 1.1 ListReservPMenu: TMenuItem;
146     LPMSep01: TMenuItem;
147 yoffy 1.51 ItemRoundPMenu: TMenuItem;
148 hi_ 1.1 LPMSep02: TMenuItem;
149 yoffy 1.2 KidokuPMenu: TMenuItem;
150 hi_ 1.1 MidokuPMenu: TMenuItem;
151     AllSelectPMenu: TMenuItem;
152     UrlCopyPMenu: TMenuItem;
153     LPMSep05: TMenuItem;
154     DeletePMenu: TMenuItem;
155     LPMSep06: TMenuItem;
156     ViewPMenu: TMenuItem;
157     LargeIconLPMenu: TMenuItem;
158     SmallIconLPMenu: TMenuItem;
159     ListLPMenu: TMenuItem;
160     DetailLPMenu: TMenuItem;
161     T1: TMenuItem;
162     B2: TMenuItem;
163     N8: TMenuItem;
164     URLCopyAction: TAction;
165 yoffy 1.51 URLC1: TMenuItem;
166     N9: TMenuItem;
167 hi_ 1.1 N10: TMenuItem;
168 yoffy 1.51 MsgBarCloseAction: TAction;
169     ScrollTopAction: TAction;
170 hi_ 1.1 ScrollLastAction: TAction;
171     ScrollNewAction: TAction;
172     ScrollKokoAction: TAction;
173 yoffy 1.51 EditorAction: TAction;
174 hi_ 1.1 IEAction: TAction;
175     ItemReloadAction: TAction;
176 yoffy 1.51 BrowserMaxAction: TAction;
177 hi_ 1.1 G2: TMenuItem;
178     N11: TMenuItem;
179     T3: TMenuItem;
180     L2: TMenuItem;
181     N12: TMenuItem;
182     K1: TMenuItem;
183     N13: TMenuItem;
184     N14: TMenuItem;
185     R1: TMenuItem;
186     A2: TMenuItem;
187     N15: TMenuItem;
188 yoffy 1.51 SelectListReloadAction: TAction;
189     SelectThreadReloadAction: TAction;
190 hi_ 1.1 KokoPopupMenu: TPopupMenu;
191     KokomadePMenu: TMenuItem;
192 yoffy 1.2 AllPMenu: TMenuItem;
193 hi_ 1.1 MenuItem1: TMenuItem;
194     MenuItem2: TMenuItem;
195     BrowserTabCloseAction: TAction;
196     BrowserTabPopupMenu: TPopupMenu;
197 yoffy 1.51 Close1: TMenuItem;
198 hi_ 1.1 KokomadeAction: TAction;
199     ZenbuAction: TAction;
200     KokoResAction: TAction;
201     SelectItemURLCopyAction: TAction;
202     SelectReservAction: TAction;
203     NotSelectTabCloseAction: TAction;
204     A3: TMenuItem;
205 yoffy 1.51 N16: TMenuItem;
206 hi_ 1.1 A4: TMenuItem;
207     TreePopupMenu: TPopupMenu;
208     TreeSelectThreadPupupMenu: TMenuItem;
209 yoffy 1.51 TreeSelectBoardPupupMenu: TMenuItem;
210 hi_ 1.1 TPMSep01: TMenuItem;
211     TreeSelectURLPupupMenu: TMenuItem;
212     TreeSelectBoradReload: TAction;
213 yoffy 1.51 TreeSelectThreadReload: TAction;
214 hi_ 1.1 TreeSelectURLCopy: TAction;
215     ListToolBarVisibleAction: TAction;
216     BrowserToolBarVisibleAction: TAction;
217     T2: TMenuItem;
218 yoffy 1.2 L3: TMenuItem;
219 hi_ 1.1 B3: TMenuItem;
220     BrowserBottomPanel: TGikoPanel;
221     CabinetSelectPopupMenu: TPopupMenu;
222     H2: TMenuItem;
223 yoffy 1.51 ItemReservPMenu: TMenuItem;
224     RoundNamePopupMenu: TPopupMenu;
225 hi_ 1.1 SelectNewRoundName: TAction;
226 yoffy 1.51 SelectDeleteRound: TAction;
227     NewBoardAction: TAction;
228 yoffy 1.2 N7: TMenuItem;
229 hi_ 1.1 B4: TMenuItem;
230     LoginAction: TAction;
231     L4: TMenuItem;
232     KeySettingAction: TAction;
233     K2: TMenuItem;
234     AllTabCloseAction: TAction;
235 yoffy 1.51 A5: TMenuItem;
236 hi_ 1.1 A6: TMenuItem;
237 yoffy 1.51 C1: TMenuItem;
238     V1: TMenuItem;
239     N19: TMenuItem;
240 hi_ 1.1 D1: TMenuItem;
241 yoffy 1.51 D2: TMenuItem;
242     MessageImageList: TImageList;
243     ProgressBar: TProgressBar;
244     ArrangeAction: TAction;
245     URL1: TMenuItem;
246     NameURLCopyAction: TAction;
247     SelectItemNameURLCopyAction: TAction;
248 hi_ 1.1 NameUrlCopyPMenu: TMenuItem;
249     URLC2: TMenuItem;
250 yoffy 1.51 URLN1: TMenuItem;
251     N21: TMenuItem;
252     URLC3: TMenuItem;
253 yoffy 1.2 URLN2: TMenuItem;
254 yoffy 1.51 N23: TMenuItem;
255 yoffy 1.2 ListCoolBar: TGikoCoolBar;
256 hi_ 1.1 ListToolBar: TToolBar;
257     ViewNoButton: TToolButton;
258     IconToolButton: TToolButton;
259 yoffy 1.51 UpFolderButton: TToolButton;
260     Sepa01ToolButton: TToolButton;
261 yoffy 1.2 AllItemToolButton: TToolButton;
262 hi_ 1.1 LogItemToolButton: TToolButton;
263     NewItemToolButton: TToolButton;
264 yoffy 1.51 ListDownloadToolButton: TToolButton;
265 hi_ 1.1 ListThreadDownloadToolButton: TToolButton;
266 yoffy 1.51 ToolButton2: TToolButton;
267     ToolButton1: TToolButton;
268 yoffy 1.2 BrowserCoolBar: TGikoCoolBar;
269 hi_ 1.1 BrowserToolBar: TToolBar;
270 yoffy 1.51 BrowserSizeButton: TToolButton;
271 hi_ 1.1 ToolButton3: TToolButton;
272     TopButton: TToolButton;
273 yoffy 1.2 LastBotton: TToolButton;
274     NewButton: TToolButton;
275 yoffy 1.51 KokoButton: TToolButton;
276     ToolButton9: TToolButton;
277 yoffy 1.2 EditorButton: TToolButton;
278 hi_ 1.1 ToolButton11: TToolButton;
279     IEButton: TToolButton;
280 yoffy 1.51 ToolButton5: TToolButton;
281     ItemReloadButton: TToolButton;
282 hi_ 1.1 ListNameToolBar: TToolBar;
283 yoffy 1.51 ListNameLabel: TLabel;
284 hi_ 1.1 FolderImage: TImage;
285     BrowserNameToolBar: TToolBar;
286     ItemBoardImage: TImage;
287     BrowserBoardNameLabel: TLabel;
288 yoffy 1.51 ItemImage: TImage;
289     BrowserNameLabel: TLabel;
290     ActiveLogDeleteAction: TAction;
291     D3: TMenuItem;
292     N25: TMenuItem;
293 hi_ 1.1 N26: TMenuItem;
294     ListNameBarVisibleAction: TAction;
295     D4: TMenuItem;
296     BrowserNameBarVisibleAction: TAction;
297     S3: TMenuItem;
298 yoffy 1.51 R2: TMenuItem;
299     TreeSelectNameURLCopy: TAction;
300     TreeSelectNameURLPupupMenu: TMenuItem;
301     N27: TMenuItem;
302 hi_ 1.1 H3: TMenuItem;
303     PaneInitAction: TAction;
304 yoffy 1.51 I1: TMenuItem;
305     BrowserTabToolBar: TToolBar;
306     BrowserTab: TTabControl;
307 hi_ 1.1 ToolButton7: TToolButton;
308 yoffy 1.2 BrowserMinAction: TAction;
309 yoffy 1.51 About1: TMenuItem;
310     N28: TMenuItem;
311     SelectTextClearAction: TAction;
312     MailTextClearAction: TAction;
313 hi_ 1.1 NameTextClearAction: TAction;
314 yoffy 1.51 S4: TMenuItem;
315 yoffy 1.2 N29: TMenuItem;
316     N30: TMenuItem;
317 hi_ 1.1 LeftmostTabSelectAction: TAction;
318 yoffy 1.51 LeftTabSelectAction: TAction;
319     RightTabSelectAction: TAction;
320     RightmostTabSelectAction: TAction;
321 yoffy 1.2 N31: TMenuItem;
322 hi_ 1.1 L5: TMenuItem;
323 yoffy 1.51 L6: TMenuItem;
324 hi_ 1.1 A7: TMenuItem;
325 yoffy 1.51 R3: TMenuItem;
326 hi_ 1.1 FavoriteMenu: TMenuItem;
327 yoffy 1.51 FavoriteAddAction: TAction;
328     N32: TMenuItem;
329 hi_ 1.1 BoardFavoriteAddMenu: TMenuItem;
330 yoffy 1.2 BoardFavoriteAddAction: TAction;
331 hi_ 1.1 ThreadFavoriteAddAction: TAction;
332     ThreadFavoriteAddMenu: TMenuItem;
333     TreeSelectFavoriteAddAction: TAction;
334 yoffy 1.2 N33: TMenuItem;
335 hi_ 1.1 TreeSelectFavoriteAddPupupMenu: TMenuItem;
336     FavoriteArrangeAction: TAction;
337     FavoriteTreeView: TTreeView;
338 yoffy 1.51 StateIconImageList: TImageList;
339     TopPanel: TPanel;
340     TopRightPanel: TPanel;
341     AnimePanel: TPanel;
342 hi_ 1.1 Animate: TAnimate;
343     TopCoolPanel: TPanel;
344 yoffy 1.51 MainCoolBar: TGikoCoolBar;
345     MenuToolBar: TToolBar;
346     StdToolBar: TToolBar;
347     RoundToolButton: TToolButton;
348     ToolButton6: TToolButton;
349     ToolButton4: TToolButton;
350 hi_ 1.1 ToolButton13: TToolButton;
351     AbortToolButton: TToolButton;
352     LoginToolButton: TToolButton;
353 yoffy 1.51 AddressToolBar: TToolBar;
354     AddressComboBox: TComboBox;
355     MoveToToolButton: TToolButton;
356 yoffy 1.2 MoveToAction: TAction;
357 yoffy 1.51 AddressImageList: TImageList;
358     AddressBarVisibleAction: TAction;
359     AddressToolBarMenu: TMenuItem;
360     T4: TMenuItem;
361 hi_ 1.1 BrowserTabVisibleAction: TAction;
362 yoffy 1.51 Show1: TMenuItem;
363     N34: TMenuItem;
364     BrowserTabTopAction: TAction;
365 yoffy 1.2 BrowserTabBottomAction: TAction;
366 hi_ 1.1 T5: TMenuItem;
367     B5: TMenuItem;
368 yoffy 1.51 N35: TMenuItem;
369     BrowserTabTabStyleAction: TAction;
370     BrowserTabButtonStyleAction: TAction;
371     BrowserTabFlatStyleAction: TAction;
372     A8: TMenuItem;
373     U2: TMenuItem;
374 hi_ 1.1 F1: TMenuItem;
375     PreviewTimer: TTimer;
376 yoffy 1.51 MonazillaWebPageAction: TAction;
377     MonazillaWebPageAction1: TMenuItem;
378 hi_ 1.1 GikoHelpAction: TAction;
379 yoffy 1.51 N36: TMenuItem;
380     H4: TMenuItem;
381     KotehanAction: TAction;
382     K3: TMenuItem;
383     LinkBarVisibleAction: TAction;
384     L7: TMenuItem;
385     N37: TMenuItem;
386     A9: TMenuItem;
387 yoffy 1.2 ChevronPopupMenu: TPopupMenu;
388 yoffy 1.51 BBS2chWebPageAction: TAction;
389 yoffy 1.2 N2N1: TMenuItem;
390 hi_ 1.1 N38: TMenuItem;
391     GikoFolderOpenAction: TAction;
392 yoffy 1.2 F2: TMenuItem;
393 yoffy 1.51 LinkToolBar: TToolBar;
394     a10: TMenuItem;
395     ToolButton8: TToolButton;
396 yoffy 1.2 ToolButton10: TToolButton;
397 yoffy 1.51 ThreadEditorAction: TAction;
398     N39: TMenuItem;
399     T6: TMenuItem;
400     N40: TMenuItem;
401 yoffy 1.2 LinkBarPopupMenu: TPopupMenu;
402 yoffy 1.51 ToolBarSettingAction: TAction;
403     T7: TMenuItem;
404     ToolButton12: TToolButton;
405     ToolButton14: TToolButton;
406     ThreadPopupMenu: TPopupMenu;
407     MenuItem4: TMenuItem;
408     MenuItem5: TMenuItem;
409     MenuItem6: TMenuItem;
410 yoffy 1.2 T8: TMenuItem;
411 yoffy 1.51 NameCopyAction: TAction;
412     BoardIEAction: TAction;
413     URLN3: TMenuItem;
414     SelectItemNameCopyAction: TAction;
415 yoffy 1.2 SelectItemNameCopyAction1: TMenuItem;
416 yoffy 1.51 B6: TMenuItem;
417     T9: TMenuItem;
418     C2: TMenuItem;
419     SelectComboBox: TComboBox;
420     MainCoolBarPopupMenu: TPopupMenu;
421     StdToolBarVisiblePMenu: TMenuItem;
422     AddressToolBarVisiblePMenu: TMenuItem;
423     LinkToolBarVisiblePMenu: TMenuItem;
424     NG1: TMenuItem;
425     NG2: TMenuItem;
426     N43: TMenuItem;
427     N44: TMenuItem;
428     L9: TMenuItem;
429     I3: TMenuItem;
430     N45: TMenuItem;
431     B9: TMenuItem;
432     R5: TMenuItem;
433     T12: TMenuItem;
434     Show3: TMenuItem;
435     N46: TMenuItem;
436     T13: TMenuItem;
437     B10: TMenuItem;
438     N47: TMenuItem;
439     A12: TMenuItem;
440     U4: TMenuItem;
441     F4: TMenuItem;
442     N48: TMenuItem;
443     T14: TMenuItem;
444     SelectItemToolButton: TToolButton;
445     SelectResToolButton: TToolButton;
446     SelectResAction: TAction;
447     ToolButton16: TToolButton;
448     AllResAction: TAction;
449     AllResToolButton: TToolButton;
450     N50: TMenuItem;
451     A11: TMenuItem;
452     S5: TMenuItem;
453     Reload: TMenuItem;
454     GoBack: TMenuItem;
455     GoFoward: TMenuItem;
456     EditAction: TAction;
457     ReloadAction: TAction;
458     GoFowardAction: TAction;
459     GoBackAction: TAction;
460     SelectComboBoxSplitter: TImage;
461     IndividualAbon1: TMenuItem;
462     N41: TMenuItem;
463     IndividualAbon2: TMenuItem;
464     N42: TMenuItem;
465     CancellIndividualAbon: TAction;
466     AntiIndividualAbon: TMenuItem;
467     N49: TMenuItem;
468     N51: TMenuItem;
469     N52: TMenuItem;
470     N53: TMenuItem;
471     SearchBoardName: TMenuItem;
472 yoffy 1.205 TreeSelectLogDeleteSeparator: TMenuItem;
473 yoffy 1.51 TreeSelectSearchBoardName: TAction;
474 yoffy 1.100 CabinetFavoriteAction: TAction;
475     N54: TMenuItem;
476     A13: TMenuItem;
477     FavoriteTreePopupMenu: TPopupMenu;
478     FavoriteTreeViewRenameAction: TAction;
479     FavoriteTreeRenamePopupMenu: TMenuItem;
480     FavoriteTreeViewNewFolderAction: TAction;
481     FavoriteTreeNewFolderPopupMenu: TMenuItem;
482     N56: TMenuItem;
483     FavoriteTreeViewDeleteAction: TAction;
484     FavoriteTreeDeletePopupMenu: TMenuItem;
485     FavoriteToolBar: TToolBar;
486     ToolButton17: TToolButton;
487     ToolButton19: TToolButton;
488     FavoriteTreeViewBrowseFolderAction: TAction;
489     FavoriteTreeBrowseFolderPopupMenu: TMenuItem;
490     N57: TMenuItem;
491     FavoriteTreeReloadPopupMenu: TMenuItem;
492     N58: TMenuItem;
493     FavoriteTreeURLCopyPopupMenu: TMenuItem;
494     FavoriteTreeNameCopyPopupMenu: TMenuItem;
495     FavoriteTreeLogDeletePopupMenu: TMenuItem;
496     N59: TMenuItem;
497     FavoriteTreeNameURLCopyPopupMenu: TMenuItem;
498     FavoriteTreeViewReloadAction: TAction;
499     FavoriteTreeViewURLCopyAction: TAction;
500     FavoriteTreeViewNameCopyAction: TAction;
501     FavoriteTreeViewNameURLCopyAction: TAction;
502     FavoriteTreeViewLogDeleteAction: TAction;
503     OnlyAHundredRes: TAction;
504     ToolButton20: TToolButton;
505     AHundredResButton: TToolButton;
506     N60: TMenuItem;
507 yoffy 1.107 ExportFavoriteFileAction1: TMenuItem;
508     ExportFavoriteFile: TFileSaveAs;
509 yoffy 1.141 ToolButton21: TToolButton;
510 yoffy 1.322 CabinetBBSToolButton: TToolButton;
511 yoffy 1.141 ToolButton23: TToolButton;
512     ToolButton24: TToolButton;
513 yoffy 1.142 N6: TMenuItem;
514     N17: TMenuItem;
515     FavoriteTreeViewBrowseBoardAction: TAction;
516     FavoriteTreeViewBrowseThreadAction: TAction;
517 yoffy 1.158 UpBoardAction: TAction;
518 h677 1.174 N18: TMenuItem;
519     N20: TMenuItem;
520     N24: TMenuItem;
521     N62: TMenuItem;
522 h677 1.176 N61: TMenuItem;
523 h677 1.183 N63: TMenuItem;
524     KoreCopy: TAction;
525     N64: TMenuItem;
526 h677 1.187 dummy1: TMenuItem;
527 yoffy 1.205 TreeSelectLogDeletePopupMenu: TMenuItem;
528     N65: TMenuItem;
529 yoffy 1.209 BBSSelectPopupMenu: TPopupMenu;
530 yoffy 1.218 PlugInMenu: TMenuItem;
531 h677 1.230 TmpToolBar: TToolBar;
532 yoffy 1.252 TreeSelectNameCopy: TAction;
533     TreeSelectNamePupupMenu: TMenuItem;
534 h677 1.299 BrowserPanel: TPanel;
535 h677 1.315 SetFocusForBrowserAction: TAction;
536     SetFocusForThreadListAction: TAction;
537     SetFocusForCabinetAction: TAction;
538 h677 1.318 FileRun1: TFileRun;
539 h677 1.319 ThreadlistMaxAndFocusAction: TAction;
540     BrowserMaxAndFocusAction: TAction;
541 yoffy 1.322 UpBoardButton: TToolButton;
542 yoffy 1.329 SelectTimer: TTimer;
543 h677 1.340 SelectThreadSave: TMenuItem;
544     SelectItemSaveForHTML: TAction;
545     FileSaveAs1: TFileSaveAs;
546 h677 1.342 N55: TMenuItem;
547 h677 1.343 N66: TMenuItem;
548     dat1: TMenuItem;
549     SelectItemSaveForDat: TAction;
550 h677 1.345 LogFolderOpenAction: TAction;
551     OpenLogFolder: TMenuItem;
552 h677 1.346 Browser: TWebBrowser;
553 genyakun 1.348 LocalRuleView: TToolButton;
554     IdHTTP1: TIdHTTP;
555 yoffy 1.251 procedure FormCreate(Sender: TObject);
556 hi_ 1.1 procedure FormDestroy(Sender: TObject);
557     procedure CabinetPanelHide(Sender: TObject);
558     procedure FormClose(Sender: TObject; var Action: TCloseAction);
559     procedure ListViewData(Sender: TObject; Item: TListItem);
560     procedure ListViewDataFind(Sender: TObject; Find: TItemFind;
561     const FindString: String; const FindPosition: TPoint;
562     FindData: Pointer; StartIndex: Integer; Direction: TSearchDirection;
563     Wrap: Boolean; var Index: Integer);
564     procedure ListViewDataHint(Sender: TObject; StartIndex,
565     EndIndex: Integer);
566     procedure ListViewDataStateChange(Sender: TObject; StartIndex,
567     EndIndex: Integer; OldState, NewState: TItemStates);
568     procedure BrowserStatusTextChange(Sender: TObject;
569     const Text: WideString);
570     procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
571     procedure TreeViewChanging(Sender: TObject; Node: TTreeNode;
572     var AllowChange: Boolean);
573     procedure ListViewKeyDown(Sender: TObject; var Key: Word;
574     Shift: TShiftState);
575     procedure ListViewColumnClick(Sender: TObject; Column: TListColumn);
576     procedure MenuToolBarCustomDrawButton(Sender: TToolBar;
577     Button: TToolButton; State: TCustomDrawState;
578     var DefaultDraw: Boolean);
579     procedure BrowserBeforeNavigate2(Sender: TObject;
580     const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
581     Headers: OleVariant; var Cancel: WordBool);
582     procedure ListViewAdvancedCustomDrawItem(Sender: TCustomListView;
583     Item: TListItem; State: TCustomDrawState; Stage: TCustomDrawStage;
584     var DefaultDraw: Boolean);
585     procedure TreeViewCustomDraw(Sender: TCustomTreeView;
586     const ARect: TRect; var DefaultDraw: Boolean);
587     procedure TreeViewCustomDrawItem(Sender: TCustomTreeView;
588     Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean);
589     procedure TreeViewExpanded(Sender: TObject; Node: TTreeNode);
590     procedure TreeViewDblClick(Sender: TObject);
591     procedure ListViewCustomDraw(Sender: TCustomListView;
592     const ARect: TRect; var DefaultDraw: Boolean);
593     procedure ListViewMouseDown(Sender: TObject; Button: TMouseButton;
594     Shift: TShiftState; X, Y: Integer);
595     procedure TreeViewCollapsed(Sender: TObject; Node: TTreeNode);
596     procedure MessageListViewResize(Sender: TObject);
597     procedure ExitActionExecute(Sender: TObject);
598     procedure AllSelectActionExecute(Sender: TObject);
599     procedure StdToolBarVisibleActionExecute(Sender: TObject);
600     procedure MsgBarVisibleActionExecute(Sender: TObject);
601     procedure StatusBarVisibleActionExecute(Sender: TObject);
602     procedure LargeIconActionExecute(Sender: TObject);
603     procedure SmallIconActionExecute(Sender: TObject);
604     procedure ListIconActionExecute(Sender: TObject);
605     procedure DetailIconActionExecute(Sender: TObject);
606     procedure SearchActionExecute(Sender: TObject);
607     procedure OptionActionExecute(Sender: TObject);
608     procedure GikoNaviWebPageActionExecute(Sender: TObject);
609     procedure AboutActionExecute(Sender: TObject);
610     procedure CabinetHistoryActionExecute(Sender: TObject);
611 yoffy 1.138 procedure CabinetVisible( isVisible : Boolean );
612 hi_ 1.1 procedure CabinetVisibleActionExecute(Sender: TObject);
613     procedure AllItemActionExecute(Sender: TObject);
614     procedure LogItemActionExecute(Sender: TObject);
615     procedure NewItemActionExecute(Sender: TObject);
616     procedure SelectItemActionExecute(Sender: TObject);
617     procedure ListNumberVisibleActionExecute(Sender: TObject);
618     procedure UpFolderActionExecute(Sender: TObject);
619     procedure IconStyleExecute(Sender: TObject);
620     procedure RoundActionExecute(Sender: TObject);
621     procedure StopActionExecute(Sender: TObject);
622     procedure MsgBarCloseActionExecute(Sender: TObject);
623     procedure BrowserMaxActionExecute(Sender: TObject);
624     procedure ScrollTopActionExecute(Sender: TObject);
625     procedure ScrollLastActionExecute(Sender: TObject);
626     procedure ScrollNewActionExecute(Sender: TObject);
627     procedure ScrollKokoActionExecute(Sender: TObject);
628     procedure EditorActionExecute(Sender: TObject);
629     procedure IEActionExecute(Sender: TObject);
630     procedure ShowThreadActionExecute(Sender: TObject);
631     procedure ShowBoardActionExecute(Sender: TObject);
632     procedure URLCopyActionExecute(Sender: TObject);
633     procedure ItemReloadActionExecute(Sender: TObject);
634     procedure SelectListReloadActionExecute(Sender: TObject);
635     procedure SelectThreadReloadActionExecute(Sender: TObject);
636     procedure SelectListReloadActionUpdate(Sender: TObject);
637     procedure AllItemActionUpdate(Sender: TObject);
638     procedure LogItemActionUpdate(Sender: TObject);
639     procedure NewItemActionUpdate(Sender: TObject);
640     procedure SelectItemActionUpdate(Sender: TObject);
641     procedure UpFolderActionUpdate(Sender: TObject);
642     procedure FormResize(Sender: TObject);
643     procedure ScrollTopActionUpdate(Sender: TObject);
644     procedure ScrollLastActionUpdate(Sender: TObject);
645     procedure ScrollNewActionUpdate(Sender: TObject);
646     procedure ScrollKokoActionUpdate(Sender: TObject);
647     procedure EditorActionUpdate(Sender: TObject);
648     procedure IEActionUpdate(Sender: TObject);
649     procedure ShowThreadActionUpdate(Sender: TObject);
650     procedure ShowBoardActionUpdate(Sender: TObject);
651     procedure SelectThreadReloadActionUpdate(Sender: TObject);
652 yoffy 1.51 procedure ItemReloadActionUpdate(Sender: TObject);
653     procedure LogDeleteActionExecute(Sender: TObject);
654 hi_ 1.1 procedure KokomadeActionExecute(Sender: TObject);
655     procedure ZenbuActionExecute(Sender: TObject);
656 yoffy 1.51 procedure KokoResActionExecute(Sender: TObject);
657 hi_ 1.1 procedure ListPopupMenuPopup(Sender: TObject);
658     procedure SelectItemURLCopyActionExecute(Sender: TObject);
659     procedure SelectItemURLCopyActionUpdate(Sender: TObject);
660     procedure AllSelectActionUpdate(Sender: TObject);
661     procedure LogDeleteActionUpdate(Sender: TObject);
662     procedure BrowserTabCloseActionExecute(Sender: TObject);
663     procedure NotSelectTabCloseActionExecute(Sender: TObject);
664     procedure TreeSelectBoradReloadExecute(Sender: TObject);
665     procedure TreeSelectThreadReloadExecute(Sender: TObject);
666     procedure TreeSelectURLCopyExecute(Sender: TObject);
667     procedure TreePopupMenuPopup(Sender: TObject);
668     procedure ListToolBarVisibleActionExecute(Sender: TObject);
669     procedure BrowserToolBarVisibleActionExecute(Sender: TObject);
670     procedure BrowserNewWindow2(Sender: TObject; var ppDisp: IDispatch;
671     var Cancel: WordBool);
672     procedure ListSplitterCanResize(Sender: TObject; var NewSize: Integer;
673     var Accept: Boolean);
674     procedure ListSplitterMoved(Sender: TObject);
675     procedure BrowserTabChange(Sender: TObject);
676     procedure BrowserTabMouseDown(Sender: TObject; Button: TMouseButton;
677     Shift: TShiftState; X, Y: Integer);
678     procedure BrowserTabDragOver(Sender, Source: TObject; X, Y: Integer;
679     State: TDragState; var Accept: Boolean);
680     procedure BrowserTabDragDrop(Sender, Source: TObject; X, Y: Integer);
681     procedure BrowserTabMouseMove(Sender: TObject; Shift: TShiftState; X,
682     Y: Integer);
683     procedure BrowserDocumentComplete(Sender: TObject;
684     const pDisp: IDispatch; var URL: OleVariant);
685     procedure SelectReservActionUpdate(Sender: TObject);
686     procedure RoundNamePopupMenuPopup(Sender: TObject);
687     procedure SelectNewRoundNameExecute(Sender: TObject);
688     procedure SelectDeleteRoundExecute(Sender: TObject);
689     procedure SelectReservActionExecute(Sender: TObject);
690     procedure NewBoardActionExecute(Sender: TObject);
691     procedure LoginActionExecute(Sender: TObject);
692     procedure KeySettingActionExecute(Sender: TObject);
693     procedure AllTabCloseActionExecute(Sender: TObject);
694 yoffy 1.51 procedure ArrangeActionExecute(Sender: TObject);
695     procedure NameURLCopyActionExecute(Sender: TObject);
696     procedure SelectItemNameURLCopyActionExecute(Sender: TObject);
697 hi_ 1.1 procedure URLCopyActionUpdate(Sender: TObject);
698 yoffy 1.2 procedure NameURLCopyActionUpdate(Sender: TObject);
699 hi_ 1.1 procedure BrowserTabCloseActionUpdate(Sender: TObject);
700 yoffy 1.51 procedure NotSelectTabCloseActionUpdate(Sender: TObject);
701 hi_ 1.1 procedure AllTabCloseActionUpdate(Sender: TObject);
702     procedure SelectItemNameURLCopyActionUpdate(Sender: TObject);
703     procedure ActiveLogDeleteActionExecute(Sender: TObject);
704     procedure ActiveLogDeleteActionUpdate(Sender: TObject);
705 yoffy 1.51 procedure ListNameBarVisibleActionExecute(Sender: TObject);
706 hi_ 1.1 procedure BrowserNameBarVisibleActionExecute(Sender: TObject);
707 yoffy 1.51 procedure TreeSelectNameURLCopyExecute(Sender: TObject);
708     procedure PaneInitActionExecute(Sender: TObject);
709 hi_ 1.1 procedure FormShow(Sender: TObject);
710     procedure BrowserTabToolBarResize(Sender: TObject);
711     procedure BrowserMinActionExecute(Sender: TObject);
712 yoffy 1.51 procedure SelectTextClearActionExecute(Sender: TObject);
713 hi_ 1.1 procedure NameTextClearActionExecute(Sender: TObject);
714 yoffy 1.51 procedure MailTextClearActionExecute(Sender: TObject);
715     procedure LeftmostTabSelectActionExecute(Sender: TObject);
716     procedure LeftTabSelectActionExecute(Sender: TObject);
717 hi_ 1.1 procedure RightTabSelectActionExecute(Sender: TObject);
718     procedure RightmostTabSelectActionExecute(Sender: TObject);
719     procedure LeftmostTabSelectActionUpdate(Sender: TObject);
720     procedure LeftTabSelectActionUpdate(Sender: TObject);
721     procedure RightTabSelectActionUpdate(Sender: TObject);
722     procedure RightmostTabSelectActionUpdate(Sender: TObject);
723     procedure FavoriteMenuClick(Sender: TObject);
724     procedure FavoriteAddActionExecute(Sender: TObject);
725     procedure FavoriteAddActionUpdate(Sender: TObject);
726     procedure BoardFavoriteAddActionExecute(Sender: TObject);
727     procedure BoardFavoriteAddActionUpdate(Sender: TObject);
728 yoffy 1.51 procedure ThreadFavoriteAddActionExecute(Sender: TObject);
729 hi_ 1.1 procedure ThreadFavoriteAddActionUpdate(Sender: TObject);
730 yoffy 1.51 procedure TreeSelectFavoriteAddActionExecute(Sender: TObject);
731 yoffy 1.2 procedure FavoriteArrangeActionExecute(Sender: TObject);
732     procedure MainCoolBarResize(Sender: TObject);
733 hi_ 1.1 procedure MoveToActionExecute(Sender: TObject);
734 yoffy 1.2 procedure AddressToolBarResize(Sender: TObject);
735 hi_ 1.1 procedure AddressComboBoxKeyDown(Sender: TObject; var Key: Word;
736     Shift: TShiftState);
737 yoffy 1.51 procedure AddressBarVisibleActionExecute(Sender: TObject);
738 yoffy 1.2 procedure BrowserEnter(Sender: TObject);
739 hi_ 1.1 procedure FormShortCut(var Msg: TWMKey; var Handled: Boolean);
740 yoffy 1.51 procedure BrowserTabVisibleActionExecute(Sender: TObject);
741     procedure BrowserTabTopActionExecute(Sender: TObject);
742     procedure BrowserTabBottomActionExecute(Sender: TObject);
743     procedure BrowserTabTabStyleActionExecute(Sender: TObject);
744 hi_ 1.1 procedure BrowserTabButtonStyleActionExecute(Sender: TObject);
745 yoffy 1.51 procedure BrowserTabFlatStyleActionExecute(Sender: TObject);
746 hi_ 1.1 procedure PreviewTimerTimer(Sender: TObject);
747     procedure MessageHideButtonClick(Sender: TObject);
748     procedure MonazillaWebPageActionExecute(Sender: TObject);
749     procedure GikoHelpActionExecute(Sender: TObject);
750     procedure ToolButton18Click(Sender: TObject);
751     procedure KotehanActionExecute(Sender: TObject);
752 yoffy 1.51 procedure LinkBarVisibleActionExecute(Sender: TObject);
753     procedure BBS2chWebPageActionExecute(Sender: TObject);
754     procedure GikoFolderOpenActionExecute(Sender: TObject);
755 yoffy 1.2 procedure MainCoolBarBandInfo(Sender: TObject;
756     var BandInfo: PReBarBandInfoA);
757     procedure MainCoolBarChevronClick(Sender: TObject;
758 yoffy 1.51 RebarChevron: PNMRebarChevron);
759     procedure ListCoolBarBandInfo(Sender: TObject;
760     var BandInfo: PReBarBandInfoA);
761     procedure ListCoolBarChevronClick(Sender: TObject;
762     RebarChevron: PNMRebarChevron);
763     procedure BrowserCoolBarBandInfo(Sender: TObject;
764     var BandInfo: PReBarBandInfoA);
765 yoffy 1.2 procedure BrowserCoolBarChevronClick(Sender: TObject;
766 yoffy 1.51 RebarChevron: PNMRebarChevron);
767     procedure ListViewColumnInfo(Sender: TObject; var Column: PLVColumnA);
768     procedure ThreadEditorActionExecute(Sender: TObject);
769 yoffy 1.2 procedure ThreadEditorActionUpdate(Sender: TObject);
770 yoffy 1.51 procedure ToolBarSettingActionExecute(Sender: TObject);
771     procedure NameCopyActionExecute(Sender: TObject);
772     procedure BoardIEActionExecute(Sender: TObject);
773     procedure SelectItemNameCopyActionExecute(Sender: TObject);
774 yoffy 1.2 procedure SelectItemNameCopyActionUpdate(Sender: TObject);
775 yoffy 1.51 procedure BoardIEActionUpdate(Sender: TObject);
776     procedure FormMouseWheel(Sender: TObject; Shift: TShiftState;
777     WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
778     procedure NameCopyActionUpdate(Sender: TObject);
779     procedure SelectComboBoxChange(Sender: TObject);
780     procedure SelectComboBoxKeyDown(Sender: TObject; var Key: Word;
781     Shift: TShiftState);
782     procedure SelectComboBoxExit(Sender: TObject);
783     procedure NG1Click(Sender: TObject);
784     procedure SelectResActionExecute(Sender: TObject);
785     procedure SelectResActionUpdate(Sender: TObject);
786     procedure FormKeyUp(Sender: TObject; var Key: Word;
787     Shift: TShiftState);
788     procedure AllResActionExecute(Sender: TObject);
789     procedure AllResActionUpdate(Sender: TObject);
790     procedure ReloadClick(Sender: TObject);
791     procedure GoBackClick(Sender: TObject);
792     procedure GoFowardClick(Sender: TObject);
793     procedure SelectComboBoxSplitterMouseMove(Sender: TObject;
794     Shift: TShiftState; X, Y: Integer);
795     procedure SelectComboBoxSplitterMouseDown(Sender: TObject;
796     Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
797     procedure SelectComboBoxSplitterMouseUp(Sender: TObject;
798     Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
799     procedure StatusBarResize(Sender: TObject);
800     procedure IndividualAbon1Click(Sender: TObject);
801     procedure IndividualAbon2Click(Sender: TObject);
802     procedure N42Click(Sender: TObject);
803     procedure SelectComboBoxEnter(Sender: TObject);
804     procedure AntiIndividualAbonClick(Sender: TObject);
805     procedure N51Click(Sender: TObject);
806     procedure TreeSelectSearchBoardNameExecute(Sender: TObject);
807 yoffy 1.100 procedure CabinetFavoriteActionExecute(Sender: TObject);
808     procedure FavoriteTreeViewDragDrop(Sender, Source: TObject; X,
809     Y: Integer);
810 yoffy 1.71 procedure FavoriteTreeViewDragOver(Sender, Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean);
811 yoffy 1.100 procedure FavoriteTreeViewEdited(Sender: TObject; Node: TTreeNode;
812     var S: String);
813     procedure FavoriteTreeViewKeyDown(Sender: TObject; var Key: Word;
814     Shift: TShiftState);
815     procedure FavoriteTreePopupMenuPopup(Sender: TObject);
816     procedure FavoriteTreeViewDeleteActionExecute(Sender: TObject);
817     procedure FavoriteTreeViewRenameActionExecute(Sender: TObject);
818     procedure FavoriteTreeViewNewFolderActionExecute(Sender: TObject);
819     procedure ToolButton19Click(Sender: TObject);
820     procedure FavoriteTreeViewBrowseFolderActionExecute(Sender: TObject);
821     procedure FavoriteTreeViewDblClick(Sender: TObject);
822     procedure FavoriteTreeViewLogDeleteActionExecute(Sender: TObject);
823     procedure FavoriteTreeViewReloadActionExecute(Sender: TObject);
824     procedure FavoriteTreeViewURLCopyActionExecute(Sender: TObject);
825     procedure FavoriteTreeViewNameCopyActionExecute(Sender: TObject);
826     procedure FavoriteTreeViewNameURLCopyActionExecute(Sender: TObject);
827     procedure LinkToolBarDragDrop(Sender, Source: TObject; X, Y: Integer);
828     procedure BrowserTabMouseUp(Sender: TObject; Button: TMouseButton;
829     Shift: TShiftState; X, Y: Integer);
830     procedure LinkToolBarDragOver(Sender, Source: TObject; X, Y: Integer;
831     State: TDragState; var Accept: Boolean);
832     procedure OnlyAHundredResExecute(Sender: TObject);
833     procedure FavoriteTreeViewEndDrag(Sender, Target: TObject; X,
834     Y: Integer);
835     procedure ListCoolBarContextPopup(Sender: TObject; MousePos: TPoint;
836     var Handled: Boolean);
837     procedure MainCoolBarContextPopup(Sender: TObject; MousePos: TPoint;
838     var Handled: Boolean);
839     procedure BrowserCoolBarContextPopup(Sender: TObject; MousePos: TPoint;
840     var Handled: Boolean);
841 yoffy 1.107 procedure ExportFavoriteFileAccept(Sender: TObject);
842     procedure ExportFavoriteFileBeforeExecute(Sender: TObject);
843 yoffy 1.139 procedure CabinetBBSActionExecute(Sender: TObject);
844 yoffy 1.142 procedure FavoriteTreeViewBrowseThreadActionExecute(Sender: TObject);
845     procedure FavoriteTreeBrowseBoardPopupMenuClick(Sender: TObject);
846 yoffy 1.158 procedure UpBoardActionExecute(Sender: TObject);
847     procedure UpBoardActionUpdate(Sender: TObject);
848 h677 1.174 procedure BrowserTabContextPopup(Sender: TObject; MousePos: TPoint;
849     var Handled: Boolean);
850 h677 1.183 procedure KoreCopyExecute(Sender: TObject);
851 h677 1.187 procedure BrowserTabPopupMenuPopup(Sender: TObject);
852 yoffy 1.216 procedure MenuToolBarResize(Sender: TObject);
853     procedure StdToolBarResize(Sender: TObject);
854     procedure LinkToolBarResize(Sender: TObject);
855     procedure ListNameToolBarResize(Sender: TObject);
856     procedure ListToolBarResize(Sender: TObject);
857     procedure BrowserNameToolBarResize(Sender: TObject);
858     procedure BrowserToolBarResize(Sender: TObject);
859     procedure BrowserTabResize(Sender: TObject);
860 h677 1.318 procedure TreeViewClick(Sender: TObject);
861 yoffy 1.236 procedure TreeViewKeyDown(Sender: TObject; var Key: Word;
862     Shift: TShiftState);
863 yoffy 1.246 procedure FavoriteTreeViewMouseDown(Sender: TObject;
864 yoffy 1.248 Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
865 yoffy 1.250 procedure MessagePanelResize(Sender: TObject);
866 yoffy 1.276 procedure OnResized;
867 yoffy 1.252 procedure TreeSelectNameCopyExecute(Sender: TObject);
868 yoffy 1.260 procedure FavoriteTreeViewMouseUp(Sender: TObject;
869     Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
870 h677 1.299 procedure OnlyAHundredResUpdate(Sender: TObject);
871 h677 1.315 procedure SetFocusForBrowserActionExecute(Sender: TObject);
872     procedure SetFocusForBrowserActionUpdate(Sender: TObject);
873     procedure SetFocusForThreadListActionExecute(Sender: TObject);
874     procedure SetFocusForCabinetActionExecute(Sender: TObject);
875 h677 1.319 procedure BrowserMaxAndFocusActionExecute(Sender: TObject);
876     procedure BrowserMaxAndFocusActionUpdate(Sender: TObject);
877     procedure ThreadlistMaxAndFocusActionExecute(Sender: TObject);
878 h677 1.320 procedure ListViewExit(Sender: TObject);
879 h677 1.321 procedure SetFocusForCabinetActionUpdate(Sender: TObject);
880 yoffy 1.327 procedure ListViewSelectItem(Sender: TObject; Item: TListItem;
881     Selected: Boolean);
882 yoffy 1.329 procedure SelectTimerTimer(Sender: TObject);
883 h677 1.340 procedure SelectItemSaveForHTMLExecute(Sender: TObject);
884 h677 1.341 procedure KidokuActionExecute(Sender: TObject);
885     procedure MidokuActionExecute(Sender: TObject);
886 h677 1.343 procedure SelectItemSaveForDatExecute(Sender: TObject);
887 h677 1.345 procedure BrowserPanelCanResize(Sender: TObject; var NewWidth,
888     NewHeight: Integer; var Resize: Boolean);
889     procedure LogFolderOpenActionExecute(Sender: TObject);
890     procedure LogFolderOpenActionUpdate(Sender: TObject);
891 genyakun 1.348 procedure LocalRuleViewClick(Sender: TObject);
892 hi_ 1.1 private
893     { Private 鐃緒申鐃緒申 }
894 h677 1.182 //RoundList : TRoundList;
895 hi_ 1.1 FSortIndex: Integer;
896     FSortOrder: Boolean;
897    
898     FEnabledCloseButton: Boolean;
899     // ThreadCreate: TThreadCreate;
900    
901     FClickNode: TTreeNode;
902     FHttpState: Boolean;
903     FHint: TResPopup;
904     FPreviewBrowser: TPreviewBrowser;
905     FPreviewURL: string;
906    
907     FBrowserSizeHeight: Integer;
908     FBrowserSizeWidth: Integer;
909    
910     // FFavorite: TFavorite;
911     FTabHintIndex: Integer;
912     FListStyle: TViewStyle; //鐃緒申鐃?鐃?鐃?鐃?鐃?鐃緒申鐃?鐃?鐃?鐃緒申
913     FItemNoVisible: Boolean; //鐃緒申鐃?鐃?鐃緒申鐃緒申鐃?鐃緒申鐃?鐃緒申鐃?
914     FViewType: TGikoViewType; //鐃緒申鐃?鐃?鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃?鐃?鐃?
915 yoffy 1.123 FActiveList: TObject;
916 h677 1.299 FActiveContent: TBrowserRecord; //
917 yoffy 1.133 FActiveBBS : TBBS;
918 hi_ 1.1 FHistoryList: TList; //鐃?鐃?鐃?鐃緒申鐃緒申鐃?鐃?
919     FTreeType: TGikoTreeType;
920     FWorkCount: Integer;
921     FNameCookie: string;
922     FMailCookie: string;
923     // FLastRoundTime: TDateTime;
924 h677 1.299 BrowserNullTab: TBrowserRecord;
925 hi_ 1.1 // DoubleClickOccurred: array [TMouseButton] of Boolean;
926     FDownloadTitle: string; //鐃?鐃?鐃緒申鐃緒申鐃?鐃?鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申
927     FDownloadMax: Integer; //鐃?鐃?鐃緒申鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?
928     FEvent: THTMLDocumentEventSink;//鐃?鐃緒申鐃?鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申鐃?
929 h677 1.14
930 h677 1.192 // Fkeynum : Integer; //鐃?鐃?鐃?鐃?鐃?鐃緒申鐃?鐃?鐃?鐃?鐃?鐃?鐃?鐃?
931 yoffy 1.29
932 yoffy 1.51 IsDraggingSelectComboBox : Boolean;
933     DraggingSelectComboBoxPosition : TPoint;
934 yoffy 1.29
935 yoffy 1.54 FSearchDialog: TSearchDialog;
936 yoffy 1.49
937 yoffy 1.100 FDropSpaceNode: TTreeNode;
938 yoffy 1.74
939 yoffy 1.107 FDragTime : Cardinal; //鐃緒申鐃緒申鐃?鐃緒申D&D鐃?
940     FDragButton : TToolButton; //鐃緒申鐃緒申鐃?鐃緒申D&D鐃?鐃緒申Drag鐃緒申鐃緒申鐃緒申Button鐃緒申鐃緒申
941     FDragWFirst : Boolean; //WebTab鐃緒申D&D鐃?
942 h677 1.84
943 yoffy 1.143 FListViewBackGroundColor : TColor; //ListView鐃緒申BackGroundColor
944     FUseOddResOddColor : Boolean; //鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃?鐃緒申
945     FOddColor : TColor; //鐃緒申鐃緒申鐃?
946 yoffy 1.152
947 yoffy 1.280 FSelectResWord : string; // 鐃緒申鐃?鐃?鐃緒申鐃緒申鐃?鐃?
948     FIsIgnoreResize : Boolean; // 鐃緒申鐃?鐃?鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
949     FIsMinimize : TMinimizeType; // 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
950     FOldFormWidth : Integer; // 鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申
951 yoffy 1.258 FToolBarSettingSender : TToolBarSettingSenderType; // 鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃?鐃?鐃緒申鐃?鐃?
952 yoffy 1.280 FMouseDownPos : TPoint; // 鐃?鐃緒申鐃?鐃?鐃?鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?
953 h677 1.303 FBrowsers: TList;
954 yoffy 1.123 procedure SetBoardTreeNode( inBBS : TBBS );
955     function SetCategoryListItem(ABBS2ch: TBBS): Integer;
956 hi_ 1.1 function SetBoardListItem(Category: TCategory): Integer;
957     function SetThreadListItem(Board: TBoard): Integer;
958     // function GetRoundName(index: integer): string;
959    
960     procedure DownloadEnd(Sender: TObject; Item: TDownloadItem);
961     procedure DownloadMsg(Sender: TObject; Item: TDownloadItem; Msg: string; Icon: TGikoMessageIcon);
962 q9_ 1.233 procedure WorkBegin(Sender: TObject; AWorkMode: TWorkMode; const AWorkCountMax: Integer; Number: Integer; const AWorkTitle: string);
963 hi_ 1.1 procedure WorkEnd(Sender: TObject; AWorkMode: TWorkMode; Number: Integer);
964     procedure Work(Sender: TObject; AWorkMode: TWorkMode; const AWorkCount: Integer; Number: Integer);
965    
966     procedure SetActiveList(Obj: TObject);
967     procedure ListClick;
968 h677 1.295 procedure ListDoubleClick(Shift: TShiftState);
969 h677 1.299 procedure BrowserMovement(const AName: string); overload;
970     procedure BrowserMovement(const AName: string; BrowserRecord: TBrowserRecord); overload;
971 hi_ 1.1 procedure SelectListItem(List: TList);
972     // procedure SetProgressValue(Number: Integer; Value: Integer; Max: Integer = -1);
973 h677 1.299 procedure DeleteTab(ThreadItem: TThreadItem); overload;
974     procedure DeleteTab(BrowserRecord: TBrowserRecord); overload;
975 hi_ 1.1 function Hook(var Message: TMessage): Boolean;
976     procedure AddRoundNameMenu(MenuItem: TMenuItem);
977 h677 1.188 procedure SetSelectItemRound(RoundFlag: Boolean; RoundName: string); overload;
978 yoffy 1.236 procedure SetSelectItemRound(RoundFlag: Boolean; RoundName: string; ParentName: string); overload;
979 hi_ 1.1 procedure SetSelectRoundName(Sender: TObject);
980     function GetCoolBand(CoolBar: TCoolBar; Control: TWinControl): TCoolBand;
981    
982     procedure SetMenuFont;
983     // procedure CreateFavMenu(Folder: TFavoriteFolder);
984     procedure CreateFavMenu(Node: TTreeNode; MenuItem: TMenuItem);
985 yoffy 1.62 procedure FavoriteClick(Sender: TObject; ActiveTab: Boolean); overload;
986     procedure FavoriteClick(Sender: TObject); overload;
987 yoffy 1.100 procedure FavoriteDragOver(Sender, Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean);
988 yoffy 1.2 procedure SelectTreeNode(Item: TObject; CallEvent: Boolean);
989 hi_ 1.1 function OnDocumentContextMenu(Sender: TObject): WordBool;
990     // function GetThreadText(sBoard: string; sThread: string; StNum, ToNum: Integer; Title, First: Boolean): string;
991 yoffy 1.123 procedure SetResPopupText(ThreadItem : TThreadItem; StNum, ToNum: Integer; Title, First: Boolean);
992 hi_ 1.1 procedure ShowTextPopup;
993     //procedure ShowTextPopup(HintData: THintData);
994 yoffy 1.2 // procedure SetStdToolBar;
995     // function GetAction(ActionName: string): TContainedAction;
996 hi_ 1.1 procedure SetLinkBar;
997     function GetWidthAllToolButton(ToolBar: TToolBar): Integer;
998 yoffy 1.2 procedure MenuBarChevronMenu;
999     procedure LinkBarChevronMenu;
1000     procedure ToolBarChevronMenu(ToolBar: TToolBar);
1001 yoffy 1.51 procedure ModifySelectList;
1002 yoffy 1.100 procedure FavoriteBrowseFolder( node: TTreeNode );
1003     procedure LinkToolButtonDragDrop(Sender, Source: TObject; X, Y: Integer);
1004     procedure LinkToolButtonOnMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
1005     procedure LinkToolButtonOnMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
1006     procedure LinkToolButtonOnMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
1007 yoffy 1.85 procedure LinkToolButtonStartDrag(Sender: TObject; var DragObject: TDragObject);
1008 yoffy 1.72 function TreeNodeDataFind(Node: TTreeNode; FindPointer: Pointer): TTreeNode;
1009 yoffy 1.100 procedure FavoriteMoveTo( SenderNode, SourceNode: TTreeNode );
1010     procedure FavoriteAddTo( SenderNode: TTreeNode; Source: TObject );
1011 yoffy 1.72 procedure FavoriteDragDrop( SenderNode: TTreeNode; Source: TObject );
1012 yoffy 1.236 //
1013 yoffy 1.143 procedure SetListViewBackGroundColor(value: TColor);
1014 yoffy 1.123 procedure BBSMenuItemOnClick( Sender : TObject );
1015 yoffy 1.236 //
1016     procedure KonoresCopy(Number: Integer; ReplaceTag : Boolean);
1017 yoffy 1.216 // CoolBar 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1018     procedure SaveCoolBarSettings;
1019     // CoolBar 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1020     procedure LoadCoolBarSettings;
1021 yoffy 1.276 // 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1022     procedure OnMinimize;
1023 yoffy 1.248 // 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1024     procedure OnMinimized;
1025 yoffy 1.216 // CoolBar 鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申
1026     procedure CoolBarResized(Sender: TObject; CoolBar: TCoolBar);
1027 yoffy 1.236 // TreeView 鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申
1028     procedure TreeClick( Node : TTreeNode );
1029     // TreeView 鐃緒申鐃?鐃?鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申
1030     procedure TreeDoubleClick( Node : TTreeNode );
1031     // 鐃?鐃?鐃?鐃?鐃緒申鐃緒申鐃?鐃?鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1032     procedure HandleAppMessage(var Msg: TMsg; var Handled: Boolean);
1033     // 鐃?鐃緒申鐃?鐃?鐃緒申鐃?鐃?鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃?
1034     // 鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申 True 鐃緒申鐃緒申鐃緒申
1035 yoffy 1.275 function BrowserKeydown(var Msg: TMsg; Key: Word; State:TShiftState) : Boolean;
1036 yoffy 1.289 // 鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃?鐃? BBS 鐃緒申鐃?鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃?鐃?鐃?
1037     procedure SetBBSMenu;
1038 h677 1.315 function WebBrowserClick(Sender: TObject): WordBool;
1039 h677 1.343 procedure SkinorCSSFilesCopy(path: string);
1040 hi_ 1.1 protected
1041     procedure CreateParams(var Params: TCreateParams); override;
1042 yoffy 1.2 procedure WndProc(var Message: TMessage); override;
1043 hi_ 1.1 procedure WMSetCursor(var Message: TWMSetCursor); message WM_SETCURSOR;
1044     procedure WMSettingChange(var Message: TWMWinIniChange); message WM_SETTINGCHANGE;
1045     procedure WMCopyData(var Message: TWMCopyData); message WM_COPYDATA;
1046 yoffy 1.216
1047 hi_ 1.1 public
1048     { Public 鐃緒申鐃緒申 }
1049     // FDownload: TDownload;
1050     FControlThread: TThreadControl;
1051 yoffy 1.48 procedure MoveToURL(URL: string);
1052     procedure InsertBrowserTab(ThreadItem: TThreadItem; ActiveTab: Boolean = True);
1053 hi_ 1.1 procedure ReloadBBS;
1054     function GetHttpState: Boolean;
1055     procedure SetEnabledCloseButton(Enabled: Boolean);
1056     function GetTreeNode(Data: TObject): TTreeNode;
1057     procedure AppFormDeactivate(Sender: TObject);
1058     // procedure CabinetPanelVisible(PanelVisible: Boolean);
1059     procedure ListViewAllSelect;
1060    
1061     property ListStyle: TViewStyle read FListStyle write FListStyle;
1062     property ItemNoVisible: Boolean read FItemNoVisible write FItemNoVisible;
1063     property ViewType: TGikoViewType read FViewType write FViewType;
1064    
1065     property NameCookie: string read FNameCookie write FNameCookie;
1066     property MailCookie: string read FMailCookie write FMailCookie;
1067    
1068 h677 1.299 procedure SetContent(inThread: TBrowserRecord);
1069 hi_ 1.1 function GetActiveContent: TThreadItem;
1070     function GetActiveList: TObject;
1071    
1072     property ActiveList: TObject read GetActiveList write SetActiveList;
1073     // property LastRoundTime: TDateTime read FLastRoundTime write FLastRoundTime;
1074    
1075     procedure SetListViewType(AViewType: TGikoViewType); overload;
1076     procedure SetListViewType(AViewType: TGikoViewType; SelectText: string; KubetsuChk: Boolean); overload;
1077 q9_ 1.294 procedure DownloadContent(ThreadItem: TThreadItem; ForceDownload: Boolean = False);
1078     procedure DownloadList(Board: TBoard; ForceDownload: Boolean = False);
1079 hi_ 1.1 procedure PlaySound(SoundEventName: string);
1080    
1081 yoffy 1.136 function AddHistory( FavItem: TFavoriteThreadItem ): Boolean;
1082     procedure DeleteHistory( threadItem: TThreadItem );
1083 hi_ 1.1 procedure ClearHistory;
1084 yoffy 1.135 procedure SaveHistory;
1085     procedure LoadHistory;
1086 yoffy 1.123 procedure ShowBBSTree( inBBS : TBBS );
1087 yoffy 1.248 procedure ShowBBSTreeOld( inBBS : TBBS );
1088 hi_ 1.1 procedure ShowHistoryTree;
1089     procedure SetHistoryTreeNode;
1090     // procedure SelectTreeNode(Item: TObject);
1091     procedure AddMessageList(ACaption: string; AObject: TObject; Icon: TGikoMessageIcon);
1092     procedure SetBrowserTabState;
1093     // property Favorite: TFavorite read FFavorite write FFavorite;
1094 yoffy 1.2 procedure SetToolBarPopup;
1095 yoffy 1.100 procedure ShowFavoriteAddDialog( Item : TObject );
1096 h677 1.189 procedure FavoritesURLReplace(oldURLs: TStringList; newURLs: TStringList);
1097 h677 1.226 procedure RoundListURLReplace(oldURLs: TStringList; newURLs: TStringList);
1098 yoffy 1.143 property ListViewBackGroundColor: TColor read FListViewBackGroundColor write SetListViewBackGroundColor;
1099     property UseOddResOddColor : Boolean read FUseOddResOddColor write FUseOddResOddColor;
1100     property OddColor : TColor read FOddColor write FOddColor;
1101 h677 1.109
1102 yoffy 1.209 function FindToolBarButton( bar : TToolBar; action : TAction ) : TToolButton;
1103 yoffy 1.218 procedure OnPlugInMenuItem( Sender : TObject );
1104 yoffy 1.209
1105 hi_ 1.1 published
1106     property EnabledCloseButton: Boolean read FEnabledCloseButton write SetEnabledCloseButton;
1107     end;
1108    
1109     TFavoriteMenuItem = class(TMenuItem)
1110     private
1111     FData : Pointer;
1112     public
1113     property Data: Pointer read FData write FData;
1114     end;
1115    
1116 yoffy 1.123 TBBSMenuItem = class(TMenuItem)
1117     private
1118     FData : Pointer;
1119     public
1120     property Data: Pointer read FData write FData;
1121     end;
1122    
1123 hi_ 1.1 TLinkToolButton = class(TToolButton)
1124     private
1125     FData : Pointer;
1126     public
1127     property Data: Pointer read FData write FData;
1128     end;
1129    
1130 h677 1.299 TBrowserRecord = class( TObject )
1131     private
1132     FBrowser : TWebBrowser;
1133     FEvent: THTMLDocumentEventSink;//鐃?鐃緒申鐃?鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申鐃?
1134     FThread : TThreadItem;
1135     FLastSize : Integer;
1136     FRepaint : Boolean;
1137     FOnlyHundred: Boolean;
1138     public
1139     destructor Destroy; override;
1140     property Browser : TWebBrowser read FBrowser write FBrowser;
1141     property Thread : TThreadItem read FThread write FThread;
1142     property LastSize : Integer read FLastSize write FLastSize;
1143     property Repaint : Boolean read FRepaint write FRepaint;
1144     property OnlyHundred : Boolean read FOnlyHundred write FOnlyHundred;
1145     end;
1146    
1147 hi_ 1.1 var
1148     GikoForm: TGikoForm;
1149    
1150     implementation
1151    
1152     uses
1153     About, Option, Round, Splash, Sort, ListSelect,
1154 h677 1.183 NewBoard, MojuUtils,Clipbrd;
1155 hi_ 1.1
1156     const
1157     CAPTION_NAME: string = '鐃?鐃?鐃?鐃?';
1158     BLANK_HTML: string = 'about:blank';
1159 yoffy 1.51 SELECTCOMBOBOX_NAME: string = ''; // '鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申';
1160     SELECTCOMBOBOX_COLOR: TColor = clWindow;
1161 yoffy 1.120 //D&D鐃緒申鐃?
1162     DandD_THRESHOLD = 5; //D&D鐃緒申鐃緒申鐃?鐃?pixcel)
1163 yoffy 1.2 //鐃?鐃緒申鐃?鐃?鐃緒申鐃?鐃?鐃?鐃?鐃?鐃緒申
1164     ITEM_ICON_2CH1 = 0; //2ch鐃?鐃?鐃?鐃緒申
1165     ITEM_ICON_2CH2 = 1; //2ch鐃?鐃?鐃?鐃緒申
1166     ITEM_ICON_CATEGORY1 = 2; //鐃?鐃?鐃?鐃緒申鐃?鐃?鐃?鐃緒申
1167     ITEM_ICON_CATEGORY2 = 3; //鐃?鐃?鐃?鐃緒申鐃?鐃?鐃?鐃緒申
1168 yoffy 1.120 ITEM_ICON_BOARD_NOSUBJECT = 3; //鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申
1169 yoffy 1.2 ITEM_ICON_BOARD1 = 4; //鐃緒申鐃?鐃?鐃?鐃緒申
1170     ITEM_ICON_BOARD2 = 5; //鐃緒申鐃?鐃?鐃?鐃緒申
1171     ITEM_ICON_THREADLOG1 = 6; //鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃?鐃緒申鐃緒申鐃?
1172     ITEM_ICON_THREADLOG2 = 7; //鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃?鐃緒申鐃緒申鐃?
1173     ITEM_ICON_THREAD1 = 8; //鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃?鐃緒申鐃緒申鐃?
1174     ITEM_ICON_THREAD2 = 9; //鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃?鐃緒申鐃緒申鐃?
1175     ITEM_ICON_THREADNEW1 = 10; //鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃?
1176     ITEM_ICON_THREADNEW2 = 11; //鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃?
1177     ITEM_ICON_SORT1 = 12; //鐃?鐃?鐃?鐃?鐃?鐃?鐃緒申
1178     ITEM_ICON_SORT2 = 13; //鐃?鐃?鐃?鐃?鐃?鐃?鐃緒申
1179 yoffy 1.120 ITEM_ICON_BOARD_LOG = 17; //鐃?鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申
1180     ITEM_ICON_BOARD_NEW = 18; //鐃?鐃緒申鐃?鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申
1181 yoffy 1.2
1182     //鐃?鐃?鐃緒申鐃?鐃?鐃?鐃?鐃?鐃緒申
1183 yoffy 1.48 TOOL_ICON_HEIGHT_MAX = 16; //鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申
1184     TOOL_ICON_HEIGHT_MIN = 17; //鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申
1185     TOOL_ICON_HEIGHT_NORMAL = 18; //鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃緒申
1186     TOOL_ICON_WIDTH_MAX = 19; //鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申
1187     TOOL_ICON_WIDTH_MIN = 20; //鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申
1188     TOOL_ICON_WIDTH_NORMAL = 21; //鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃緒申
1189    
1190 yoffy 1.51 TOOL_ICON_FAV_FOLDER = 30; //鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃?鐃?鐃緒申鐃?鐃?鐃?鐃?鐃緒申
1191 yoffy 1.100 TOOL_ICON_FAV_BOARD = 31; //鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申
1192 yoffy 1.51 TOOL_ICON_FAV_THREAD = 32; //鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃緒申
1193 hi_ 1.1
1194     HTML_FILE_NAME = 'temp_preview.html';
1195    
1196 yoffy 1.253 WM_XBUTTONDOWN = $020B;
1197     WM_XBUTTONUP = $020C;
1198     WM_XBUTTONDBLCLK = $020D;
1199     XBUTTON1 = $0001;
1200     XBUTTON2 = $0002;
1201 yoffy 1.278 USER_TREECLICK = WM_USER + 2000;
1202     USER_RESIZED = WM_USER + 2001;
1203     USER_MINIMIZED = WM_USER + 2002;
1204     USER_SETLINKBAR = WM_USER + 2003;
1205 h677 1.340 SELECTTIME_INTERBAL = 110;
1206    
1207     BROWSER_COUNT = 5; //鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申
1208 hi_ 1.1 {$R *.DFM}
1209    
1210     procedure TGikoForm.CreateParams(var Params: TCreateParams);
1211     begin
1212     inherited;
1213     if FormStyle in [fsNormal, fsStayOnTop] then begin
1214     if BorderStyle in [bsSingle, bsSizeable] then begin
1215     Params.ExStyle := Params.ExStyle or WS_EX_APPWINDOW;
1216     Params.WndParent := 0;
1217     end;
1218     end;
1219     end;
1220    
1221     procedure TGikoForm.FormCreate(Sender: TObject);
1222     const
1223     TVS_NOTOOLTIPS = $0080;
1224     var
1225     FileName: string;
1226     Style: DWORD;
1227     msg: string;
1228     i: Integer;
1229     wp: TWindowPlacement;
1230 hi_ 1.32 s: string;
1231 h677 1.303 newbrowser: TWebBrowser;
1232 hi_ 1.1 begin
1233     {$IFDEF DEBUG}
1234     AllocConsole;
1235     Writeln('============================================================');
1236     Writeln(' 鐃?鐃?鐃?鐃?鐃?鐃?鐃?鐃? 鐃?鐃緒申鐃?鐃?鐃緒申');
1237     Writeln('');
1238     Writeln(' 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?');
1239     Writeln(' 鐃?鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃?鐃?鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申');
1240     Writeln('============================================================');
1241     {$ENDIF}
1242     Application.OnDeactivate := AppFormDeactivate;
1243     Self.OnDeactivate := AppFormDeactivate;
1244     Application.HookMainWindow(Hook);
1245 h677 1.316 Application.OnMessage := HandleAppMessage; //鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?by鐃?鐃緒申鐃緒申鐃緒申
1246 h677 1.345 Self.DoubleBuffered := true;
1247 hi_ 1.1 FTreeType := gttNone;
1248    
1249 yoffy 1.51 FSearchDialog := nil;
1250 h677 1.299 BrowserNullTab := TBrowserRecord.Create;
1251     BrowserNullTab.Browser := Browser;
1252 h677 1.316 BrowserNullTab.Browser.Navigate(BLANK_HTML);
1253 h677 1.303 FBrowsers := TList.Create;
1254 h677 1.340 for i := 0 to BROWSER_COUNT -1 do begin
1255 h677 1.345 FBrowsers.Add(TWebBrowser.Create(nil));
1256     newBrowser := FBrowsers[FBrowsers.Count - 1];
1257 h677 1.303 TOleControl(newBrowser).Parent := BrowserPanel;
1258 h677 1.345 newBrowser.Align := alNone;
1259 h677 1.346 newBrowser.Left := 0;
1260     newBrowser.Top := 0;
1261     //newBrowser.DoubleBuffered := true;
1262 h677 1.303 newBrowser.OnDocumentComplete := BrowserDocumentComplete;
1263     newBrowser.OnBeforeNavigate2 := BrowserBeforeNavigate2;
1264     newBrowser.OnEnter := BrowserEnter;
1265     newBrowser.OnNewWindow2 := BrowserNewWindow2;
1266     newBrowser.OnStatusTextChange := BrowserStatusTextChange;
1267 h677 1.333 //newBrowser.OnTitleChange := BrowserTitleChange;
1268 h677 1.306 newBrowser.Navigate(BLANK_HTML);
1269 h677 1.316 ShowWindow(newBrowser.Handle, SW_HIDE);
1270 h677 1.345
1271 h677 1.303 end;
1272 h677 1.316 BrowserNullTab.Browser.BringToFront;
1273     ShowWindow(BrowserNullTab.Browser.Handle, SW_SHOW);
1274 h677 1.303
1275 yoffy 1.216 // 鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1276 yoffy 1.248 FIsIgnoreResize := True;
1277 yoffy 1.216
1278 hi_ 1.1 //鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申
1279     Screen.Cursors[5] := LoadCursor(HInstance, 'GIKOHAND');
1280    
1281    
1282     //鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1283     AddressHistoryDM.ReadHistory(AddressComboBox.Items, GikoSys.Setting.AddressHistoryCount);
1284    
1285 yoffy 1.135 // 鐃?鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃?鐃?(ReadBoardFile, LoadHistory 鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申)
1286 yoffy 1.107 InitializeBoardPlugIns;
1287 yoffy 1.105
1288 hi_ 1.1 EnabledCloseButton := True;
1289 h677 1.176
1290    
1291     //鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申
1292     RoundList := TRoundList.Create;
1293     RoundList.LoadRoundBoardFile;
1294    
1295 yoffy 1.210 // 鐃?鐃?鐃?鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申(ReadFavorite 鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申)
1296     GikoSys.ListBoardFile;
1297 h677 1.176
1298     RoundList.LoadRoundThreadFile;
1299    
1300 yoffy 1.236 if RoundList.OldFileRead or ( RoundList.Count[grtItem] > 0 ) then
1301     GikoSys.ListBoardFile;
1302 h677 1.176
1303 yoffy 1.123 // 鐃緒申鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申
1304 yoffy 1.289 SetBBSMenu;
1305 h677 1.176
1306 yoffy 1.135 // 鐃?鐃?鐃?鐃緒申鐃緒申鐃?鐃?(LoadHistory 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申)
1307     FHistoryList := TList.Create;
1308    
1309     // 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1310     LoadHistory;
1311    
1312 yoffy 1.123 //鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1313     // FFavorite := TFavorite.Create(FavoriteTreeView);
1314     FavoriteDM.SetFavTreeView(FavoriteTreeView);
1315     FavoriteDM.ReadFavorite;
1316 hi_ 1.1
1317     //鐃緒申鐃?鐃?鐃?鐃?鐃?鐃緒申
1318     ListView.ViewStyle := GikoSys.Setting.ListStyle;
1319    
1320     //鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃?
1321     // MainCoolBar.Top := 0;
1322     // MainCoolBar.Left := 0;
1323    
1324     //鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃?
1325     AnimePanel.Top := 0;
1326     AnimePanel.Left := 0;
1327    
1328     //鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1329    
1330     //鐃?鐃緒申鐃?鐃?鐃?鐃?
1331     CabinetPanel.Width := GikoSys.Setting.CabinetWidth;
1332    
1333     //鐃緒申鐃?鐃?鐃?鐃?鐃?鐃?
1334     MsgBarVisibleAction.Checked := GikoSys.Setting.MessageBarVisible;
1335     MsgBarVisibleActionExecute(nil);
1336     MessagePanel.Height := GikoSys.Setting.MessegeBarHeight;
1337    
1338     //鐃?鐃?鐃?鐃?鐃?鐃?鐃?
1339     StatusBarVisibleAction.Checked := GikoSys.Setting.StatusBarVisible;
1340     StatusBarVisibleActionExecute(nil);
1341    
1342     //鐃?鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申
1343     TreeView.Items.BeginUpdate;
1344 yoffy 1.100 FavoriteTreeView.Items.BeginUpdate;
1345 hi_ 1.1 ListView.Items.BeginUpdate;
1346     try
1347     TreeView.Font.Name := GikoSys.Setting.CabinetFontName;
1348     TreeView.Font.Size := GikoSys.Setting.CabinetFontSize;
1349     TreeView.Font.Color := GikoSys.Setting.CabinetFontColor;
1350     TreeView.Color := GikoSys.Setting.CabinetBackColor;
1351    
1352 yoffy 1.67 FavoriteTreeView.Font.Name := GikoSys.Setting.CabinetFontName;
1353     FavoriteTreeView.Font.Size := GikoSys.Setting.CabinetFontSize;
1354     FavoriteTreeView.Font.Color := GikoSys.Setting.CabinetFontColor;
1355     FavoriteTreeView.Color := GikoSys.Setting.CabinetBackColor;
1356    
1357 hi_ 1.1 ListView.Font.Name := GikoSys.Setting.ListFontName;
1358     ListView.Font.Size := GikoSys.Setting.ListFontSize;
1359     ListView.Font.Color := GikoSys.Setting.ListFontColor;
1360 h677 1.109 //ListView.Color := GikoSys.Setting.ListBackColor;
1361 yoffy 1.236 ListViewBackGroundColor := GikoSys.Setting.ListBackColor;
1362     FUseOddResOddColor := GikoSys.Setting.UseOddColorOddResNum;
1363     FOddColor := GikoSys.Setting.OddColor;
1364 h677 1.109
1365 hi_ 1.1 finally
1366     TreeView.Items.EndUpdate;
1367 yoffy 1.100 FavoriteTreeView.Items.EndUpdate;
1368 hi_ 1.1 ListView.Items.EndUpdate;
1369     end;
1370     //ViewNoButton.Down := GikoSys.Setting.ListViewNo;
1371     ListNumberVisibleAction.Checked := GikoSys.Setting.ListViewNo;
1372    
1373     //鐃?鐃緒申鐃?鐃?鐃?鐃?鐃?鐃?鐃緒申鐃?
1374     BrowserTab.Font.Name := GikoSys.Setting.BrowserTabFontName;
1375     BrowserTab.Font.Size := GikoSys.Setting.BrowserTabFontSize;
1376 yoffy 1.133 FDragWFirst := false;
1377 h677 1.299 SetContent(BrowserNullTab); //鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃?鐃緒申
1378 hi_ 1.1 // TreeView.TopItem.Expanded := True; //鐃?鐃緒申鐃?鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申
1379     // TreeView.Selected := TreeView.Items[0]; //鐃?鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申
1380 h677 1.299
1381 hi_ 1.1
1382     //鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申
1383     wp.length := sizeof(wp);
1384     wp.rcNormalPosition.Top := GikoSys.Setting.WindowTop;
1385     wp.rcNormalPosition.Left := GikoSys.Setting.WindowLeft;
1386     wp.rcNormalPosition.Bottom := GikoSys.Setting.WindowTop + GikoSys.Setting.WindowHeight;
1387     wp.rcNormalPosition.Right := GikoSys.Setting.WindowLeft + GikoSys.Setting.WindowWidth;
1388     wp.showCmd := SW_HIDE;
1389     SetWindowPlacement(Handle, @wp);
1390    
1391     // SetBounds(GikoSys.Setting.WindowLeft, GikoSys.Setting.WindowTop,
1392     // GikoSys.Setting.WindowWidth, GikoSys.Setting.WindowHeight);
1393     if GikoSys.Setting.WindowMax then
1394 yoffy 1.248 WindowState := wsMaximized;
1395 hi_ 1.1
1396     //鐃?鐃?鐃?鐃?鐃緒申
1397     try
1398     FileName := GikoSys.GetAppDir + 'gikoNavi.avi';
1399     if FileExists(FileName) then
1400     Animate.FileName := FileName;
1401     except
1402     end;
1403    
1404     //鐃?鐃?鐃?鐃?
1405     FNameCookie := '';
1406     FMailCookie := '';
1407    
1408     //鐃?鐃緒申鐃?鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1409     AllItemAction.Checked := True;
1410 yoffy 1.126 AllResAction.Checked := True;
1411 hi_ 1.1
1412     //TreeView鐃緒申鐃緒申鐃緒申鐃?鐃緒申ToolTip鐃緒申鐃緒申鐃?鐃緒申
1413     Style := GetWindowLong(TreeView.Handle, GWL_STYLE);
1414     Style := Style or TVS_NOTOOLTIPS;
1415     SetWindowLong(TreeView.Handle, GWL_STYLE, Style);
1416    
1417     // 鐃?鐃緒申鐃?鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1418     TreeView.Align := alClient;
1419 yoffy 1.57 FavoriteTreeView.Align := alClient;
1420 hi_ 1.1 FavoriteTreeView.Visible := False;
1421    
1422     //鐃?鐃緒申鐃?鐃?鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申
1423     // FBrowserSizeFlag := False;
1424     // FBrowserSizeHeight := ViewPanel.Height;
1425    
1426     FBrowserSizeHeight := GikoSys.Setting.ListHeight;
1427     FBrowserSizeWidth := GikoSys.Setting.ListWidth;
1428    
1429     ArrangeAction.Checked := not (GikoSys.Setting.ListOrientation = gloVertical);
1430     ArrangeAction.Execute;
1431    
1432     if GikoSys.Setting.ListOrientation = gloHorizontal then begin
1433     case GikoSys.Setting.ListWidthState of
1434     glsMax: begin
1435     ViewPanel.Width := 1;
1436 yoffy 1.2 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_NORMAL;
1437     BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_MIN;
1438 hi_ 1.1 end;
1439     glsMin: begin
1440     ViewPanel.Width := GikoSys.Setting.ListWidth;
1441 yoffy 1.2 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_MAX;
1442     BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_NORMAL;
1443 hi_ 1.1 end;
1444     else begin
1445     ViewPanel.Width := GikoSys.Setting.ListWidth;
1446 yoffy 1.2 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_MAX;
1447     BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_MIN;
1448 hi_ 1.1 end;
1449     end;
1450     end else begin
1451     case GikoSys.Setting.ListHeightState of
1452     glsMax: begin
1453     ViewPanel.Height := 1;
1454 yoffy 1.2 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_NORMAL;
1455     BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_MIN;
1456 hi_ 1.1 end;
1457     glsMin: begin
1458     ViewPanel.Height := GikoSys.Setting.ListHeight;
1459 yoffy 1.2 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_MAX;
1460     BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_NORMAL;
1461 hi_ 1.1 end;
1462     else begin
1463     ViewPanel.Height := GikoSys.Setting.ListHeight;
1464 yoffy 1.2 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_MAX;
1465     BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_MIN;
1466 hi_ 1.1 end;
1467     end;
1468     end;
1469    
1470     //鐃?鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申
1471     // ProgressBar.Visible := False;
1472     ProgressBar.Parent := StatusBar;
1473     ProgressBar.Top := 2;
1474     ProgressBar.Left := 0;
1475     ProgressBar.Width := StatusBar.Panels[0].Width;
1476     ProgressBar.Height := StatusBar.Height - 2;
1477     ProgressBar.Position := 0;
1478    
1479     //鐃?鐃?鐃緒申鐃緒申鐃?鐃?鐃?鐃?鐃?鐃?鐃?鐃?
1480     FControlThread := TThreadControl.Create(True);
1481     FControlThread.MaxThreadCount := 1;
1482     FControlThread.Resume;
1483     FControlThread.OnDownloadEnd := DownloadEnd;
1484     FControlThread.OnDownloadMsg := DownloadMsg;
1485     FControlThread.OnWork := Work;
1486     FControlThread.OnWorkBegin := WorkBegin;
1487     FControlThread.OnWorkEnd := WorkEnd;
1488     // ProgressPanel.Width := FControlThread.MaxThreadCount * 12;
1489    
1490 yoffy 1.51 // 鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1491     SelectComboBox.Items.Assign( GikoSys.Setting.SelectTextList );
1492 yoffy 1.2
1493 hi_ 1.1 //鐃?鐃緒申鐃?鐃?鐃?鐃?鐃緒申鐃緒申
1494     SetBrowserTabState;
1495    
1496     BrowserBoardNameLabel.Caption := '';
1497     BrowserNameLabel.Caption := '';
1498     FWorkCount := 0;
1499    
1500     FTabHintIndex := -1;
1501    
1502     //鐃緒申鐃緒申鐃?鐃?鐃?
1503     SetLinkBar;
1504    
1505     //鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?
1506     SetMenuFont;
1507    
1508     //鐃?鐃?鐃緒申鐃?鐃?Wrapable
1509     ListToolBar.Wrapable := GikoSys.Setting.ListToolBarWrapable;
1510     BrowserToolBar.Wrapable := GikoSys.Setting.BrowserToolBarWrapable;
1511    
1512 yoffy 1.236 KeepDefaultToolButton(StdToolBar, TmpToolBar);
1513     KeepDefaultToolButton(ListToolBar, TmpToolBar);
1514     KeepDefaultToolButton(BrowserToolBar, TmpToolBar);
1515 h677 1.234
1516 yoffy 1.236 MakeDefaultINIFile();
1517 yoffy 1.2 //鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1518     ReadToolBarSetting(ActionList, StdToolBar);
1519     ReadToolBarSetting(ActionList, ListToolBar);
1520 yoffy 1.51 try
1521     for i := ListToolBar.ControlCount - 1 downto 0 do
1522     begin
1523     if ListToolBar.Controls[ i ].Action = SelectItemAction then
1524     begin
1525     // 鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申
1526     if (i + 1) < ListToolBar.ControlCount then
1527     if ListToolBar.Controls[ i + 1 ] is TToolButton then
1528     if TToolButton( ListToolBar.Controls[ i + 1 ] ).Style = tbsSeparator then
1529     ListToolBar.Controls[ i + 1 ].Visible := False;
1530    
1531     // 鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃?鐃緒申
1532     ListToolBar.Controls[ i ].Visible := False;
1533     // 鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃?鐃緒申
1534 yoffy 1.239 SelectComboBox.Parent := ListToolBar;
1535 yoffy 1.51 SelectComboBox.Left := ListToolBar.Controls[ i ].Left;
1536     SelectComboBox.Width := GikoSys.Setting.SelectComboBoxWidth;
1537     // 鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃?鐃緒申
1538 yoffy 1.239 SelectComboBoxSplitter.Parent := ListToolBar;
1539 yoffy 1.51 SelectComboBoxSplitter.Left := SelectComboBox.Left + SelectComboBox.Width;
1540    
1541     break;
1542     end;
1543     end;
1544     except
1545     end;
1546 yoffy 1.2 ReadToolBarSetting(ActionList, BrowserToolBar);
1547     SetToolBarPopup;
1548 yoffy 1.126 OnlyAHundredRes.Checked := GikoSys.Setting.OnlyAHundredRes;
1549 hi_ 1.1 //鐃?鐃?鐃緒申鐃?鐃?鐃?
1550     AddressComboBox.TabStop := GikoSys.Setting.AddressBarTabStop;
1551    
1552 yoffy 1.2 //鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申FormShow鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1553    
1554     //鐃?鐃?鐃?鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃?鐃?鐃緒申
1555     if not FileExists(GikoSys.GetBoardFileName) then begin
1556     msg := '鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃?鐃緒申鐃?鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申' + #13#10#13#10
1557     + '鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃?鐃?鐃緒申鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申' + #13#10
1558     + '鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃?鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?';
1559     MsgBox(SplashWindow.Handle, msg, '鐃?鐃?鐃?鐃?', MB_OK or MB_ICONINFORMATION);
1560     NewBoardAction.Execute;
1561     end;
1562    
1563     //鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1564     GikoSys.LoadKeySetting(ActionList);
1565    
1566     //鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申
1567     // FLastRoundTime := 0;
1568    
1569     //ResHint
1570     FHint := TResPopup.Create(Self);
1571    
1572 yoffy 1.100 // 鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申
1573 h677 1.299 CabinetVisible( False );
1574 yoffy 1.141 if GikoSys.Setting.CabinetVisible then begin
1575     i := CabinetSelectPopupMenu.Items.Count - 1;
1576     if GikoSys.Setting.CabinetIndex = i - 1 then
1577     CabinetHistoryAction.Execute
1578     else if GikoSys.Setting.CabinetIndex = i then
1579     CabinetFavoriteAction.Execute
1580     else begin
1581     if GikoSys.Setting.CabinetIndex < Length( BBSs ) then
1582     ShowBBSTree( BBSs[ GikoSys.Setting.CabinetIndex ] );
1583 yoffy 1.265 // 鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申 2
1584     FIsIgnoreResize := True;
1585 yoffy 1.141 CabinetBBSAction.Execute;
1586     end;
1587     end else begin
1588 yoffy 1.248 ShowBBSTreeOld( BBSs[ 0 ] );
1589     PostMessage( Handle, USER_TREECLICK, 0, 0 );
1590 yoffy 1.141 end;
1591 yoffy 1.67
1592 yoffy 1.265 // 鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申 3
1593 yoffy 1.248 FIsIgnoreResize := True;
1594    
1595 yoffy 1.2 //鐃?鐃?鐃?鐃緒申鐃?鐃?鐃緒申
1596     if GikoSys.Setting.AutoLogin then
1597     LoginAction.Execute;
1598    
1599     //鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃緒申鐃緒申鐃?鐃?鐃?
1600     for i := 1 to ParamCount do begin
1601     MoveToURL(ParamStr(i));
1602     end;
1603     // SetStdToolBar;
1604     // SetLinkBar;
1605 h677 1.22
1606 hi_ 1.32 s := GikoSys.FAbon.NGwordname;
1607     StatusBar.Panels[2].Text := s;
1608     StatusBar.Panels[2].Width := Max(StatusBar.Canvas.TextWidth(s), 100);
1609     StatusBarResize(Sender);
1610 h677 1.187
1611 yoffy 1.236 dummy1.Caption := ItemReservPMenu.Caption;
1612     dummy1.Hint := ItemReservPMenu.Hint;
1613 yoffy 1.216
1614 yoffy 1.236 //Samba24鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃?鐃?鐃?
1615     GikoSys.SambaFileExists();
1616 h677 1.299
1617 yoffy 1.2 end;
1618    
1619 yoffy 1.216 // CoolBar 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1620     procedure TGikoForm.SaveCoolBarSettings;
1621 yoffy 1.2 var
1622 yoffy 1.216 i : Integer;
1623     CoolSet : TCoolSet;
1624 yoffy 1.2 begin
1625    
1626 yoffy 1.248 if IsIconic( Handle ) or FIsIgnoreResize then
1627 yoffy 1.216 Exit;
1628 yoffy 1.2
1629 yoffy 1.216 //鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申(Main)
1630     for i := 0 to MAIN_COOLBAND_COUNT - 1 do begin
1631     CoolSet.FCoolID := MainCoolBar.Bands[i].ID;
1632     CoolSet.FCoolWidth := MainCoolBar.Bands[i].Width;
1633     CoolSet.FCoolBreak := MainCoolBar.Bands[i].Break;
1634     GikoSys.Setting.MainCoolSet[i] := CoolSet;
1635     end;
1636     //鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申(Board)
1637     for i := 0 to LIST_COOLBAND_COUNT - 1 do begin
1638     CoolSet.FCoolID := ListCoolBar.Bands[i].ID;
1639     CoolSet.FCoolWidth := ListCoolBar.Bands[i].Width;
1640     CoolSet.FCoolBreak := ListCoolBar.Bands[i].Break;
1641     GikoSys.Setting.ListCoolSet[i] := CoolSet;
1642     end;
1643     //鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申(Browser)
1644     for i := 0 to BROWSER_COOLBAND_COUNT - 1 do begin
1645     CoolSet.FCoolID := BrowserCoolBar.Bands[i].ID;
1646     CoolSet.FCoolWidth := BrowserCoolBar.Bands[i].Width;
1647     CoolSet.FCoolBreak := BrowserCoolBar.Bands[i].Break;
1648     GikoSys.Setting.BrowserCoolSet[i] := CoolSet;
1649 yoffy 1.2 end;
1650    
1651 yoffy 1.216 end;
1652 yoffy 1.2
1653 yoffy 1.216 // CoolBar 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1654     procedure TGikoForm.LoadCoolBarSettings;
1655     var
1656     i : Integer;
1657     CoolSet : TCoolSet;
1658     begin
1659 yoffy 1.2
1660 hi_ 1.1 //鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申(Main)
1661     MainCoolBar.Bands.BeginUpdate;
1662     try
1663 yoffy 1.216 // for i := 0 to MainCoolBar.Bands.Count - 1 do begin
1664     for i := MAIN_COOLBAND_COUNT - 1 downto 0 do begin
1665 hi_ 1.1 CoolSet := GikoSys.Setting.MainCoolSet[i];
1666 yoffy 1.263 if (CoolSet.FCoolID = -1) or (CoolSet.FCoolWidth = -1) then begin
1667 yoffy 1.265 FIsIgnoreResize := False;
1668 yoffy 1.263 SaveCoolBarSettings;
1669     Exit;
1670     end;
1671 hi_ 1.1 MainCoolBar.Bands.FindItemID(CoolSet.FCoolID).Index := i;
1672     MainCoolBar.Bands[i].Break := CoolSet.FCoolBreak;
1673 yoffy 1.264 MainCoolBar.Bands[i].Width := CoolSet.FCoolWidth;
1674 hi_ 1.1 end;
1675     finally
1676     MainCoolBar.Bands.EndUpdate;
1677     end;
1678    
1679     //鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申(Board)
1680     ListCoolBar.Bands.BeginUpdate;
1681     try
1682 yoffy 1.216 // for i := 0 to ListCoolBar.Bands.Count - 1 do begin
1683     for i := LIST_COOLBAND_COUNT - 1 downto 0 do begin
1684 hi_ 1.1 CoolSet := GikoSys.Setting.ListCoolSet[i];
1685 yoffy 1.263 if (CoolSet.FCoolID = -1) or (CoolSet.FCoolWidth = -1) then begin
1686 yoffy 1.265 FIsIgnoreResize := False;
1687 yoffy 1.263 SaveCoolBarSettings;
1688     Exit;
1689     end;
1690 hi_ 1.1 ListCoolBar.Bands.FindItemID(CoolSet.FCoolID).Index := i;
1691     ListCoolBar.Bands[i].Break := CoolSet.FCoolBreak;
1692     ListCoolBar.Bands[i].Width := CoolSet.FCoolWidth;
1693     end;
1694     finally
1695     ListCoolBar.Bands.EndUpdate;
1696     end;
1697    
1698     //鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申(Browser)
1699     BrowserCoolBar.Bands.BeginUpdate;
1700     try
1701 yoffy 1.216 // for i := 0 to BrowserCoolBar.Bands.Count - 1 do begin
1702     for i := BROWSER_COOLBAND_COUNT - 1 downto 0 do begin
1703 hi_ 1.1 CoolSet := GikoSys.Setting.BrowserCoolSet[i];
1704 yoffy 1.263 if (CoolSet.FCoolID = -1) or (CoolSet.FCoolWidth = -1) then begin
1705 yoffy 1.265 FIsIgnoreResize := False;
1706 yoffy 1.263 SaveCoolBarSettings;
1707     Exit;
1708     end;
1709 hi_ 1.1 BrowserCoolBar.Bands.FindItemID(CoolSet.FCoolID).Index := i;
1710     BrowserCoolBar.Bands[i].Break := CoolSet.FCoolBreak;
1711     BrowserCoolBar.Bands[i].Width := CoolSet.FCoolWidth;
1712     end;
1713     finally
1714     BrowserCoolBar.Bands.EndUpdate;
1715     end;
1716    
1717     end;
1718 yoffy 1.216
1719     //
1720     //
1721     //
1722     procedure TGikoForm.FormShow(Sender: TObject);
1723     begin
1724     ShowWindow(Application.Handle, SW_HIDE);
1725    
1726     //FormCreate鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申FormShow鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1727     //鐃?鐃?鐃緒申鐃?鐃?鐃?鐃緒申
1728     StdToolBarVisibleAction.Checked := GikoSys.Setting.StdToolBarVisible;
1729     StdToolBarVisibleActionExecute( nil );
1730     AddressBarVisibleAction.Checked := GikoSys.Setting.AddressBarVisible;
1731     AddressBarVisibleActionExecute( nil );
1732     LinkBarVisibleAction.Checked := GikoSys.Setting.LinkBarVisible;
1733     LinkBarVisibleActionExecute( nil );
1734     ListToolBarVisibleAction.Checked := GikoSys.Setting.ListToolBarVisible;
1735     ListToolBarVisibleActionExecute( nil );
1736     ListNameBarVisibleAction.Checked := GikoSys.Setting.ListNameBarVisible;
1737     ListNameBarVisibleActionExecute( nil );
1738     BrowserToolBarVisibleAction.Checked := GikoSys.Setting.BrowserToolBarVisible;
1739     BrowserToolBarVisibleActionExecute( nil );
1740     BrowserNameBarVisibleAction.Checked := GikoSys.Setting.BrowserNameBarVisible;
1741     BrowserNameBarVisibleActionExecute( nil );
1742    
1743     //鐃?鐃緒申鐃?鐃?鐃?鐃?
1744     BrowserTabVisibleAction.Checked := GikoSys.Setting.BrowserTabVisible;
1745     BrowserTabVisibleActionExecute(nil);
1746    
1747     if GikoSys.Setting.BrowserTabPosition = gtpTop then begin
1748     BrowserTabTopAction.Checked := True;
1749     BrowserTabTopActionExecute(nil);
1750     end else begin
1751     BrowserTabBottomAction.Checked := True;
1752     BrowserTabBottomActionExecute(nil);
1753     end;
1754    
1755     if GikoSys.Setting.BrowserTabStyle = gtsTab then begin
1756     BrowserTabTabStyleAction.Checked := True;
1757     BrowserTabTabStyleActionExecute(nil);
1758     end else if GikoSys.Setting.BrowserTabStyle = gtsButton then begin
1759     BrowserTabButtonStyleAction.Checked := True;
1760     BrowserTabButtonStyleActionExecute(nil);
1761     end else begin
1762     BrowserTabFlatStyleAction.Checked := True;
1763     BrowserTabFlatStyleActionExecute(nil);
1764     end;
1765    
1766     // CoolBar 鐃緒申鐃緒申
1767     LoadCoolBarSettings;
1768 yoffy 1.265
1769     FIsIgnoreResize := False;
1770 yoffy 1.239 end;
1771 yoffy 1.216
1772 hi_ 1.1 procedure TGikoForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
1773     begin
1774 yoffy 1.331 // if GikoForm.WindowState <> wsMinimized then
1775     // SaveCoolBarSettings;
1776 yoffy 1.236 if ( GikoSys.Setting.ShowDialogForEnd ) and
1777     (MessageDlg('鐃?鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?', mtConfirmation,[mbOk, mbCancel], 0) = mrCancel ) then begin
1778     CanClose := false;
1779     Exit;
1780     end else begin
1781     CanClose := True;
1782     end;
1783 h677 1.241 //Application.HookMainWindow(Hook);
1784     Application.UnhookMainWindow(Hook);
1785     Application.Terminate;
1786     end;
1787    
1788     procedure TGikoForm.FormDestroy(Sender: TObject);
1789     var
1790     i: Integer;
1791     // CoolSet: TCoolSet;
1792     wp: TWindowPlacement;
1793 h677 1.321 tmpBool: Boolean;
1794 h677 1.241 begin
1795 h677 1.181 // Application.OnDeactivate := nil;
1796     // Self.OnDeactivate := nil;
1797 yoffy 1.236 try
1798 h677 1.234 //column鐃緒申
1799     if GetActiveList is TBBS then begin
1800     for i := 0 to ListView.Columns.Count - 1 do
1801     GikoSys.Setting.BBSColumnWidth[i] := ListView.Column[i].Width;
1802     end else if GetActiveList is TCategory then begin
1803     for i := 0 to ListView.Columns.Count - 1 do
1804     GikoSys.Setting.CategoryColumnWidth[i] := ListView.Column[i].Width;
1805     end else if GetActiveList is TBoard then begin
1806     for i := 0 to ListView.Columns.Count - 1 do
1807     GikoSys.Setting.BoardColumnWidth[i] := ListView.Column[i].Width;
1808     end;
1809 yoffy 1.236 except
1810     end;
1811     try
1812 h677 1.234 //鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申
1813     wp.length := sizeof(wp);
1814     GetWindowPlacement(Handle, @wp);
1815     GikoSys.Setting.WindowTop := wp.rcNormalPosition.Top;
1816     GikoSys.Setting.WindowLeft := wp.rcNormalPosition.Left;
1817     GikoSys.Setting.WindowHeight := wp.rcNormalPosition.Bottom - wp.rcNormalPosition.Top;
1818     GikoSys.Setting.WindowWidth := wp.rcNormalPosition.Right - wp.rcNormalPosition.Left;
1819     GikoSys.Setting.WindowMax := WindowState = wsMaximized;
1820    
1821     GikoSys.Setting.ListStyle := ListView.ViewStyle;
1822     GikoSys.Setting.CabinetVisible := CabinetVisibleAction.Checked;
1823     GikoSys.Setting.CabinetWidth := CabinetPanel.Width;
1824     GikoSys.Setting.ListHeight := FBrowserSizeHeight;
1825     GikoSys.Setting.ListWidth := FBrowserSizeWidth;
1826     if ArrangeAction.Checked then
1827     GikoSys.Setting.ListOrientation := gloVertical
1828     else
1829     GikoSys.Setting.ListOrientation := gloHorizontal;
1830     GikoSys.Setting.MessegeBarHeight := MessagePanel.Height;
1831 yoffy 1.236 except
1832 yoffy 1.2 end;
1833 yoffy 1.216 // 鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃?鐃?鐃?鐃?鐃緒申 CoolBar 鐃緒申鐃緒申
1834     // 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1835 yoffy 1.263 {
1836     // 鐃緒申FormDestroy鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃?2004/04/09鐃?
1837 yoffy 1.216 // CoolBar 鐃緒申鐃緒申
1838 h677 1.262 if GikoForm.WindowState <> wsMinimized then
1839     SaveCoolBarSettings;
1840 yoffy 1.263 }
1841 yoffy 1.236 try
1842 h677 1.234 GikoSys.Setting.WriteWindowSettingFile;
1843     GikoSys.Setting.WriteNameMailSettingFile;
1844 yoffy 1.236 except
1845     end;
1846 yoffy 1.2
1847     //鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1848 hi_ 1.1 try
1849 yoffy 1.236 //FavoriteDM鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申
1850 yoffy 1.2 FavoriteDM.WriteFavorite;
1851 yoffy 1.236 FavoriteDM.Clear;
1852 hi_ 1.1 except
1853     end;
1854    
1855     try
1856     //鐃?鐃?鐃?鐃緒申鐃?鐃?
1857 h677 1.321 tmpBool := GikoSys.Setting.ShowDialogForAllTabClose;
1858     GikoSys.Setting.ShowDialogForAllTabClose := false;
1859     AllTabCloseAction.Execute;
1860     GikoSys.Setting.ShowDialogForAllTabClose := tmpBool;
1861 h677 1.299 except
1862     end;
1863 h677 1.321 try
1864     LockWindowUpdate(Self.Handle);
1865     for i := FBrowsers.Count - 1 downto 0 do begin
1866     TWebBrowser(FBrowsers[i]).Free;
1867     end;
1868     FBrowsers.Clear;
1869     FBrowsers.Capacity := 0;
1870     finally
1871     FBrowsers.Free;
1872 h677 1.303 end;
1873 h677 1.299 try
1874     if BrowserNullTab <> nil then begin
1875     BrowserNullTab.Browser := nil; {*BrowserNullTab鐃緒申Browser鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃?
1876     *鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申Free鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?
1877     *}
1878     BrowserNullTab.Free;
1879 hi_ 1.1 end;
1880     except
1881     end;
1882 h677 1.321 LockWindowUpdate(0);
1883 h677 1.224 try
1884 yoffy 1.236 TreeView.Items.BeginUpdate;
1885     for i := TreeView.Items.Count - 1 downto 0 do begin
1886     TreeView.Items[i].Free;
1887     end;
1888     TreeView.Items.Clear;
1889     TreeView.Items.EndUpdate;
1890 h677 1.224 except
1891     end;
1892 h677 1.230
1893 hi_ 1.1 //鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申
1894     try
1895 yoffy 1.236 //AddressHistoryDM鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?
1896 hi_ 1.1 AddressHistoryDM.WriteHistory(AddressComboBox.Items, GikoSys.Setting.AddressHistoryCount);
1897     except
1898     end;
1899    
1900 h677 1.234 //鐃?鐃?鐃?鐃緒申鐃緒申鐃?鐃?鐃緒申鐃緒申
1901 hi_ 1.1 try
1902 h677 1.234 SaveHistory;
1903 hi_ 1.1 except
1904     end;
1905 yoffy 1.236 try
1906     try
1907     ClearHistory;
1908     except
1909     end;
1910     finally
1911     FHistoryList.Free;
1912     end;
1913 h677 1.221
1914 h677 1.182 //鐃緒申鐃緒申鐃緒申鐃?鐃?鐃緒申鐃緒申&鐃?鐃緒申
1915     try
1916     RoundList.SaveRoundFile;
1917     except
1918     end;
1919 yoffy 1.236 try
1920 h677 1.234 try
1921 yoffy 1.236 RoundList.Clear;
1922 h677 1.234 except
1923     end;
1924 yoffy 1.236 finally
1925     RoundList.Free;
1926     end;
1927 h677 1.182
1928 yoffy 1.236 try
1929 h677 1.234 try
1930     FControlThread.Terminate;
1931 yoffy 1.236 FControlThread.WaitFor;
1932 h677 1.234 except
1933 h677 1.219 end;
1934 yoffy 1.236 finally
1935     FControlThread.Free;
1936     end;
1937 h677 1.230
1938 yoffy 1.155 // TBBS 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申 TCategory, TBoard, TThreadItem 鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申
1939     // TBoard, TThreadItem 鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申
1940     // BoardPluteIns 鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申
1941 yoffy 1.126 try
1942 h677 1.220 for i := Length( BBSs ) - 1 downto 0 do begin
1943 h677 1.153 if BBSs[ i ] <> nil then
1944     BBSs[ i ].Free;
1945     BBSs[ i ] := nil;
1946     end;
1947     except
1948     end;
1949 yoffy 1.155
1950 h677 1.153 try
1951 h677 1.220 for i := Length( BoardPlugIns ) - 1 downto 0 do begin
1952 yoffy 1.126 if BoardPlugIns[ i ] <> nil then
1953     BoardPlugIns[ i ].Free;
1954     BoardPlugIns[ i ] := nil;
1955     end;
1956     except
1957     end;
1958 yoffy 1.124
1959 h677 1.234 try
1960 yoffy 1.236 if FEvent <> nil then
1961     FEvent.Free;
1962 h677 1.181
1963 yoffy 1.2 //Hint鐃?鐃緒申
1964     if FHint <> nil then begin
1965     FHint.ReleaseHandle;
1966     FHint.Free;
1967     FHint := nil;
1968     end;
1969     //Preview鐃?鐃緒申
1970     if TPreviewBrowser <> nil then begin
1971     FPreviewBrowser.Free;
1972     FPreviewBrowser := nil;
1973     end;
1974     except
1975     end;
1976 h677 1.230
1977 hi_ 1.1 end;
1978    
1979     //鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃?鐃?
1980     procedure TGikoForm.FormClose(Sender: TObject; var Action: TCloseAction);
1981     begin
1982 h677 1.230 end;
1983 hi_ 1.1 //鐃?鐃緒申鐃?鐃?鐃?鐃?鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃?鐃?
1984     procedure TGikoForm.CabinetPanelHide(Sender: TObject);
1985     begin
1986     CabinetVisibleAction.Execute;
1987     // CabinetPanelVisible(false);
1988     end;
1989    
1990 yoffy 1.289 // 鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃?鐃? BBS 鐃緒申鐃?鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃?鐃?鐃?
1991     procedure TGikoForm.SetBBSMenu;
1992 yoffy 1.123 var
1993     i : Integer;
1994 yoffy 1.149 item : TBBSMenuItem;
1995 hi_ 1.1 begin
1996    
1997 yoffy 1.148 // 鐃緒申鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申
1998     for i := CabinetSelectPopupMenu.Items.Count - 1 downto 0 do begin
1999     try
2000     if CabinetSelectPopupMenu.Items[ i ] is TBBSMenuItem then begin
2001 yoffy 1.155 CabinetSelectPopupMenu.Items[ i ].Free;
2002     CabinetMenu.Items[ i ].Free;
2003 yoffy 1.289 BBSSelectPopupMenu.Items[ i ].Free;
2004 yoffy 1.148 end;
2005     except
2006     end;
2007     end;
2008 yoffy 1.289
2009     // 鐃緒申鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申
2010 yoffy 1.148 for i := Length( BBSs ) - 1 downto 0 do begin
2011     try
2012     item := TBBSMenuItem.Create( PopupMenu );
2013     item.Caption := BBSs[ i ].Title;
2014     item.Data := BBSs[ i ];
2015     item.OnClick := BBSMenuItemOnClick;
2016     CabinetSelectPopupMenu.Items.Insert( 0, item );
2017     item := TBBSMenuItem.Create( PopupMenu );
2018     item.Caption := BBSs[ i ].Title;
2019     item.Data := BBSs[ i ];
2020     item.OnClick := BBSMenuItemOnClick;
2021     CabinetMenu.Insert( 0, item );
2022 yoffy 1.289 item := TBBSMenuItem.Create( PopupMenu );
2023     item.Caption := BBSs[ i ].Title;
2024     item.Data := BBSs[ i ];
2025     item.OnClick := BBSMenuItemOnClick;
2026     BBSSelectPopupMenu.Items.Insert( 0, Item );
2027 yoffy 1.148 except
2028     end;
2029     end;
2030 yoffy 1.289
2031     end;
2032    
2033     procedure TGikoForm.ReloadBBS;
2034     var
2035     i : Integer;
2036 h677 1.321 tmpBool: Boolean;
2037 yoffy 1.289 begin
2038     //鐃?鐃?鐃?鐃緒申鐃?鐃?
2039 h677 1.321 tmpBool := GikoSys.Setting.ShowDialogForAllTabClose;
2040     GikoSys.Setting.ShowDialogForAllTabClose := false;
2041 h677 1.320 AllTabCloseAction.Execute;
2042 h677 1.321 GikoSys.Setting.ShowDialogForAllTabClose := tmpBool;
2043    
2044 h677 1.320 SetContent(BrowserNullTab);
2045 yoffy 1.289 //TreeView鐃?鐃緒申鐃?鐃?BBS2ch.Free鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申XP鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃?
2046     TreeView.Items.Clear;
2047    
2048     //BBS鐃?鐃緒申
2049     try
2050     for i := Length( BBSs ) - 1 downto 0 do begin
2051     if BBSs[ i ] <> nil then
2052     BBSs[ i ].Free;
2053     BBSs[ i ] := nil;
2054     end;
2055     except
2056     end;
2057    
2058     ActiveList := nil;
2059    
2060     FTreeType := gttNone;
2061    
2062     GikoSys.ListBoardFile; //鐃?鐃?鐃?鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申
2063    
2064     // BBS 鐃緒申鐃?鐃緒申鐃?鐃緒申鐃?鐃?
2065     SetBBSMenu;
2066    
2067 yoffy 1.123 ShowBBSTree( BBSs[ 0 ] );
2068 yoffy 1.143
2069     // 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
2070 yoffy 1.146 SaveHistory;
2071 yoffy 1.272 ClearHistory;
2072 yoffy 1.143 LoadHistory;
2073    
2074     //鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
2075 yoffy 1.287 FavoriteDM.WriteFavorite;
2076 yoffy 1.272 FavoriteDM.Clear;
2077 yoffy 1.143 FavoriteDM.ReadFavorite;
2078 yoffy 1.279
2079 yoffy 1.143 SetLinkBar;
2080    
2081 hi_ 1.1 end;
2082    
2083     //鐃?鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申
2084 yoffy 1.123 procedure TGikoForm.SetBoardTreeNode(
2085     inBBS : TBBS
2086     );
2087 hi_ 1.1 var
2088 yoffy 1.120 i, j, k: integer;
2089 hi_ 1.1 Root: TTreeNode;
2090     CategoryNode: TTreeNode;
2091     BoardNode: TTreeNode;
2092     Category: TCategory;
2093     Board: TBoard;
2094     begin
2095 yoffy 1.112 // 鐃緒申鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申
2096 yoffy 1.133 FActiveBBS := inBBS;
2097 hi_ 1.1 TreeView.Items.BeginUpdate;
2098     TreeView.Items.Clear;
2099     try
2100 yoffy 1.210 if not inBBS.IsBoardFileRead then
2101     GikoSys.ReadBoardFile( inBBS );
2102 yoffy 1.123 try
2103     if SplashWindow <> nil then
2104 yoffy 1.210 SplashWindow.ProgressBar.Max := inBBS.Count;
2105 yoffy 1.123 except
2106     end;
2107    
2108     Root := TreeView.Items.Add( nil, inBBS.Title );
2109     Root.ImageIndex := ITEM_ICON_2CH1;
2110     Root.SelectedIndex := ITEM_ICON_2CH2;
2111     Root.Data := inBBS;
2112     for i := 0 to inBBS.Count - 1 do begin
2113     Category := TCategory(inBBS.Items[i]);
2114     CategoryNode := TreeView.Items.AddChild(Root, Category.Title);
2115     CategoryNode.Data := Category;
2116     CategoryNode.ImageIndex := ITEM_ICON_CATEGORY1;
2117     CategoryNode.SelectedIndex := ITEM_ICON_CATEGORY2;
2118 hi_ 1.1
2119 yoffy 1.123 for j := 0 to Category.Count - 1 do begin
2120     Board := TBoard(Category.Items[j]);
2121     Board.BeginUpdate;
2122     BoardNode := TreeView.Items.AddChild(CategoryNode, Board.Title);
2123     BoardNode.Data := Board;
2124     //if (Board.LastGetTime = 0) or (Board.LastGetTime = ZERO_DATE) then begin
2125     if not Board.IsLogFile then begin
2126     BoardNode.ImageIndex := ITEM_ICON_BOARD_NOSUBJECT;
2127     BoardNode.SelectedIndex := ITEM_ICON_BOARD_NOSUBJECT;
2128     end else begin
2129     BoardNode.ImageIndex := ITEM_ICON_BOARD1;
2130     BoardNode.SelectedIndex := ITEM_ICON_BOARD2;
2131     for k := 0 to Board.Count - 1 do begin
2132     if Board.Items[ k ].IsLogFile then begin
2133     BoardNode.ImageIndex := ITEM_ICON_BOARD_LOG;
2134     BoardNode.SelectedIndex := ITEM_ICON_BOARD_LOG;
2135 yoffy 1.120
2136 yoffy 1.123 Break;
2137 yoffy 1.120 end;
2138     end;
2139 yoffy 1.112 end;
2140 yoffy 1.123 Board.EndUpdate;
2141     end;
2142 hi_ 1.1
2143 yoffy 1.123 CategoryNode.Expanded := Category.NodeExpand;
2144 hi_ 1.1
2145 yoffy 1.123 if SplashWindow <> nil then begin
2146     SplashWindow.ProgressBar.StepIt;
2147     Application.ProcessMessages;
2148 hi_ 1.1 end;
2149     end;
2150     finally
2151     TreeView.Items.EndUpdate;
2152     end;
2153     end;
2154    
2155 yoffy 1.123 function TGikoForm.SetCategoryListItem(ABBS2ch: TBBS): Integer;
2156 hi_ 1.1 const
2157     COLUMN: array[0..0] of string = ('鐃?鐃?鐃?鐃緒申鐃緒申');
2158     var
2159     ListColumn: TListColumn;
2160     i: Integer;
2161     begin
2162     ListView.Items.BeginUpdate;
2163     try
2164     Screen.Cursor := crHourGlass;
2165    
2166     ListView.Columns.Clear;
2167     for i := 0 to Length(COLUMN) - 1 do begin
2168     ListColumn := ListView.Columns.Add;
2169     ListColumn.Caption := COLUMN[i];
2170     ListColumn.Width := GikoSys.Setting.BBSColumnWidth[i];
2171     end;
2172    
2173     ListView.Items.Count := 0;
2174     ListView.Items.Clear;
2175     ListView.Items.Count := ABBS2ch.Count;
2176    
2177     // UpFolderAction.Enabled := False;
2178     // AllItemAction.Enabled := False;
2179     // LogItemAction.Enabled := False;
2180     // NewItemAction.Enabled := False;
2181     // SelectItemAction.Enabled := False;
2182     // ListDownloadToolButton.Enabled := False;
2183     // BoardReservToolButton.Enabled := False;
2184     // ListThreadDownloadToolButton.Enabled := False;
2185    
2186     ListNameLabel.Caption := ABBS2ch.Title;
2187     FolderImage.Picture := nil;
2188     ItemIcon16.GetBitmap(1, FolderImage.Picture.Bitmap);
2189    
2190 yoffy 1.2 FSortIndex := 0;
2191     FSortOrder := False;
2192     ListViewColumnClick(nil, ListView.Column[0]);
2193    
2194 hi_ 1.1 Result := ABBS2ch.Count;
2195     finally
2196     Screen.Cursor := crDefault;
2197     ListView.Items.EndUpdate;
2198     end;
2199     end;
2200    
2201     function TGikoForm.SetBoardListItem(Category: TCategory): Integer;
2202     const
2203     COLUMN: array[0..2] of string = ('鐃緒申鐃緒申', '鐃緒申鐃緒申鐃?鐃緒申', '鐃緒申鐃緒申鐃緒申鐃緒申');
2204     var
2205     ListColumn: TListColumn;
2206     i: Integer;
2207     begin
2208     ListView.Items.BeginUpdate;
2209     try
2210     Screen.Cursor := crHourGlass;
2211    
2212     ListView.Columns.Clear;
2213     for i := 0 to Length(COLUMN) - 1 do begin
2214     ListColumn := ListView.Columns.Add;
2215     ListColumn.Caption := COLUMN[i];
2216     ListColumn.Width := GikoSys.Setting.CategoryColumnWidth[i];
2217     end;
2218    
2219     ListView.Items.Count := 0;
2220     ListView.Items.Clear;
2221     ListView.Items.Count := Category.Count;
2222    
2223     // UpFolderAction.Enabled := True;
2224     // AllItemAction.Enabled := False;
2225     // LogItemAction.Enabled := False;
2226     // NewItemAction.Enabled := False;
2227     // SelectItemAction.Enabled := False;
2228     // ListDownloadToolButton.Enabled := False;
2229     // BoardReservToolButton.Enabled := False;
2230     // ListThreadDownloadToolButton.Enabled := False;
2231    
2232     ListNameLabel.Caption := Category.Title;
2233     FolderImage.Picture := nil;
2234     ItemIcon16.GetBitmap(3, FolderImage.Picture.Bitmap);
2235    
2236 yoffy 1.2 FSortIndex := 0;
2237     FSortOrder := False;
2238     ListViewColumnClick(nil, ListView.Column[0]);
2239    
2240 hi_ 1.1 Result := Category.Count;
2241     finally
2242     Screen.Cursor := crDefault;
2243     ListView.Items.EndUpdate;
2244     end;
2245     end;
2246    
2247     function TGikoForm.SetThreadListItem(Board: TBoard): Integer;