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.413 - (hide annotations) (download) (as text)
Wed Sep 8 15:52:10 2004 UTC (19 years, 7 months ago) by yoffy
Branch: MAIN
Changes since 1.412: +98 -22 lines
File MIME type: text/x-pascal
カラムソートのカラム位置に対する依存性を改善(不完全)。
※完全にするには TGikoForm.ActiveListTrueColumn を解決、もしくは代替策で対処する事。

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     N50: TMenuItem;
450     A11: TMenuItem;
451     S5: TMenuItem;
452     Reload: TMenuItem;
453     GoBack: TMenuItem;
454     GoFoward: TMenuItem;
455 h677 1.388 EditNGAction: TAction;
456 yoffy 1.51 ReloadAction: TAction;
457     GoFowardAction: TAction;
458     GoBackAction: TAction;
459     SelectComboBoxSplitter: TImage;
460     IndividualAbon1: TMenuItem;
461     N41: TMenuItem;
462     IndividualAbon2: TMenuItem;
463     N42: TMenuItem;
464     CancellIndividualAbon: TAction;
465     AntiIndividualAbon: TMenuItem;
466     N49: TMenuItem;
467     N51: TMenuItem;
468     N52: TMenuItem;
469     N53: TMenuItem;
470     SearchBoardName: TMenuItem;
471 yoffy 1.205 TreeSelectLogDeleteSeparator: TMenuItem;
472 yoffy 1.51 TreeSelectSearchBoardName: TAction;
473 yoffy 1.100 CabinetFavoriteAction: TAction;
474     N54: TMenuItem;
475     A13: TMenuItem;
476     FavoriteTreePopupMenu: TPopupMenu;
477     FavoriteTreeViewRenameAction: TAction;
478     FavoriteTreeRenamePopupMenu: TMenuItem;
479     FavoriteTreeViewNewFolderAction: TAction;
480     FavoriteTreeNewFolderPopupMenu: TMenuItem;
481     N56: TMenuItem;
482     FavoriteTreeViewDeleteAction: TAction;
483     FavoriteTreeDeletePopupMenu: TMenuItem;
484     FavoriteToolBar: TToolBar;
485     ToolButton17: TToolButton;
486     ToolButton19: TToolButton;
487     FavoriteTreeViewBrowseFolderAction: TAction;
488     FavoriteTreeBrowseFolderPopupMenu: TMenuItem;
489     N57: TMenuItem;
490     FavoriteTreeReloadPopupMenu: TMenuItem;
491     N58: TMenuItem;
492     FavoriteTreeURLCopyPopupMenu: TMenuItem;
493     FavoriteTreeNameCopyPopupMenu: TMenuItem;
494     FavoriteTreeLogDeletePopupMenu: TMenuItem;
495     N59: TMenuItem;
496     FavoriteTreeNameURLCopyPopupMenu: TMenuItem;
497     FavoriteTreeViewReloadAction: TAction;
498     FavoriteTreeViewURLCopyAction: TAction;
499     FavoriteTreeViewNameCopyAction: TAction;
500     FavoriteTreeViewNameURLCopyAction: TAction;
501     FavoriteTreeViewLogDeleteAction: TAction;
502 yoffy 1.375 ResRangeAction: TAction;
503 yoffy 1.100 ToolButton20: TToolButton;
504 yoffy 1.375 ResRangeButton: TToolButton;
505 yoffy 1.100 N60: TMenuItem;
506 yoffy 1.107 ExportFavoriteFileAction1: TMenuItem;
507     ExportFavoriteFile: TFileSaveAs;
508 yoffy 1.141 ToolButton21: TToolButton;
509 yoffy 1.322 CabinetBBSToolButton: TToolButton;
510 yoffy 1.141 ToolButton23: TToolButton;
511     ToolButton24: TToolButton;
512 yoffy 1.142 N6: TMenuItem;
513     N17: TMenuItem;
514     FavoriteTreeViewBrowseBoardAction: TAction;
515     FavoriteTreeViewBrowseThreadAction: TAction;
516 yoffy 1.158 UpBoardAction: TAction;
517 h677 1.174 N18: TMenuItem;
518     N20: TMenuItem;
519     N24: TMenuItem;
520     N62: TMenuItem;
521 h677 1.176 N61: TMenuItem;
522 h677 1.183 N63: TMenuItem;
523     KoreCopy: TAction;
524     N64: TMenuItem;
525 h677 1.187 dummy1: TMenuItem;
526 yoffy 1.205 TreeSelectLogDeletePopupMenu: TMenuItem;
527     N65: TMenuItem;
528 yoffy 1.209 BBSSelectPopupMenu: TPopupMenu;
529 yoffy 1.218 PlugInMenu: TMenuItem;
530 h677 1.407 TmpToolBar: TToolBar;
531 yoffy 1.252 TreeSelectNameCopy: TAction;
532     TreeSelectNamePupupMenu: TMenuItem;
533 h677 1.299 BrowserPanel: TPanel;
534 h677 1.315 SetFocusForBrowserAction: TAction;
535     SetFocusForThreadListAction: TAction;
536     SetFocusForCabinetAction: TAction;
537 h677 1.318 FileRun1: TFileRun;
538 h677 1.319 ThreadlistMaxAndFocusAction: TAction;
539     BrowserMaxAndFocusAction: TAction;
540 yoffy 1.322 UpBoardButton: TToolButton;
541 yoffy 1.329 SelectTimer: TTimer;
542 h677 1.340 SelectThreadSave: TMenuItem;
543     SelectItemSaveForHTML: TAction;
544     FileSaveAs1: TFileSaveAs;
545 h677 1.342 N55: TMenuItem;
546 h677 1.343 N66: TMenuItem;
547     dat1: TMenuItem;
548     SelectItemSaveForDat: TAction;
549 h677 1.345 LogFolderOpenAction: TAction;
550 yoffy 1.397 OpenLogFolder: TMenuItem;
551 h677 1.346 Browser: TWebBrowser;
552 genyakun 1.353 TabSave: TMenuItem;
553 h677 1.407 TabOpen: TMenuItem;
554 yoffy 1.397 TabsSaveAction: TAction;
555 h677 1.365 TabsOpenAction: TAction;
556 yoffy 1.375 ResRangePopupMenu: TPopupMenu;
557     N1001: TMenuItem;
558     N501: TMenuItem;
559     N22: TMenuItem;
560 yoffy 1.389 OnlyAHundredResAction: TAction;
561 yoffy 1.375 OnlyNewResAction: TAction;
562     OnlyKokoResAction: TAction;
563 yoffy 1.380 A14: TMenuItem;
564 h677 1.386 BrowsBoradHeadAction: TAction;
565     BrowsBoradHeadAction1: TMenuItem;
566 yoffy 1.390 ThreadRangeAction: TAction;
567     ThreadRangePopupMenu: TPopupMenu;
568     A15: TMenuItem;
569     L8: TMenuItem;
570     N67: TMenuItem;
571     N68: TMenuItem;
572     S6: TMenuItem;
573     N69: TMenuItem;
574     S7: TMenuItem;
575     ThreadRangeButton: TToolButton;
576 h677 1.407 TabAutoSaveAction: TAction;
577 genyakun 1.393 TabAutoLoadAction: TAction;
578 yoffy 1.251 procedure FormCreate(Sender: TObject);
579 hi_ 1.1 procedure FormDestroy(Sender: TObject);
580     procedure CabinetPanelHide(Sender: TObject);
581     procedure FormClose(Sender: TObject; var Action: TCloseAction);
582     procedure ListViewData(Sender: TObject; Item: TListItem);
583     procedure ListViewDataFind(Sender: TObject; Find: TItemFind;
584     const FindString: String; const FindPosition: TPoint;
585     FindData: Pointer; StartIndex: Integer; Direction: TSearchDirection;
586     Wrap: Boolean; var Index: Integer);
587     procedure ListViewDataHint(Sender: TObject; StartIndex,
588     EndIndex: Integer);
589     procedure ListViewDataStateChange(Sender: TObject; StartIndex,
590     EndIndex: Integer; OldState, NewState: TItemStates);
591     procedure BrowserStatusTextChange(Sender: TObject;
592     const Text: WideString);
593     procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
594     procedure TreeViewChanging(Sender: TObject; Node: TTreeNode;
595     var AllowChange: Boolean);
596     procedure ListViewKeyDown(Sender: TObject; var Key: Word;
597     Shift: TShiftState);
598     procedure ListViewColumnClick(Sender: TObject; Column: TListColumn);
599 q9_ 1.369 procedure ListViewSort(Sender: TObject; Column: TListColumn);
600 hi_ 1.1 procedure MenuToolBarCustomDrawButton(Sender: TToolBar;
601     Button: TToolButton; State: TCustomDrawState;
602     var DefaultDraw: Boolean);
603     procedure BrowserBeforeNavigate2(Sender: TObject;
604     const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
605     Headers: OleVariant; var Cancel: WordBool);
606     procedure ListViewAdvancedCustomDrawItem(Sender: TCustomListView;
607     Item: TListItem; State: TCustomDrawState; Stage: TCustomDrawStage;
608     var DefaultDraw: Boolean);
609     procedure TreeViewCustomDraw(Sender: TCustomTreeView;
610     const ARect: TRect; var DefaultDraw: Boolean);
611     procedure TreeViewCustomDrawItem(Sender: TCustomTreeView;
612     Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean);
613     procedure TreeViewExpanded(Sender: TObject; Node: TTreeNode);
614     procedure TreeViewDblClick(Sender: TObject);
615     procedure ListViewCustomDraw(Sender: TCustomListView;
616     const ARect: TRect; var DefaultDraw: Boolean);
617     procedure ListViewMouseDown(Sender: TObject; Button: TMouseButton;
618     Shift: TShiftState; X, Y: Integer);
619     procedure TreeViewCollapsed(Sender: TObject; Node: TTreeNode);
620     procedure MessageListViewResize(Sender: TObject);
621     procedure ExitActionExecute(Sender: TObject);
622     procedure AllSelectActionExecute(Sender: TObject);
623     procedure StdToolBarVisibleActionExecute(Sender: TObject);
624     procedure MsgBarVisibleActionExecute(Sender: TObject);
625     procedure StatusBarVisibleActionExecute(Sender: TObject);
626     procedure LargeIconActionExecute(Sender: TObject);
627     procedure SmallIconActionExecute(Sender: TObject);
628     procedure ListIconActionExecute(Sender: TObject);
629     procedure DetailIconActionExecute(Sender: TObject);
630     procedure SearchActionExecute(Sender: TObject);
631     procedure OptionActionExecute(Sender: TObject);
632     procedure GikoNaviWebPageActionExecute(Sender: TObject);
633     procedure AboutActionExecute(Sender: TObject);
634     procedure CabinetHistoryActionExecute(Sender: TObject);
635 yoffy 1.138 procedure CabinetVisible( isVisible : Boolean );
636 hi_ 1.1 procedure CabinetVisibleActionExecute(Sender: TObject);
637     procedure AllItemActionExecute(Sender: TObject);
638     procedure LogItemActionExecute(Sender: TObject);
639     procedure NewItemActionExecute(Sender: TObject);
640     procedure SelectItemActionExecute(Sender: TObject);
641     procedure ListNumberVisibleActionExecute(Sender: TObject);
642     procedure UpFolderActionExecute(Sender: TObject);
643     procedure IconStyleExecute(Sender: TObject);
644     procedure RoundActionExecute(Sender: TObject);
645     procedure StopActionExecute(Sender: TObject);
646     procedure MsgBarCloseActionExecute(Sender: TObject);
647     procedure BrowserMaxActionExecute(Sender: TObject);
648     procedure ScrollTopActionExecute(Sender: TObject);
649     procedure ScrollLastActionExecute(Sender: TObject);
650     procedure ScrollNewActionExecute(Sender: TObject);
651     procedure ScrollKokoActionExecute(Sender: TObject);
652     procedure EditorActionExecute(Sender: TObject);
653     procedure IEActionExecute(Sender: TObject);
654     procedure ShowThreadActionExecute(Sender: TObject);
655     procedure ShowBoardActionExecute(Sender: TObject);
656     procedure URLCopyActionExecute(Sender: TObject);
657     procedure ItemReloadActionExecute(Sender: TObject);
658     procedure SelectListReloadActionExecute(Sender: TObject);
659     procedure SelectThreadReloadActionExecute(Sender: TObject);
660     procedure SelectListReloadActionUpdate(Sender: TObject);
661     procedure AllItemActionUpdate(Sender: TObject);
662     procedure LogItemActionUpdate(Sender: TObject);
663     procedure NewItemActionUpdate(Sender: TObject);
664     procedure SelectItemActionUpdate(Sender: TObject);
665     procedure UpFolderActionUpdate(Sender: TObject);
666     procedure FormResize(Sender: TObject);
667     procedure ScrollTopActionUpdate(Sender: TObject);
668     procedure ScrollLastActionUpdate(Sender: TObject);
669     procedure ScrollNewActionUpdate(Sender: TObject);
670     procedure ScrollKokoActionUpdate(Sender: TObject);
671     procedure EditorActionUpdate(Sender: TObject);
672     procedure IEActionUpdate(Sender: TObject);
673     procedure ShowThreadActionUpdate(Sender: TObject);
674     procedure ShowBoardActionUpdate(Sender: TObject);
675     procedure SelectThreadReloadActionUpdate(Sender: TObject);
676 yoffy 1.51 procedure ItemReloadActionUpdate(Sender: TObject);
677     procedure LogDeleteActionExecute(Sender: TObject);
678 hi_ 1.1 procedure KokomadeActionExecute(Sender: TObject);
679     procedure ZenbuActionExecute(Sender: TObject);
680 yoffy 1.51 procedure KokoResActionExecute(Sender: TObject);
681 hi_ 1.1 procedure ListPopupMenuPopup(Sender: TObject);
682     procedure SelectItemURLCopyActionExecute(Sender: TObject);
683     procedure SelectItemURLCopyActionUpdate(Sender: TObject);
684     procedure AllSelectActionUpdate(Sender: TObject);
685     procedure LogDeleteActionUpdate(Sender: TObject);
686     procedure BrowserTabCloseActionExecute(Sender: TObject);
687     procedure NotSelectTabCloseActionExecute(Sender: TObject);
688     procedure TreeSelectBoradReloadExecute(Sender: TObject);
689     procedure TreeSelectThreadReloadExecute(Sender: TObject);
690     procedure TreeSelectURLCopyExecute(Sender: TObject);
691     procedure TreePopupMenuPopup(Sender: TObject);
692     procedure ListToolBarVisibleActionExecute(Sender: TObject);
693     procedure BrowserToolBarVisibleActionExecute(Sender: TObject);
694     procedure BrowserNewWindow2(Sender: TObject; var ppDisp: IDispatch;
695     var Cancel: WordBool);
696     procedure ListSplitterCanResize(Sender: TObject; var NewSize: Integer;
697     var Accept: Boolean);
698     procedure ListSplitterMoved(Sender: TObject);
699     procedure BrowserTabChange(Sender: TObject);
700     procedure BrowserTabMouseDown(Sender: TObject; Button: TMouseButton;
701     Shift: TShiftState; X, Y: Integer);
702     procedure BrowserTabDragOver(Sender, Source: TObject; X, Y: Integer;
703     State: TDragState; var Accept: Boolean);
704     procedure BrowserTabDragDrop(Sender, Source: TObject; X, Y: Integer);
705     procedure BrowserTabMouseMove(Sender: TObject; Shift: TShiftState; X,
706     Y: Integer);
707     procedure BrowserDocumentComplete(Sender: TObject;
708     const pDisp: IDispatch; var URL: OleVariant);
709     procedure SelectReservActionUpdate(Sender: TObject);
710     procedure RoundNamePopupMenuPopup(Sender: TObject);
711     procedure SelectNewRoundNameExecute(Sender: TObject);
712     procedure SelectDeleteRoundExecute(Sender: TObject);
713     procedure SelectReservActionExecute(Sender: TObject);
714     procedure NewBoardActionExecute(Sender: TObject);
715     procedure LoginActionExecute(Sender: TObject);
716     procedure KeySettingActionExecute(Sender: TObject);
717     procedure AllTabCloseActionExecute(Sender: TObject);
718 yoffy 1.51 procedure ArrangeActionExecute(Sender: TObject);
719     procedure NameURLCopyActionExecute(Sender: TObject);
720     procedure SelectItemNameURLCopyActionExecute(Sender: TObject);
721 hi_ 1.1 procedure URLCopyActionUpdate(Sender: TObject);
722 yoffy 1.2 procedure NameURLCopyActionUpdate(Sender: TObject);
723 hi_ 1.1 procedure BrowserTabCloseActionUpdate(Sender: TObject);
724 yoffy 1.51 procedure NotSelectTabCloseActionUpdate(Sender: TObject);
725 hi_ 1.1 procedure AllTabCloseActionUpdate(Sender: TObject);
726     procedure SelectItemNameURLCopyActionUpdate(Sender: TObject);
727     procedure ActiveLogDeleteActionExecute(Sender: TObject);
728     procedure ActiveLogDeleteActionUpdate(Sender: TObject);
729 yoffy 1.51 procedure ListNameBarVisibleActionExecute(Sender: TObject);
730 hi_ 1.1 procedure BrowserNameBarVisibleActionExecute(Sender: TObject);
731 yoffy 1.51 procedure TreeSelectNameURLCopyExecute(Sender: TObject);
732     procedure PaneInitActionExecute(Sender: TObject);
733 hi_ 1.1 procedure FormShow(Sender: TObject);
734     procedure BrowserTabToolBarResize(Sender: TObject);
735     procedure BrowserMinActionExecute(Sender: TObject);
736 yoffy 1.51 procedure SelectTextClearActionExecute(Sender: TObject);
737 hi_ 1.1 procedure NameTextClearActionExecute(Sender: TObject);
738 yoffy 1.51 procedure MailTextClearActionExecute(Sender: TObject);
739     procedure LeftmostTabSelectActionExecute(Sender: TObject);
740     procedure LeftTabSelectActionExecute(Sender: TObject);
741 hi_ 1.1 procedure RightTabSelectActionExecute(Sender: TObject);
742     procedure RightmostTabSelectActionExecute(Sender: TObject);
743     procedure LeftmostTabSelectActionUpdate(Sender: TObject);
744     procedure LeftTabSelectActionUpdate(Sender: TObject);
745     procedure RightTabSelectActionUpdate(Sender: TObject);
746     procedure RightmostTabSelectActionUpdate(Sender: TObject);
747     procedure FavoriteMenuClick(Sender: TObject);
748     procedure FavoriteAddActionExecute(Sender: TObject);
749     procedure FavoriteAddActionUpdate(Sender: TObject);
750     procedure BoardFavoriteAddActionExecute(Sender: TObject);
751     procedure BoardFavoriteAddActionUpdate(Sender: TObject);
752 yoffy 1.51 procedure ThreadFavoriteAddActionExecute(Sender: TObject);
753 hi_ 1.1 procedure ThreadFavoriteAddActionUpdate(Sender: TObject);
754 yoffy 1.51 procedure TreeSelectFavoriteAddActionExecute(Sender: TObject);
755 yoffy 1.2 procedure FavoriteArrangeActionExecute(Sender: TObject);
756     procedure MainCoolBarResize(Sender: TObject);
757 hi_ 1.1 procedure MoveToActionExecute(Sender: TObject);
758 yoffy 1.2 procedure AddressToolBarResize(Sender: TObject);
759 hi_ 1.1 procedure AddressComboBoxKeyDown(Sender: TObject; var Key: Word;
760     Shift: TShiftState);
761 yoffy 1.51 procedure AddressBarVisibleActionExecute(Sender: TObject);
762 yoffy 1.2 procedure BrowserEnter(Sender: TObject);
763 hi_ 1.1 procedure FormShortCut(var Msg: TWMKey; var Handled: Boolean);
764 yoffy 1.51 procedure BrowserTabVisibleActionExecute(Sender: TObject);
765     procedure BrowserTabTopActionExecute(Sender: TObject);
766     procedure BrowserTabBottomActionExecute(Sender: TObject);
767     procedure BrowserTabTabStyleActionExecute(Sender: TObject);
768 hi_ 1.1 procedure BrowserTabButtonStyleActionExecute(Sender: TObject);
769 yoffy 1.51 procedure BrowserTabFlatStyleActionExecute(Sender: TObject);
770 hi_ 1.1 procedure PreviewTimerTimer(Sender: TObject);
771     procedure MessageHideButtonClick(Sender: TObject);
772     procedure MonazillaWebPageActionExecute(Sender: TObject);
773     procedure GikoHelpActionExecute(Sender: TObject);
774     procedure ToolButton18Click(Sender: TObject);
775     procedure KotehanActionExecute(Sender: TObject);
776 yoffy 1.51 procedure LinkBarVisibleActionExecute(Sender: TObject);
777     procedure BBS2chWebPageActionExecute(Sender: TObject);
778     procedure GikoFolderOpenActionExecute(Sender: TObject);
779 yoffy 1.2 procedure MainCoolBarBandInfo(Sender: TObject;
780     var BandInfo: PReBarBandInfoA);
781     procedure MainCoolBarChevronClick(Sender: TObject;
782 yoffy 1.51 RebarChevron: PNMRebarChevron);
783     procedure ListCoolBarBandInfo(Sender: TObject;
784     var BandInfo: PReBarBandInfoA);
785     procedure ListCoolBarChevronClick(Sender: TObject;
786     RebarChevron: PNMRebarChevron);
787     procedure BrowserCoolBarBandInfo(Sender: TObject;
788     var BandInfo: PReBarBandInfoA);
789 yoffy 1.2 procedure BrowserCoolBarChevronClick(Sender: TObject;
790 yoffy 1.51 RebarChevron: PNMRebarChevron);
791     procedure ListViewColumnInfo(Sender: TObject; var Column: PLVColumnA);
792     procedure ThreadEditorActionExecute(Sender: TObject);
793 yoffy 1.2 procedure ThreadEditorActionUpdate(Sender: TObject);
794 yoffy 1.51 procedure ToolBarSettingActionExecute(Sender: TObject);
795     procedure NameCopyActionExecute(Sender: TObject);
796     procedure BoardIEActionExecute(Sender: TObject);
797     procedure SelectItemNameCopyActionExecute(Sender: TObject);
798 yoffy 1.2 procedure SelectItemNameCopyActionUpdate(Sender: TObject);
799 yoffy 1.51 procedure BoardIEActionUpdate(Sender: TObject);
800     procedure FormMouseWheel(Sender: TObject; Shift: TShiftState;
801     WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
802     procedure NameCopyActionUpdate(Sender: TObject);
803     procedure SelectComboBoxChange(Sender: TObject);
804     procedure SelectComboBoxKeyDown(Sender: TObject; var Key: Word;
805     Shift: TShiftState);
806     procedure SelectComboBoxExit(Sender: TObject);
807     procedure SelectResActionExecute(Sender: TObject);
808     procedure SelectResActionUpdate(Sender: TObject);
809     procedure FormKeyUp(Sender: TObject; var Key: Word;
810     Shift: TShiftState);
811     procedure AllResActionExecute(Sender: TObject);
812     procedure AllResActionUpdate(Sender: TObject);
813     procedure ReloadClick(Sender: TObject);
814     procedure GoBackClick(Sender: TObject);
815     procedure GoFowardClick(Sender: TObject);
816     procedure SelectComboBoxSplitterMouseMove(Sender: TObject;
817     Shift: TShiftState; X, Y: Integer);
818     procedure SelectComboBoxSplitterMouseDown(Sender: TObject;
819     Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
820     procedure SelectComboBoxSplitterMouseUp(Sender: TObject;
821     Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
822     procedure StatusBarResize(Sender: TObject);
823     procedure IndividualAbon1Click(Sender: TObject);
824     procedure IndividualAbon2Click(Sender: TObject);
825     procedure N42Click(Sender: TObject);
826     procedure SelectComboBoxEnter(Sender: TObject);
827     procedure AntiIndividualAbonClick(Sender: TObject);
828     procedure N51Click(Sender: TObject);
829     procedure TreeSelectSearchBoardNameExecute(Sender: TObject);
830 yoffy 1.100 procedure CabinetFavoriteActionExecute(Sender: TObject);
831     procedure FavoriteTreeViewDragDrop(Sender, Source: TObject; X,
832     Y: Integer);
833 yoffy 1.71 procedure FavoriteTreeViewDragOver(Sender, Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean);
834 yoffy 1.100 procedure FavoriteTreeViewEdited(Sender: TObject; Node: TTreeNode;
835     var S: String);
836     procedure FavoriteTreeViewKeyDown(Sender: TObject; var Key: Word;
837     Shift: TShiftState);
838     procedure FavoriteTreePopupMenuPopup(Sender: TObject);
839     procedure FavoriteTreeViewDeleteActionExecute(Sender: TObject);
840     procedure FavoriteTreeViewRenameActionExecute(Sender: TObject);
841     procedure FavoriteTreeViewNewFolderActionExecute(Sender: TObject);
842     procedure ToolButton19Click(Sender: TObject);
843     procedure FavoriteTreeViewBrowseFolderActionExecute(Sender: TObject);
844     procedure FavoriteTreeViewDblClick(Sender: TObject);
845     procedure FavoriteTreeViewLogDeleteActionExecute(Sender: TObject);
846     procedure FavoriteTreeViewReloadActionExecute(Sender: TObject);
847     procedure FavoriteTreeViewURLCopyActionExecute(Sender: TObject);
848     procedure FavoriteTreeViewNameCopyActionExecute(Sender: TObject);
849     procedure FavoriteTreeViewNameURLCopyActionExecute(Sender: TObject);
850     procedure LinkToolBarDragDrop(Sender, Source: TObject; X, Y: Integer);
851     procedure BrowserTabMouseUp(Sender: TObject; Button: TMouseButton;
852     Shift: TShiftState; X, Y: Integer);
853     procedure LinkToolBarDragOver(Sender, Source: TObject; X, Y: Integer;
854     State: TDragState; var Accept: Boolean);
855 yoffy 1.375 procedure ResRangeActionExecute(Sender: TObject);
856 yoffy 1.100 procedure FavoriteTreeViewEndDrag(Sender, Target: TObject; X,
857     Y: Integer);
858     procedure ListCoolBarContextPopup(Sender: TObject; MousePos: TPoint;
859     var Handled: Boolean);
860     procedure MainCoolBarContextPopup(Sender: TObject; MousePos: TPoint;
861     var Handled: Boolean);
862     procedure BrowserCoolBarContextPopup(Sender: TObject; MousePos: TPoint;
863     var Handled: Boolean);
864 yoffy 1.107 procedure ExportFavoriteFileAccept(Sender: TObject);
865     procedure ExportFavoriteFileBeforeExecute(Sender: TObject);
866 yoffy 1.139 procedure CabinetBBSActionExecute(Sender: TObject);
867 yoffy 1.142 procedure FavoriteTreeViewBrowseThreadActionExecute(Sender: TObject);
868     procedure FavoriteTreeBrowseBoardPopupMenuClick(Sender: TObject);
869 yoffy 1.158 procedure UpBoardActionExecute(Sender: TObject);
870     procedure UpBoardActionUpdate(Sender: TObject);
871 h677 1.174 procedure BrowserTabContextPopup(Sender: TObject; MousePos: TPoint;
872     var Handled: Boolean);
873 h677 1.183 procedure KoreCopyExecute(Sender: TObject);
874 h677 1.187 procedure BrowserTabPopupMenuPopup(Sender: TObject);
875 h677 1.407 procedure MenuToolBarResize(Sender: TObject);
876 yoffy 1.216 procedure StdToolBarResize(Sender: TObject);
877     procedure LinkToolBarResize(Sender: TObject);
878     procedure ListNameToolBarResize(Sender: TObject);
879     procedure ListToolBarResize(Sender: TObject);
880     procedure BrowserNameToolBarResize(Sender: TObject);
881     procedure BrowserToolBarResize(Sender: TObject);
882     procedure BrowserTabResize(Sender: TObject);
883 h677 1.318 procedure TreeViewClick(Sender: TObject);
884 yoffy 1.236 procedure TreeViewKeyDown(Sender: TObject; var Key: Word;
885     Shift: TShiftState);
886 yoffy 1.246 procedure FavoriteTreeViewMouseDown(Sender: TObject;
887 yoffy 1.248 Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
888 yoffy 1.250 procedure MessagePanelResize(Sender: TObject);
889 yoffy 1.276 procedure OnResized;
890 yoffy 1.252 procedure TreeSelectNameCopyExecute(Sender: TObject);
891 yoffy 1.260 procedure FavoriteTreeViewMouseUp(Sender: TObject;
892     Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
893 yoffy 1.375 procedure ResRangeActionUpdate(Sender: TObject);
894 yoffy 1.370 procedure SetFocusForBrowserActionExecute(Sender: TObject);
895     procedure SetFocusForBrowserActionUpdate(Sender: TObject);
896 h677 1.315 procedure SetFocusForThreadListActionExecute(Sender: TObject);
897     procedure SetFocusForCabinetActionExecute(Sender: TObject);
898 h677 1.407 procedure BrowserMaxAndFocusActionExecute(Sender: TObject);
899 h677 1.319 procedure BrowserMaxAndFocusActionUpdate(Sender: TObject);
900     procedure ThreadlistMaxAndFocusActionExecute(Sender: TObject);
901 h677 1.320 procedure ListViewExit(Sender: TObject);
902 h677 1.321 procedure SetFocusForCabinetActionUpdate(Sender: TObject);
903 yoffy 1.327 procedure ListViewSelectItem(Sender: TObject; Item: TListItem;
904     Selected: Boolean);
905 yoffy 1.329 procedure SelectTimerTimer(Sender: TObject);
906 h677 1.340 procedure SelectItemSaveForHTMLExecute(Sender: TObject);
907 h677 1.341 procedure KidokuActionExecute(Sender: TObject);
908     procedure MidokuActionExecute(Sender: TObject);
909 h677 1.343 procedure SelectItemSaveForDatExecute(Sender: TObject);
910 h677 1.345 procedure BrowserPanelCanResize(Sender: TObject; var NewWidth,
911     NewHeight: Integer; var Resize: Boolean);
912     procedure LogFolderOpenActionExecute(Sender: TObject);
913     procedure LogFolderOpenActionUpdate(Sender: TObject);
914 yoffy 1.397 procedure TabsSaveActionExecute(Sender: TObject);
915     procedure TabsOpenActionExecute(Sender: TObject);
916     procedure TabsSaveToFileActionExecute(Sender: TObject);
917 h677 1.365 procedure TabsOpenFromFileActionExecute(Sender: TObject);
918 yoffy 1.389 procedure OnlyAHundredResActionExecute(Sender: TObject);
919 yoffy 1.375 procedure OnlyKokoResActionExecute(Sender: TObject);
920     procedure OnlyNewResActionExecute(Sender: TObject);
921 h677 1.407 procedure BrowsBoradHeadActionExecute(Sender: TObject);
922 h677 1.388 procedure BrowsBoradHeadActionUpdate(Sender: TObject);
923     procedure EditNGActionExecute(Sender: TObject);
924 yoffy 1.390 procedure ThreadRangeActionUpdate(Sender: TObject);
925     procedure ThreadRangeActionExecute(Sender: TObject);
926 genyakun 1.393 procedure TabAutoSaveActionExecute(Sender: TObject);
927     procedure TabAutoLoadActionExecute(Sender: TObject);
928 yoffy 1.410 procedure ListViewColumnDragged(Sender: TObject);
929 hi_ 1.1 private
930     { Private 鐃緒申鐃緒申 }
931 h677 1.182 //RoundList : TRoundList;
932 hi_ 1.1 FSortIndex: Integer;
933     FSortOrder: Boolean;
934    
935     FEnabledCloseButton: Boolean;
936     // ThreadCreate: TThreadCreate;
937    
938     FClickNode: TTreeNode;
939     FHttpState: Boolean;
940     FHint: TResPopup;
941     FPreviewBrowser: TPreviewBrowser;
942     FPreviewURL: string;
943    
944     FBrowserSizeHeight: Integer;
945     FBrowserSizeWidth: Integer;
946    
947     // FFavorite: TFavorite;
948     FTabHintIndex: Integer;
949     FListStyle: TViewStyle; //鐃緒申鐃?鐃?鐃?鐃?鐃?鐃緒申鐃?鐃?鐃?鐃緒申
950     FItemNoVisible: Boolean; //鐃緒申鐃?鐃?鐃緒申鐃緒申鐃?鐃緒申鐃?鐃緒申鐃?
951     FViewType: TGikoViewType; //鐃緒申鐃?鐃?鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃?鐃?鐃?
952 yoffy 1.123 FActiveList: TObject;
953 h677 1.299 FActiveContent: TBrowserRecord; //
954 yoffy 1.133 FActiveBBS : TBBS;
955 hi_ 1.1 FHistoryList: TList; //鐃?鐃?鐃?鐃緒申鐃緒申鐃?鐃?
956     FTreeType: TGikoTreeType;
957     FWorkCount: Integer;
958     FNameCookie: string;
959     FMailCookie: string;
960     // FLastRoundTime: TDateTime;
961 h677 1.299 BrowserNullTab: TBrowserRecord;
962 hi_ 1.1 // DoubleClickOccurred: array [TMouseButton] of Boolean;
963     FDownloadTitle: string; //鐃?鐃?鐃緒申鐃緒申鐃?鐃?鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申
964     FDownloadMax: Integer; //鐃?鐃?鐃緒申鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?
965     FEvent: THTMLDocumentEventSink;//鐃?鐃緒申鐃?鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申鐃?
966 h677 1.14
967 h677 1.192 // Fkeynum : Integer; //鐃?鐃?鐃?鐃?鐃?鐃緒申鐃?鐃?鐃?鐃?鐃?鐃?鐃?鐃?
968 yoffy 1.29
969 yoffy 1.51 IsDraggingSelectComboBox : Boolean;
970     DraggingSelectComboBoxPosition : TPoint;
971 yoffy 1.29
972 yoffy 1.54 FSearchDialog: TSearchDialog;
973 yoffy 1.49
974 yoffy 1.100 FDropSpaceNode: TTreeNode;
975 yoffy 1.74
976 yoffy 1.107 FDragTime : Cardinal; //鐃緒申鐃緒申鐃?鐃緒申D&D鐃?
977     FDragButton : TToolButton; //鐃緒申鐃緒申鐃?鐃緒申D&D鐃?鐃緒申Drag鐃緒申鐃緒申鐃緒申Button鐃緒申鐃緒申
978     FDragWFirst : Boolean; //WebTab鐃緒申D&D鐃?
979 h677 1.84
980 yoffy 1.143 FListViewBackGroundColor : TColor; //ListView鐃緒申BackGroundColor
981     FUseOddResOddColor : Boolean; //鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃?鐃緒申
982     FOddColor : TColor; //鐃緒申鐃緒申鐃?
983 yoffy 1.152
984 yoffy 1.280 FSelectResWord : string; // 鐃緒申鐃?鐃?鐃緒申鐃緒申鐃?鐃?
985     FIsIgnoreResize : Boolean; // 鐃緒申鐃?鐃?鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
986     FIsMinimize : TMinimizeType; // 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
987     FOldFormWidth : Integer; // 鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申
988 yoffy 1.258 FToolBarSettingSender : TToolBarSettingSenderType; // 鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃?鐃?鐃緒申鐃?鐃?
989 yoffy 1.280 FMouseDownPos : TPoint; // 鐃?鐃緒申鐃?鐃?鐃?鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?
990 h677 1.303 FBrowsers: TList;
991 yoffy 1.390 FResRangeMenuSelect : Longint; ///< ResRangeButton 鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申 (鐃?鐃?鐃?鐃?鐃?鐃?鐃緒申 ResRange 鐃緒申鐃緒申)
992 yoffy 1.123 procedure SetBoardTreeNode( inBBS : TBBS );
993     function SetCategoryListItem(ABBS2ch: TBBS): Integer;
994 hi_ 1.1 function SetBoardListItem(Category: TCategory): Integer;
995     function SetThreadListItem(Board: TBoard): Integer;
996     // function GetRoundName(index: integer): string;
997    
998     procedure DownloadEnd(Sender: TObject; Item: TDownloadItem);
999     procedure DownloadMsg(Sender: TObject; Item: TDownloadItem; Msg: string; Icon: TGikoMessageIcon);
1000 q9_ 1.233 procedure WorkBegin(Sender: TObject; AWorkMode: TWorkMode; const AWorkCountMax: Integer; Number: Integer; const AWorkTitle: string);
1001 hi_ 1.1 procedure WorkEnd(Sender: TObject; AWorkMode: TWorkMode; Number: Integer);
1002     procedure Work(Sender: TObject; AWorkMode: TWorkMode; const AWorkCount: Integer; Number: Integer);
1003    
1004     procedure SetActiveList(Obj: TObject);
1005     procedure ListClick;
1006 h677 1.295 procedure ListDoubleClick(Shift: TShiftState);
1007 h677 1.299 procedure BrowserMovement(const AName: string); overload;
1008     procedure BrowserMovement(const AName: string; BrowserRecord: TBrowserRecord); overload;
1009 hi_ 1.1 procedure SelectListItem(List: TList);
1010     // procedure SetProgressValue(Number: Integer; Value: Integer; Max: Integer = -1);
1011 h677 1.299 procedure DeleteTab(ThreadItem: TThreadItem); overload;
1012     procedure DeleteTab(BrowserRecord: TBrowserRecord); overload;
1013 hi_ 1.1 function Hook(var Message: TMessage): Boolean;
1014     procedure AddRoundNameMenu(MenuItem: TMenuItem);
1015 h677 1.188 procedure SetSelectItemRound(RoundFlag: Boolean; RoundName: string); overload;
1016 yoffy 1.236 procedure SetSelectItemRound(RoundFlag: Boolean; RoundName: string; ParentName: string); overload;
1017 hi_ 1.1 procedure SetSelectRoundName(Sender: TObject);
1018     function GetCoolBand(CoolBar: TCoolBar; Control: TWinControl): TCoolBand;
1019    
1020     procedure SetMenuFont;
1021     // procedure CreateFavMenu(Folder: TFavoriteFolder);
1022     procedure CreateFavMenu(Node: TTreeNode; MenuItem: TMenuItem);
1023 yoffy 1.62 procedure FavoriteClick(Sender: TObject; ActiveTab: Boolean); overload;
1024     procedure FavoriteClick(Sender: TObject); overload;
1025 yoffy 1.100 procedure FavoriteDragOver(Sender, Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean);
1026 yoffy 1.2 procedure SelectTreeNode(Item: TObject; CallEvent: Boolean);
1027 hi_ 1.1 function OnDocumentContextMenu(Sender: TObject): WordBool;
1028     // function GetThreadText(sBoard: string; sThread: string; StNum, ToNum: Integer; Title, First: Boolean): string;
1029 yoffy 1.123 procedure SetResPopupText(ThreadItem : TThreadItem; StNum, ToNum: Integer; Title, First: Boolean);
1030 hi_ 1.1 procedure ShowTextPopup;
1031     //procedure ShowTextPopup(HintData: THintData);
1032 yoffy 1.2 // procedure SetStdToolBar;
1033     // function GetAction(ActionName: string): TContainedAction;
1034 hi_ 1.1 procedure SetLinkBar;
1035     function GetWidthAllToolButton(ToolBar: TToolBar): Integer;
1036 yoffy 1.2 procedure MenuBarChevronMenu;
1037     procedure LinkBarChevronMenu;
1038     procedure ToolBarChevronMenu(ToolBar: TToolBar);
1039 yoffy 1.51 procedure ModifySelectList;
1040 yoffy 1.100 procedure FavoriteBrowseFolder( node: TTreeNode );
1041     procedure LinkToolButtonDragDrop(Sender, Source: TObject; X, Y: Integer);
1042     procedure LinkToolButtonOnMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
1043     procedure LinkToolButtonOnMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
1044     procedure LinkToolButtonOnMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
1045 yoffy 1.85 procedure LinkToolButtonStartDrag(Sender: TObject; var DragObject: TDragObject);
1046 yoffy 1.72 function TreeNodeDataFind(Node: TTreeNode; FindPointer: Pointer): TTreeNode;
1047 yoffy 1.100 procedure FavoriteMoveTo( SenderNode, SourceNode: TTreeNode );
1048     procedure FavoriteAddTo( SenderNode: TTreeNode; Source: TObject );
1049 yoffy 1.72 procedure FavoriteDragDrop( SenderNode: TTreeNode; Source: TObject );
1050 yoffy 1.236 //
1051 yoffy 1.143 procedure SetListViewBackGroundColor(value: TColor);
1052 yoffy 1.123 procedure BBSMenuItemOnClick( Sender : TObject );
1053 yoffy 1.236 //
1054     procedure KonoresCopy(Number: Integer; ReplaceTag : Boolean);
1055 yoffy 1.216 // CoolBar 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1056     procedure SaveCoolBarSettings;
1057     // CoolBar 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1058     procedure LoadCoolBarSettings;
1059 yoffy 1.276 // 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1060     procedure OnMinimize;
1061 yoffy 1.248 // 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1062     procedure OnMinimized;
1063 yoffy 1.216 // CoolBar 鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申
1064     procedure CoolBarResized(Sender: TObject; CoolBar: TCoolBar);
1065 yoffy 1.236 // TreeView 鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申
1066     procedure TreeClick( Node : TTreeNode );
1067     // TreeView 鐃緒申鐃?鐃?鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申
1068     procedure TreeDoubleClick( Node : TTreeNode );
1069     // 鐃?鐃?鐃?鐃?鐃緒申鐃緒申鐃?鐃?鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1070     procedure HandleAppMessage(var Msg: TMsg; var Handled: Boolean);
1071     // 鐃?鐃緒申鐃?鐃?鐃緒申鐃?鐃?鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃?
1072     // 鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申 True 鐃緒申鐃緒申鐃緒申
1073 yoffy 1.275 function BrowserKeydown(var Msg: TMsg; Key: Word; State:TShiftState) : Boolean;
1074 yoffy 1.289 // 鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃?鐃? BBS 鐃緒申鐃?鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃?鐃?鐃?
1075     procedure SetBBSMenu;
1076 h677 1.315 function WebBrowserClick(Sender: TObject): WordBool;
1077 h677 1.343 procedure SkinorCSSFilesCopy(path: string);
1078 yoffy 1.397 // 鐃?鐃?鐃緒申鐃緒申
1079     function GetTabURLs(AStringList: TStringList) : Boolean;
1080     // 鐃?鐃?鐃緒申鐃緒申
1081     function SaveTabURLs : Boolean;
1082     // 鐃?鐃?鐃緒申鐃緒申鐃?鐃緒申
1083     function LoadTabURLs : Boolean;
1084 yoffy 1.362 // 鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1085 yoffy 1.364 procedure ResetBandInfo( bar : TGikoCoolBar; band : TToolBar );
1086 yoffy 1.410 /// ListView 鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申
1087     procedure ActiveListColumnSave;
1088 yoffy 1.413 /// ListView 鐃緒申 Column 鐃緒申鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1089     function ActiveListTrueColumn( column : TListColumn ) : TListColumn;
1090 hi_ 1.1 protected
1091     procedure CreateParams(var Params: TCreateParams); override;
1092 yoffy 1.2 procedure WndProc(var Message: TMessage); override;
1093 hi_ 1.1 procedure WMSetCursor(var Message: TWMSetCursor); message WM_SETCURSOR;
1094     procedure WMSettingChange(var Message: TWMWinIniChange); message WM_SETTINGCHANGE;
1095     procedure WMCopyData(var Message: TWMCopyData); message WM_COPYDATA;
1096 yoffy 1.216
1097 hi_ 1.1 public
1098     { Public 鐃緒申鐃緒申 }
1099     // FDownload: TDownload;
1100     FControlThread: TThreadControl;
1101 yoffy 1.48 procedure MoveToURL(URL: string);
1102     procedure InsertBrowserTab(ThreadItem: TThreadItem; ActiveTab: Boolean = True);
1103 hi_ 1.1 procedure ReloadBBS;
1104     function GetHttpState: Boolean;
1105     procedure SetEnabledCloseButton(Enabled: Boolean);
1106     function GetTreeNode(Data: TObject): TTreeNode;
1107     procedure AppFormDeactivate(Sender: TObject);
1108     // procedure CabinetPanelVisible(PanelVisible: Boolean);
1109     procedure ListViewAllSelect;
1110    
1111     property ListStyle: TViewStyle read FListStyle write FListStyle;
1112     property ItemNoVisible: Boolean read FItemNoVisible write FItemNoVisible;
1113     property ViewType: TGikoViewType read FViewType write FViewType;
1114    
1115     property NameCookie: string read FNameCookie write FNameCookie;
1116     property MailCookie: string read FMailCookie write FMailCookie;
1117    
1118 h677 1.299 procedure SetContent(inThread: TBrowserRecord);
1119 hi_ 1.1 function GetActiveContent: TThreadItem;
1120     function GetActiveList: TObject;
1121    
1122     property ActiveList: TObject read GetActiveList write SetActiveList;
1123     // property LastRoundTime: TDateTime read FLastRoundTime write FLastRoundTime;
1124    
1125     procedure SetListViewType(AViewType: TGikoViewType); overload;
1126     procedure SetListViewType(AViewType: TGikoViewType; SelectText: string; KubetsuChk: Boolean); overload;
1127 q9_ 1.294 procedure DownloadContent(ThreadItem: TThreadItem; ForceDownload: Boolean = False);
1128     procedure DownloadList(Board: TBoard; ForceDownload: Boolean = False);
1129 hi_ 1.1 procedure PlaySound(SoundEventName: string);
1130    
1131 yoffy 1.136 function AddHistory( FavItem: TFavoriteThreadItem ): Boolean;
1132     procedure DeleteHistory( threadItem: TThreadItem );
1133 hi_ 1.1 procedure ClearHistory;
1134 yoffy 1.135 procedure SaveHistory;
1135     procedure LoadHistory;
1136 yoffy 1.123 procedure ShowBBSTree( inBBS : TBBS );
1137 yoffy 1.248 procedure ShowBBSTreeOld( inBBS : TBBS );
1138 hi_ 1.1 procedure ShowHistoryTree;
1139     procedure SetHistoryTreeNode;
1140     // procedure SelectTreeNode(Item: TObject);
1141     procedure AddMessageList(ACaption: string; AObject: TObject; Icon: TGikoMessageIcon);
1142     procedure SetBrowserTabState;
1143     // property Favorite: TFavorite read FFavorite write FFavorite;
1144 yoffy 1.2 procedure SetToolBarPopup;
1145 yoffy 1.100 procedure ShowFavoriteAddDialog( Item : TObject );
1146 h677 1.189 procedure FavoritesURLReplace(oldURLs: TStringList; newURLs: TStringList);
1147 h677 1.226 procedure RoundListURLReplace(oldURLs: TStringList; newURLs: TStringList);
1148 yoffy 1.143 property ListViewBackGroundColor: TColor read FListViewBackGroundColor write SetListViewBackGroundColor;
1149     property UseOddResOddColor : Boolean read FUseOddResOddColor write FUseOddResOddColor;
1150     property OddColor : TColor read FOddColor write FOddColor;
1151 h677 1.109
1152 yoffy 1.209 function FindToolBarButton( bar : TToolBar; action : TAction ) : TToolButton;
1153 yoffy 1.218 procedure OnPlugInMenuItem( Sender : TObject );
1154 genyakun 1.384 procedure TabFileURLReplace(oldURLs: TStringList; newURLs: TStringList);
1155 yoffy 1.209
1156 hi_ 1.1 published
1157     property EnabledCloseButton: Boolean read FEnabledCloseButton write SetEnabledCloseButton;
1158     end;
1159    
1160     TFavoriteMenuItem = class(TMenuItem)
1161     private
1162     FData : Pointer;
1163     public
1164     property Data: Pointer read FData write FData;
1165     end;
1166    
1167 yoffy 1.123 TBBSMenuItem = class(TMenuItem)
1168     private
1169     FData : Pointer;
1170     public
1171     property Data: Pointer read FData write FData;
1172     end;
1173    
1174 hi_ 1.1 TLinkToolButton = class(TToolButton)
1175     private
1176     FData : Pointer;
1177     public
1178     property Data: Pointer read FData write FData;
1179     end;
1180    
1181 h677 1.299 TBrowserRecord = class( TObject )
1182     private
1183     FBrowser : TWebBrowser;
1184     FEvent: THTMLDocumentEventSink;//鐃?鐃緒申鐃?鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申鐃?
1185     FThread : TThreadItem;
1186     FLastSize : Integer;
1187     FRepaint : Boolean;
1188 yoffy 1.375 // FOnlyHundred: Boolean;
1189 h677 1.299 public
1190     destructor Destroy; override;
1191     property Browser : TWebBrowser read FBrowser write FBrowser;
1192     property Thread : TThreadItem read FThread write FThread;
1193     property LastSize : Integer read FLastSize write FLastSize;
1194     property Repaint : Boolean read FRepaint write FRepaint;
1195 yoffy 1.375 // property OnlyHundred : Boolean read FOnlyHundred write FOnlyHundred;
1196 h677 1.299 end;
1197    
1198 hi_ 1.1 var
1199     GikoForm: TGikoForm;
1200    
1201     implementation
1202    
1203     uses
1204     About, Option, Round, Splash, Sort, ListSelect,
1205 h677 1.183 NewBoard, MojuUtils,Clipbrd;
1206 hi_ 1.1
1207     const
1208     CAPTION_NAME: string = '鐃?鐃?鐃?鐃?';
1209     BLANK_HTML: string = 'about:blank';
1210 yoffy 1.51 SELECTCOMBOBOX_NAME: string = ''; // '鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申';
1211     SELECTCOMBOBOX_COLOR: TColor = clWindow;
1212 yoffy 1.120 //D&D鐃緒申鐃?
1213     DandD_THRESHOLD = 5; //D&D鐃緒申鐃緒申鐃?鐃?pixcel)
1214 yoffy 1.2 //鐃?鐃緒申鐃?鐃?鐃緒申鐃?鐃?鐃?鐃?鐃?鐃緒申
1215     ITEM_ICON_2CH1 = 0; //2ch鐃?鐃?鐃?鐃緒申
1216     ITEM_ICON_2CH2 = 1; //2ch鐃?鐃?鐃?鐃緒申
1217     ITEM_ICON_CATEGORY1 = 2; //鐃?鐃?鐃?鐃緒申鐃?鐃?鐃?鐃緒申
1218     ITEM_ICON_CATEGORY2 = 3; //鐃?鐃?鐃?鐃緒申鐃?鐃?鐃?鐃緒申
1219 yoffy 1.120 ITEM_ICON_BOARD_NOSUBJECT = 3; //鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申
1220 yoffy 1.2 ITEM_ICON_BOARD1 = 4; //鐃緒申鐃?鐃?鐃?鐃緒申
1221     ITEM_ICON_BOARD2 = 5; //鐃緒申鐃?鐃?鐃?鐃緒申
1222     ITEM_ICON_THREADLOG1 = 6; //鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃?鐃緒申鐃緒申鐃?
1223     ITEM_ICON_THREADLOG2 = 7; //鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃?鐃緒申鐃緒申鐃?
1224     ITEM_ICON_THREAD1 = 8; //鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃?鐃緒申鐃緒申鐃?
1225     ITEM_ICON_THREAD2 = 9; //鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃?鐃緒申鐃緒申鐃?
1226     ITEM_ICON_THREADNEW1 = 10; //鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃?
1227     ITEM_ICON_THREADNEW2 = 11; //鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃?
1228     ITEM_ICON_SORT1 = 12; //鐃?鐃?鐃?鐃?鐃?鐃?鐃緒申
1229     ITEM_ICON_SORT2 = 13; //鐃?鐃?鐃?鐃?鐃?鐃?鐃緒申
1230 yoffy 1.120 ITEM_ICON_BOARD_LOG = 17; //鐃?鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申
1231     ITEM_ICON_BOARD_NEW = 18; //鐃?鐃緒申鐃?鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申
1232 yoffy 1.2
1233     //鐃?鐃?鐃緒申鐃?鐃?鐃?鐃?鐃?鐃緒申
1234 yoffy 1.48 TOOL_ICON_HEIGHT_MAX = 16; //鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申
1235     TOOL_ICON_HEIGHT_MIN = 17; //鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申
1236     TOOL_ICON_HEIGHT_NORMAL = 18; //鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃緒申
1237     TOOL_ICON_WIDTH_MAX = 19; //鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申
1238     TOOL_ICON_WIDTH_MIN = 20; //鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申
1239     TOOL_ICON_WIDTH_NORMAL = 21; //鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃緒申
1240    
1241 yoffy 1.51 TOOL_ICON_FAV_FOLDER = 30; //鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃?鐃?鐃緒申鐃?鐃?鐃?鐃?鐃緒申
1242 yoffy 1.100 TOOL_ICON_FAV_BOARD = 31; //鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申
1243 yoffy 1.51 TOOL_ICON_FAV_THREAD = 32; //鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃緒申
1244 hi_ 1.1
1245     HTML_FILE_NAME = 'temp_preview.html';
1246    
1247 yoffy 1.253 WM_XBUTTONDOWN = $020B;
1248     WM_XBUTTONUP = $020C;
1249     WM_XBUTTONDBLCLK = $020D;
1250     XBUTTON1 = $0001;
1251     XBUTTON2 = $0002;
1252 yoffy 1.278 USER_TREECLICK = WM_USER + 2000;
1253     USER_RESIZED = WM_USER + 2001;
1254     USER_MINIMIZED = WM_USER + 2002;
1255     USER_SETLINKBAR = WM_USER + 2003;
1256 h677 1.340 SELECTTIME_INTERBAL = 110;
1257    
1258     BROWSER_COUNT = 5; //鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申
1259 hi_ 1.1 {$R *.DFM}
1260    
1261     procedure TGikoForm.CreateParams(var Params: TCreateParams);
1262     begin
1263     inherited;
1264     if FormStyle in [fsNormal, fsStayOnTop] then begin
1265     if BorderStyle in [bsSingle, bsSizeable] then begin
1266     Params.ExStyle := Params.ExStyle or WS_EX_APPWINDOW;
1267     Params.WndParent := 0;
1268     end;
1269     end;
1270     end;
1271    
1272     procedure TGikoForm.FormCreate(Sender: TObject);
1273     const
1274     TVS_NOTOOLTIPS = $0080;
1275     var
1276     FileName: string;
1277     Style: DWORD;
1278     msg: string;
1279     i: Integer;
1280     wp: TWindowPlacement;
1281 hi_ 1.32 s: string;
1282 h677 1.303 newbrowser: TWebBrowser;
1283 hi_ 1.1 begin
1284     {$IFDEF DEBUG}
1285     AllocConsole;
1286     Writeln('============================================================');
1287     Writeln(' 鐃?鐃?鐃?鐃?鐃?鐃?鐃?鐃? 鐃?鐃緒申鐃?鐃?鐃緒申');
1288     Writeln('');
1289     Writeln(' 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?');
1290     Writeln(' 鐃?鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃?鐃?鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申');
1291     Writeln('============================================================');
1292     {$ENDIF}
1293     Application.OnDeactivate := AppFormDeactivate;
1294     Self.OnDeactivate := AppFormDeactivate;
1295     Application.HookMainWindow(Hook);
1296 h677 1.316 Application.OnMessage := HandleAppMessage; //鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?by鐃?鐃緒申鐃緒申鐃緒申
1297 h677 1.345 Self.DoubleBuffered := true;
1298 hi_ 1.1 FTreeType := gttNone;
1299    
1300 yoffy 1.51 FSearchDialog := nil;
1301 h677 1.299 BrowserNullTab := TBrowserRecord.Create;
1302     BrowserNullTab.Browser := Browser;
1303 h677 1.316 BrowserNullTab.Browser.Navigate(BLANK_HTML);
1304 h677 1.303 FBrowsers := TList.Create;
1305 h677 1.340 for i := 0 to BROWSER_COUNT -1 do begin
1306 h677 1.345 FBrowsers.Add(TWebBrowser.Create(nil));
1307     newBrowser := FBrowsers[FBrowsers.Count - 1];
1308 h677 1.303 TOleControl(newBrowser).Parent := BrowserPanel;
1309 h677 1.345 newBrowser.Align := alNone;
1310 h677 1.346 newBrowser.Left := 0;
1311     newBrowser.Top := 0;
1312     //newBrowser.DoubleBuffered := true;
1313 h677 1.303 newBrowser.OnDocumentComplete := BrowserDocumentComplete;
1314     newBrowser.OnBeforeNavigate2 := BrowserBeforeNavigate2;
1315     newBrowser.OnEnter := BrowserEnter;
1316     newBrowser.OnNewWindow2 := BrowserNewWindow2;
1317     newBrowser.OnStatusTextChange := BrowserStatusTextChange;
1318 h677 1.333 //newBrowser.OnTitleChange := BrowserTitleChange;
1319 h677 1.306 newBrowser.Navigate(BLANK_HTML);
1320 h677 1.316 ShowWindow(newBrowser.Handle, SW_HIDE);
1321 h677 1.345
1322 h677 1.303 end;
1323 h677 1.316 BrowserNullTab.Browser.BringToFront;
1324     ShowWindow(BrowserNullTab.Browser.Handle, SW_SHOW);
1325 h677 1.303
1326 yoffy 1.216 // 鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1327 yoffy 1.248 FIsIgnoreResize := True;
1328 yoffy 1.216
1329 hi_ 1.1 //鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申
1330     Screen.Cursors[5] := LoadCursor(HInstance, 'GIKOHAND');
1331    
1332    
1333     //鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1334     AddressHistoryDM.ReadHistory(AddressComboBox.Items, GikoSys.Setting.AddressHistoryCount);
1335    
1336 yoffy 1.135 // 鐃?鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃?鐃?(ReadBoardFile, LoadHistory 鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申)
1337 yoffy 1.107 InitializeBoardPlugIns;
1338 yoffy 1.105
1339 hi_ 1.1 EnabledCloseButton := True;
1340 h677 1.176
1341    
1342     //鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申
1343     RoundList := TRoundList.Create;
1344     RoundList.LoadRoundBoardFile;
1345    
1346 yoffy 1.210 // 鐃?鐃?鐃?鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申(ReadFavorite 鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申)
1347     GikoSys.ListBoardFile;
1348 h677 1.176
1349     RoundList.LoadRoundThreadFile;
1350    
1351 yoffy 1.236 if RoundList.OldFileRead or ( RoundList.Count[grtItem] > 0 ) then
1352     GikoSys.ListBoardFile;
1353 h677 1.176
1354 yoffy 1.123 // 鐃緒申鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申
1355 yoffy 1.289 SetBBSMenu;
1356 h677 1.176
1357 yoffy 1.135 // 鐃?鐃?鐃?鐃緒申鐃緒申鐃?鐃?(LoadHistory 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申)
1358     FHistoryList := TList.Create;
1359    
1360     // 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1361     LoadHistory;
1362    
1363 yoffy 1.123 //鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1364     // FFavorite := TFavorite.Create(FavoriteTreeView);
1365     FavoriteDM.SetFavTreeView(FavoriteTreeView);
1366     FavoriteDM.ReadFavorite;
1367 hi_ 1.1
1368     //鐃緒申鐃?鐃?鐃?鐃?鐃?鐃緒申
1369     ListView.ViewStyle := GikoSys.Setting.ListStyle;
1370    
1371     //鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃?
1372     // MainCoolBar.Top := 0;
1373     // MainCoolBar.Left := 0;
1374    
1375     //鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃?
1376     AnimePanel.Top := 0;
1377     AnimePanel.Left := 0;
1378    
1379     //鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1380    
1381     //鐃?鐃緒申鐃?鐃?鐃?鐃?
1382     CabinetPanel.Width := GikoSys.Setting.CabinetWidth;
1383    
1384     //鐃緒申鐃?鐃?鐃?鐃?鐃?鐃?
1385     MsgBarVisibleAction.Checked := GikoSys.Setting.MessageBarVisible;
1386     MsgBarVisibleActionExecute(nil);
1387     MessagePanel.Height := GikoSys.Setting.MessegeBarHeight;
1388    
1389     //鐃?鐃?鐃?鐃?鐃?鐃?鐃?
1390     StatusBarVisibleAction.Checked := GikoSys.Setting.StatusBarVisible;
1391     StatusBarVisibleActionExecute(nil);
1392    
1393     //鐃?鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申
1394     TreeView.Items.BeginUpdate;
1395 yoffy 1.100 FavoriteTreeView.Items.BeginUpdate;
1396 hi_ 1.1 ListView.Items.BeginUpdate;
1397     try
1398     TreeView.Font.Name := GikoSys.Setting.CabinetFontName;
1399     TreeView.Font.Size := GikoSys.Setting.CabinetFontSize;
1400     TreeView.Font.Color := GikoSys.Setting.CabinetFontColor;
1401     TreeView.Color := GikoSys.Setting.CabinetBackColor;
1402    
1403 yoffy 1.67 FavoriteTreeView.Font.Name := GikoSys.Setting.CabinetFontName;
1404     FavoriteTreeView.Font.Size := GikoSys.Setting.CabinetFontSize;
1405     FavoriteTreeView.Font.Color := GikoSys.Setting.CabinetFontColor;
1406     FavoriteTreeView.Color := GikoSys.Setting.CabinetBackColor;
1407    
1408 hi_ 1.1 ListView.Font.Name := GikoSys.Setting.ListFontName;
1409     ListView.Font.Size := GikoSys.Setting.ListFontSize;
1410     ListView.Font.Color := GikoSys.Setting.ListFontColor;
1411 h677 1.109 //ListView.Color := GikoSys.Setting.ListBackColor;
1412 yoffy 1.236 ListViewBackGroundColor := GikoSys.Setting.ListBackColor;
1413     FUseOddResOddColor := GikoSys.Setting.UseOddColorOddResNum;
1414     FOddColor := GikoSys.Setting.OddColor;
1415 h677 1.109
1416 hi_ 1.1 finally
1417     TreeView.Items.EndUpdate;
1418 yoffy 1.100 FavoriteTreeView.Items.EndUpdate;
1419 hi_ 1.1 ListView.Items.EndUpdate;
1420     end;
1421     //ViewNoButton.Down := GikoSys.Setting.ListViewNo;
1422     ListNumberVisibleAction.Checked := GikoSys.Setting.ListViewNo;
1423    
1424     //鐃?鐃緒申鐃?鐃?鐃?鐃?鐃?鐃?鐃緒申鐃?
1425     BrowserTab.Font.Name := GikoSys.Setting.BrowserTabFontName;
1426     BrowserTab.Font.Size := GikoSys.Setting.BrowserTabFontSize;
1427 yoffy 1.133 FDragWFirst := false;
1428 h677 1.299 SetContent(BrowserNullTab); //鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃?鐃緒申
1429 hi_ 1.1 // TreeView.TopItem.Expanded := True; //鐃?鐃緒申鐃?鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申
1430     // TreeView.Selected := TreeView.Items[0]; //鐃?鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申
1431 h677 1.299
1432 hi_ 1.1
1433     //鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申
1434     wp.length := sizeof(wp);
1435     wp.rcNormalPosition.Top := GikoSys.Setting.WindowTop;
1436     wp.rcNormalPosition.Left := GikoSys.Setting.WindowLeft;
1437     wp.rcNormalPosition.Bottom := GikoSys.Setting.WindowTop + GikoSys.Setting.WindowHeight;
1438     wp.rcNormalPosition.Right := GikoSys.Setting.WindowLeft + GikoSys.Setting.WindowWidth;
1439     wp.showCmd := SW_HIDE;
1440     SetWindowPlacement(Handle, @wp);
1441    
1442     // SetBounds(GikoSys.Setting.WindowLeft, GikoSys.Setting.WindowTop,
1443     // GikoSys.Setting.WindowWidth, GikoSys.Setting.WindowHeight);
1444     if GikoSys.Setting.WindowMax then
1445 yoffy 1.248 WindowState := wsMaximized;
1446 hi_ 1.1
1447     //鐃?鐃?鐃?鐃?鐃緒申
1448     try
1449     FileName := GikoSys.GetAppDir + 'gikoNavi.avi';
1450     if FileExists(FileName) then
1451     Animate.FileName := FileName;
1452     except
1453     end;
1454    
1455     //鐃?鐃?鐃?鐃?
1456     FNameCookie := '';
1457     FMailCookie := '';
1458    
1459     //鐃?鐃緒申鐃?鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1460     AllItemAction.Checked := True;
1461 yoffy 1.126 AllResAction.Checked := True;
1462 hi_ 1.1
1463     //TreeView鐃緒申鐃緒申鐃緒申鐃?鐃緒申ToolTip鐃緒申鐃緒申鐃?鐃緒申
1464     Style := GetWindowLong(TreeView.Handle, GWL_STYLE);
1465     Style := Style or TVS_NOTOOLTIPS;
1466     SetWindowLong(TreeView.Handle, GWL_STYLE, Style);
1467    
1468     // 鐃?鐃緒申鐃?鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1469     TreeView.Align := alClient;
1470 yoffy 1.57 FavoriteTreeView.Align := alClient;
1471 hi_ 1.1 FavoriteTreeView.Visible := False;
1472    
1473     //鐃?鐃緒申鐃?鐃?鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申
1474     // FBrowserSizeFlag := False;
1475     // FBrowserSizeHeight := ViewPanel.Height;
1476    
1477     FBrowserSizeHeight := GikoSys.Setting.ListHeight;
1478     FBrowserSizeWidth := GikoSys.Setting.ListWidth;
1479    
1480     ArrangeAction.Checked := not (GikoSys.Setting.ListOrientation = gloVertical);
1481     ArrangeAction.Execute;
1482    
1483     if GikoSys.Setting.ListOrientation = gloHorizontal then begin
1484     case GikoSys.Setting.ListWidthState of
1485     glsMax: begin
1486     ViewPanel.Width := 1;
1487 yoffy 1.2 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_NORMAL;
1488     BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_MIN;
1489 hi_ 1.1 end;
1490     glsMin: begin
1491     ViewPanel.Width := GikoSys.Setting.ListWidth;
1492 yoffy 1.2 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_MAX;
1493     BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_NORMAL;
1494 hi_ 1.1 end;
1495     else begin
1496     ViewPanel.Width := GikoSys.Setting.ListWidth;
1497 yoffy 1.2 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_MAX;
1498     BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_MIN;
1499 hi_ 1.1 end;
1500     end;
1501     end else begin
1502     case GikoSys.Setting.ListHeightState of
1503     glsMax: begin
1504     ViewPanel.Height := 1;
1505 yoffy 1.2 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_NORMAL;
1506     BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_MIN;
1507 hi_ 1.1 end;
1508     glsMin: begin
1509     ViewPanel.Height := GikoSys.Setting.ListHeight;
1510 yoffy 1.2 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_MAX;
1511     BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_NORMAL;
1512 hi_ 1.1 end;
1513     else begin
1514     ViewPanel.Height := GikoSys.Setting.ListHeight;
1515 yoffy 1.2 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_MAX;
1516     BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_MIN;
1517 hi_ 1.1 end;
1518     end;
1519     end;
1520    
1521     //鐃?鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申
1522     // ProgressBar.Visible := False;
1523     ProgressBar.Parent := StatusBar;
1524     ProgressBar.Top := 2;
1525     ProgressBar.Left := 0;
1526     ProgressBar.Width := StatusBar.Panels[0].Width;
1527     ProgressBar.Height := StatusBar.Height - 2;
1528     ProgressBar.Position := 0;
1529    
1530     //鐃?鐃?鐃緒申鐃緒申鐃?鐃?鐃?鐃?鐃?鐃?鐃?鐃?
1531     FControlThread := TThreadControl.Create(True);
1532     FControlThread.MaxThreadCount := 1;
1533     FControlThread.Resume;
1534     FControlThread.OnDownloadEnd := DownloadEnd;
1535     FControlThread.OnDownloadMsg := DownloadMsg;
1536     FControlThread.OnWork := Work;
1537     FControlThread.OnWorkBegin := WorkBegin;
1538     FControlThread.OnWorkEnd := WorkEnd;
1539     // ProgressPanel.Width := FControlThread.MaxThreadCount * 12;
1540    
1541 yoffy 1.51 // 鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1542     SelectComboBox.Items.Assign( GikoSys.Setting.SelectTextList );
1543 yoffy 1.2
1544 hi_ 1.1 //鐃?鐃緒申鐃?鐃?鐃?鐃?鐃緒申鐃緒申
1545     SetBrowserTabState;
1546    
1547     BrowserBoardNameLabel.Caption := '';
1548     BrowserNameLabel.Caption := '';
1549     FWorkCount := 0;
1550    
1551     FTabHintIndex := -1;
1552    
1553     //鐃緒申鐃緒申鐃?鐃?鐃?
1554     SetLinkBar;
1555    
1556     //鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?
1557     SetMenuFont;
1558    
1559     //鐃?鐃?鐃緒申鐃?鐃?Wrapable
1560     ListToolBar.Wrapable := GikoSys.Setting.ListToolBarWrapable;
1561     BrowserToolBar.Wrapable := GikoSys.Setting.BrowserToolBarWrapable;
1562    
1563 yoffy 1.236 KeepDefaultToolButton(StdToolBar, TmpToolBar);
1564     KeepDefaultToolButton(ListToolBar, TmpToolBar);
1565     KeepDefaultToolButton(BrowserToolBar, TmpToolBar);
1566 h677 1.234
1567 yoffy 1.236 MakeDefaultINIFile();
1568 yoffy 1.2 //鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1569     ReadToolBarSetting(ActionList, StdToolBar);
1570     ReadToolBarSetting(ActionList, ListToolBar);
1571 yoffy 1.51 try
1572     for i := ListToolBar.ControlCount - 1 downto 0 do
1573     begin
1574     if ListToolBar.Controls[ i ].Action = SelectItemAction then
1575     begin
1576     // 鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申
1577     if (i + 1) < ListToolBar.ControlCount then
1578     if ListToolBar.Controls[ i + 1 ] is TToolButton then
1579     if TToolButton( ListToolBar.Controls[ i + 1 ] ).Style = tbsSeparator then
1580     ListToolBar.Controls[ i + 1 ].Visible := False;
1581    
1582     // 鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃?鐃緒申
1583     ListToolBar.Controls[ i ].Visible := False;
1584     // 鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃?鐃緒申
1585 yoffy 1.239 SelectComboBox.Parent := ListToolBar;
1586 yoffy 1.51 SelectComboBox.Left := ListToolBar.Controls[ i ].Left;
1587     SelectComboBox.Width := GikoSys.Setting.SelectComboBoxWidth;
1588     // 鐃?鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃?鐃緒申
1589 yoffy 1.239 SelectComboBoxSplitter.Parent := ListToolBar;
1590 yoffy 1.51 SelectComboBoxSplitter.Left := SelectComboBox.Left + SelectComboBox.Width;
1591    
1592     break;
1593     end;
1594     end;
1595     except
1596     end;
1597 yoffy 1.2 ReadToolBarSetting(ActionList, BrowserToolBar);
1598     SetToolBarPopup;
1599 yoffy 1.375
1600     // 鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申
1601 yoffy 1.383 FResRangeMenuSelect := GikoSys.ResRange;
1602 yoffy 1.375 case GikoSys.ResRange of
1603     Ord( grrAll ):
1604     begin
1605     AllResAction.Execute;
1606     end;
1607     Ord( grrSelect ):
1608     begin
1609 yoffy 1.383 SelectComboBox.Text := SelectComboBox.Items[ 1 ];
1610 yoffy 1.375 SelectResAction.Checked := True;
1611     end;
1612     else
1613     // ResRangeAction.Execute;
1614     case FResRangeMenuSelect of
1615     Ord( grrKoko ): OnlyKokoResAction.Checked := True;
1616     Ord( grrNew ): OnlyNewResAction.Checked := True;
1617 yoffy 1.389 100: OnlyAHundredResAction.Checked := True;
1618 yoffy 1.375 end;
1619     end;
1620    
1621 yoffy 1.390 // 鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申
1622     // ThreadRangeAction.Execute;
1623     case GikoSys.Setting.ThreadRange of
1624     gtrAll:
1625     begin
1626     AllItemAction.Checked := True;
1627     ViewType := gvtAll;
1628     end;
1629     gtrLog:
1630     begin
1631     LogItemAction.Checked := True;
1632     ViewType := gvtLog;
1633     end;
1634     gtrNew:
1635     begin
1636     NewItemAction.Checked := True;
1637     ViewType := gvtNew;
1638     end;
1639     end;
1640    
1641 hi_ 1.1 //鐃?鐃?鐃緒申鐃?鐃?鐃?
1642     AddressComboBox.TabStop := GikoSys.Setting.AddressBarTabStop;
1643    
1644 yoffy 1.2 //鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申FormShow鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1645    
1646     //鐃?鐃?鐃?鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃?鐃?鐃緒申
1647     if not FileExists(GikoSys.GetBoardFileName) then begin
1648     msg := '鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃?鐃緒申鐃?鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申' + #13#10#13#10
1649     + '鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃?鐃?鐃緒申鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申' + #13#10
1650     + '鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃?鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?';
1651     MsgBox(SplashWindow.Handle, msg, '鐃?鐃?鐃?鐃?', MB_OK or MB_ICONINFORMATION);
1652     NewBoardAction.Execute;
1653     end;
1654    
1655     //鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1656     GikoSys.LoadKeySetting(ActionList);
1657    
1658     //鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申
1659     // FLastRoundTime := 0;
1660    
1661     //ResHint
1662     FHint := TResPopup.Create(Self);
1663    
1664 yoffy 1.100 // 鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申
1665 h677 1.299 CabinetVisible( False );
1666 yoffy 1.141 if GikoSys.Setting.CabinetVisible then begin
1667     i := CabinetSelectPopupMenu.Items.Count - 1;
1668     if GikoSys.Setting.CabinetIndex = i - 1 then
1669     CabinetHistoryAction.Execute
1670     else if GikoSys.Setting.CabinetIndex = i then
1671     CabinetFavoriteAction.Execute
1672     else begin
1673     if GikoSys.Setting.CabinetIndex < Length( BBSs ) then
1674     ShowBBSTree( BBSs[ GikoSys.Setting.CabinetIndex ] );
1675 yoffy 1.265 // 鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申 2
1676     FIsIgnoreResize := True;
1677 yoffy 1.141 CabinetBBSAction.Execute;
1678     end;
1679     end else begin
1680 yoffy 1.248 ShowBBSTreeOld( BBSs[ 0 ] );
1681     PostMessage( Handle, USER_TREECLICK, 0, 0 );
1682 yoffy 1.141 end;
1683 yoffy 1.67
1684 yoffy 1.265 // 鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申 3
1685 yoffy 1.248 FIsIgnoreResize := True;
1686    
1687 yoffy 1.2 //鐃?鐃?鐃?鐃緒申鐃?鐃?鐃緒申
1688     if GikoSys.Setting.AutoLogin then
1689     LoginAction.Execute;
1690    
1691     //鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃緒申鐃緒申鐃?鐃?鐃?
1692     for i := 1 to ParamCount do begin
1693     MoveToURL(ParamStr(i));
1694     end;
1695     // SetStdToolBar;
1696     // SetLinkBar;
1697 h677 1.22
1698 hi_ 1.32 s := GikoSys.FAbon.NGwordname;
1699     StatusBar.Panels[2].Text := s;
1700     StatusBar.Panels[2].Width := Max(StatusBar.Canvas.TextWidth(s), 100);
1701     StatusBarResize(Sender);
1702 h677 1.187
1703 yoffy 1.236 dummy1.Caption := ItemReservPMenu.Caption;
1704     dummy1.Hint := ItemReservPMenu.Hint;
1705 yoffy 1.216
1706 yoffy 1.236 //Samba24鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃?鐃?鐃?
1707     GikoSys.SambaFileExists();
1708 h677 1.299
1709 genyakun 1.373 //鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申 (AV鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申)
1710 yoffy 1.2 end;
1711    
1712 yoffy 1.216 // CoolBar 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1713     procedure TGikoForm.SaveCoolBarSettings;
1714 yoffy 1.2 var
1715 yoffy 1.216 i : Integer;
1716     CoolSet : TCoolSet;
1717 yoffy 1.2 begin
1718    
1719 yoffy 1.248 if IsIconic( Handle ) or FIsIgnoreResize then
1720 yoffy 1.216 Exit;
1721 yoffy 1.2
1722 yoffy 1.216 //鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申(Main)
1723     for i := 0 to MAIN_COOLBAND_COUNT - 1 do begin
1724     CoolSet.FCoolID := MainCoolBar.Bands[i].ID;
1725     CoolSet.FCoolWidth := MainCoolBar.Bands[i].Width;
1726     CoolSet.FCoolBreak := MainCoolBar.Bands[i].Break;
1727     GikoSys.Setting.MainCoolSet[i] := CoolSet;
1728     end;
1729     //鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申(Board)
1730     for i := 0 to LIST_COOLBAND_COUNT - 1 do begin
1731     CoolSet.FCoolID := ListCoolBar.Bands[i].ID;
1732     CoolSet.FCoolWidth := ListCoolBar.Bands[i].Width;
1733     CoolSet.FCoolBreak := ListCoolBar.Bands[i].Break;
1734     GikoSys.Setting.ListCoolSet[i] := CoolSet;
1735     end;
1736     //鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申(Browser)
1737     for i := 0 to BROWSER_COOLBAND_COUNT - 1 do begin
1738     CoolSet.FCoolID := BrowserCoolBar.Bands[i].ID;
1739     CoolSet.FCoolWidth := BrowserCoolBar.Bands[i].Width;
1740     CoolSet.FCoolBreak := BrowserCoolBar.Bands[i].Break;
1741     GikoSys.Setting.BrowserCoolSet[i] := CoolSet;
1742 yoffy 1.2 end;
1743    
1744 yoffy 1.216 end;
1745 yoffy 1.2
1746 yoffy 1.216 // CoolBar 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1747     procedure TGikoForm.LoadCoolBarSettings;
1748     var
1749     i : Integer;
1750     CoolSet : TCoolSet;
1751     begin
1752 yoffy 1.2
1753 hi_ 1.1 //鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申(Main)
1754     MainCoolBar.Bands.BeginUpdate;
1755     try
1756 yoffy 1.216 // for i := 0 to MainCoolBar.Bands.Count - 1 do begin
1757     for i := MAIN_COOLBAND_COUNT - 1 downto 0 do begin
1758 hi_ 1.1 CoolSet := GikoSys.Setting.MainCoolSet[i];
1759 yoffy 1.263 if (CoolSet.FCoolID = -1) or (CoolSet.FCoolWidth = -1) then begin
1760 yoffy 1.265 FIsIgnoreResize := False;
1761 yoffy 1.263 SaveCoolBarSettings;
1762     Exit;
1763     end;
1764 hi_ 1.1 MainCoolBar.Bands.FindItemID(CoolSet.FCoolID).Index := i;
1765     MainCoolBar.Bands[i].Break := CoolSet.FCoolBreak;
1766 yoffy 1.264 MainCoolBar.Bands[i].Width := CoolSet.FCoolWidth;
1767 hi_ 1.1 end;
1768     finally
1769     MainCoolBar.Bands.EndUpdate;
1770     end;
1771    
1772     //鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申(Board)
1773     ListCoolBar.Bands.BeginUpdate;
1774     try
1775 yoffy 1.216 // for i := 0 to ListCoolBar.Bands.Count - 1 do begin
1776     for i := LIST_COOLBAND_COUNT - 1 downto 0 do begin
1777 hi_ 1.1 CoolSet := GikoSys.Setting.ListCoolSet[i];
1778 yoffy 1.263 if (CoolSet.FCoolID = -1) or (CoolSet.FCoolWidth = -1) then begin
1779 yoffy 1.265 FIsIgnoreResize := False;
1780 yoffy 1.263 SaveCoolBarSettings;
1781     Exit;
1782     end;
1783 hi_ 1.1 ListCoolBar.Bands.FindItemID(CoolSet.FCoolID).Index := i;
1784     ListCoolBar.Bands[i].Break := CoolSet.FCoolBreak;
1785     ListCoolBar.Bands[i].Width := CoolSet.FCoolWidth;
1786     end;
1787     finally
1788     ListCoolBar.Bands.EndUpdate;
1789     end;
1790    
1791     //鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申(Browser)
1792     BrowserCoolBar.Bands.BeginUpdate;
1793     try
1794 yoffy 1.216 // for i := 0 to BrowserCoolBar.Bands.Count - 1 do begin
1795     for i := BROWSER_COOLBAND_COUNT - 1 downto 0 do begin
1796 hi_ 1.1 CoolSet := GikoSys.Setting.BrowserCoolSet[i];
1797 yoffy 1.263 if (CoolSet.FCoolID = -1) or (CoolSet.FCoolWidth = -1) then begin
1798 yoffy 1.265 FIsIgnoreResize := False;
1799 yoffy 1.263 SaveCoolBarSettings;
1800     Exit;
1801     end;
1802 hi_ 1.1 BrowserCoolBar.Bands.FindItemID(CoolSet.FCoolID).Index := i;
1803     BrowserCoolBar.Bands[i].Break := CoolSet.FCoolBreak;
1804     BrowserCoolBar.Bands[i].Width := CoolSet.FCoolWidth;
1805     end;
1806     finally
1807     BrowserCoolBar.Bands.EndUpdate;
1808     end;
1809    
1810     end;
1811 yoffy 1.216
1812     //
1813     //
1814     //
1815     procedure TGikoForm.FormShow(Sender: TObject);
1816     begin
1817     ShowWindow(Application.Handle, SW_HIDE);
1818    
1819     //FormCreate鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申FormShow鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1820     //鐃?鐃?鐃緒申鐃?鐃?鐃?鐃緒申
1821     StdToolBarVisibleAction.Checked := GikoSys.Setting.StdToolBarVisible;
1822     StdToolBarVisibleActionExecute( nil );
1823     AddressBarVisibleAction.Checked := GikoSys.Setting.AddressBarVisible;
1824     AddressBarVisibleActionExecute( nil );
1825     LinkBarVisibleAction.Checked := GikoSys.Setting.LinkBarVisible;
1826     LinkBarVisibleActionExecute( nil );
1827     ListToolBarVisibleAction.Checked := GikoSys.Setting.ListToolBarVisible;
1828     ListToolBarVisibleActionExecute( nil );
1829     ListNameBarVisibleAction.Checked := GikoSys.Setting.ListNameBarVisible;
1830     ListNameBarVisibleActionExecute( nil );
1831     BrowserToolBarVisibleAction.Checked := GikoSys.Setting.BrowserToolBarVisible;
1832     BrowserToolBarVisibleActionExecute( nil );
1833     BrowserNameBarVisibleAction.Checked := GikoSys.Setting.BrowserNameBarVisible;
1834     BrowserNameBarVisibleActionExecute( nil );
1835    
1836     //鐃?鐃緒申鐃?鐃?鐃?鐃?
1837     BrowserTabVisibleAction.Checked := GikoSys.Setting.BrowserTabVisible;
1838     BrowserTabVisibleActionExecute(nil);
1839    
1840     if GikoSys.Setting.BrowserTabPosition = gtpTop then begin
1841     BrowserTabTopAction.Checked := True;
1842     BrowserTabTopActionExecute(nil);
1843     end else begin
1844     BrowserTabBottomAction.Checked := True;
1845     BrowserTabBottomActionExecute(nil);
1846     end;
1847    
1848     if GikoSys.Setting.BrowserTabStyle = gtsTab then begin
1849     BrowserTabTabStyleAction.Checked := True;
1850     BrowserTabTabStyleActionExecute(nil);
1851     end else if GikoSys.Setting.BrowserTabStyle = gtsButton then begin
1852     BrowserTabButtonStyleAction.Checked := True;
1853     BrowserTabButtonStyleActionExecute(nil);
1854     end else begin
1855     BrowserTabFlatStyleAction.Checked := True;
1856     BrowserTabFlatStyleActionExecute(nil);
1857     end;
1858    
1859 yoffy 1.408 // ListView 鐃緒申鐃?鐃?鐃?鐃?鐃緒申鐃?鐃?
1860     ListView.LVMInstallHeaderDrag;
1861    
1862 yoffy 1.216 // CoolBar 鐃緒申鐃緒申
1863     LoadCoolBarSettings;
1864 yoffy 1.265
1865     FIsIgnoreResize := False;
1866 genyakun 1.382
1867 yoffy 1.397 //TabAutoLoad
1868     //FormCrete鐃緒申鐃緒申鐃緒申鐃緒申鐃?
1869     if GikoSys.Setting.TabAutoLoadSave then begin
1870     TabAutoLoadAction.Execute;
1871     end;
1872 genyakun 1.382
1873 yoffy 1.239 end;
1874 yoffy 1.216
1875 hi_ 1.1 procedure TGikoForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
1876     begin
1877 yoffy 1.331 // if GikoForm.WindowState <> wsMinimized then
1878     // SaveCoolBarSettings;
1879 yoffy 1.236 if ( GikoSys.Setting.ShowDialogForEnd ) and
1880     (MessageDlg('鐃?鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?', mtConfirmation,[mbOk, mbCancel], 0) = mrCancel ) then begin
1881     CanClose := false;
1882     Exit;
1883     end else begin
1884     CanClose := True;
1885 yoffy 1.398 if GikoSys.Setting.TabAutoLoadSave then begin
1886     TabAutoSaveAction.Execute;
1887     end;
1888 yoffy 1.236 end;
1889 h677 1.241 //Application.HookMainWindow(Hook);
1890     Application.UnhookMainWindow(Hook);
1891     Application.Terminate;
1892     end;
1893    
1894     procedure TGikoForm.FormDestroy(Sender: TObject);
1895     var
1896 yoffy 1.376 i : Integer;
1897 h677 1.241 // CoolSet: TCoolSet;
1898 yoffy 1.376 wp : TWindowPlacement;
1899     tmpBool : Boolean;
1900 h677 1.241 begin
1901 h677 1.181 // Application.OnDeactivate := nil;
1902     // Self.OnDeactivate := nil;
1903 yoffy 1.236 try
1904 yoffy 1.410 ActiveListColumnSave;
1905 yoffy 1.236 except
1906     end;
1907     try
1908 h677 1.234 //鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申
1909     wp.length := sizeof(wp);
1910     GetWindowPlacement(Handle, @wp);
1911     GikoSys.Setting.WindowTop := wp.rcNormalPosition.Top;
1912     GikoSys.Setting.WindowLeft := wp.rcNormalPosition.Left;
1913     GikoSys.Setting.WindowHeight := wp.rcNormalPosition.Bottom - wp.rcNormalPosition.Top;
1914     GikoSys.Setting.WindowWidth := wp.rcNormalPosition.Right - wp.rcNormalPosition.Left;
1915     GikoSys.Setting.WindowMax := WindowState = wsMaximized;
1916    
1917     GikoSys.Setting.ListStyle := ListView.ViewStyle;
1918     GikoSys.Setting.CabinetVisible := CabinetVisibleAction.Checked;
1919     GikoSys.Setting.CabinetWidth := CabinetPanel.Width;
1920     GikoSys.Setting.ListHeight := FBrowserSizeHeight;
1921     GikoSys.Setting.ListWidth := FBrowserSizeWidth;
1922     if ArrangeAction.Checked then
1923     GikoSys.Setting.ListOrientation := gloVertical
1924     else
1925     GikoSys.Setting.ListOrientation := gloHorizontal;
1926     GikoSys.Setting.MessegeBarHeight := MessagePanel.Height;
1927 yoffy 1.236 except
1928 yoffy 1.2 end;
1929 yoffy 1.378
1930     try
1931     // 鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申
1932     if not GikoSys.Setting.ResRangeHold then
1933 yoffy 1.380 GikoSys.Setting.ResRange := FResRangeMenuSelect;
1934 yoffy 1.378 except
1935     end;
1936    
1937     // 鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃?鐃?鐃?鐃?鐃緒申 CoolBar 鐃緒申鐃緒申
1938 yoffy 1.216 // 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1939 yoffy 1.263 {
1940     // 鐃緒申FormDestroy鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申鐃?2004/04/09鐃?
1941 yoffy 1.216 // CoolBar 鐃緒申鐃緒申
1942 h677 1.262 if GikoForm.WindowState <> wsMinimized then
1943     SaveCoolBarSettings;
1944 yoffy 1.263 }
1945 yoffy 1.236 try
1946 h677 1.234 GikoSys.Setting.WriteWindowSettingFile;
1947     GikoSys.Setting.WriteNameMailSettingFile;
1948 yoffy 1.236 except
1949     end;
1950 yoffy 1.2
1951     //鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
1952 hi_ 1.1 try
1953 yoffy 1.236 //FavoriteDM鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申
1954 yoffy 1.2 FavoriteDM.WriteFavorite;
1955 yoffy 1.236 FavoriteDM.Clear;
1956 hi_ 1.1 except
1957     end;
1958    
1959     try
1960     //鐃?鐃?鐃?鐃緒申鐃?鐃?
1961 h677 1.321 tmpBool := GikoSys.Setting.ShowDialogForAllTabClose;
1962     GikoSys.Setting.ShowDialogForAllTabClose := false;
1963     AllTabCloseAction.Execute;
1964     GikoSys.Setting.ShowDialogForAllTabClose := tmpBool;
1965 h677 1.299 except
1966     end;
1967 h677 1.321 try
1968     LockWindowUpdate(Self.Handle);
1969     for i := FBrowsers.Count - 1 downto 0 do begin
1970     TWebBrowser(FBrowsers[i]).Free;
1971     end;
1972     FBrowsers.Clear;
1973     FBrowsers.Capacity := 0;
1974     finally
1975     FBrowsers.Free;
1976 h677 1.303 end;
1977 h677 1.299 try
1978     if BrowserNullTab <> nil then begin
1979     BrowserNullTab.Browser := nil; {*BrowserNullTab鐃緒申Browser鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃?
1980     *鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申Free鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?
1981     *}
1982     BrowserNullTab.Free;
1983 hi_ 1.1 end;
1984     except
1985     end;
1986 h677 1.321 LockWindowUpdate(0);
1987 h677 1.224 try
1988 yoffy 1.236 TreeView.Items.BeginUpdate;
1989 yoffy 1.380 TreeView.Items.GetFirstNode.Free;
1990 yoffy 1.236 TreeView.Items.Clear;
1991     TreeView.Items.EndUpdate;
1992 h677 1.224 except
1993     end;
1994 h677 1.230
1995 hi_ 1.1 //鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申
1996     try
1997 yoffy 1.236 //AddressHistoryDM鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?
1998 hi_ 1.1 AddressHistoryDM.WriteHistory(AddressComboBox.Items, GikoSys.Setting.AddressHistoryCount);
1999     except
2000     end;
2001    
2002 h677 1.234 //鐃?鐃?鐃?鐃緒申鐃緒申鐃?鐃?鐃緒申鐃緒申
2003 hi_ 1.1 try
2004 h677 1.234 SaveHistory;
2005 hi_ 1.1 except
2006     end;
2007 yoffy 1.236 try
2008     try
2009     ClearHistory;
2010     except
2011     end;
2012     finally
2013     FHistoryList.Free;
2014     end;
2015 h677 1.221
2016 h677 1.182 //鐃緒申鐃緒申鐃緒申鐃?鐃?鐃緒申鐃緒申&鐃?鐃緒申
2017     try
2018     RoundList.SaveRoundFile;
2019     except
2020     end;
2021 yoffy 1.236 try
2022 h677 1.234 try
2023 yoffy 1.236 RoundList.Clear;
2024 h677 1.234 except
2025     end;
2026 yoffy 1.236 finally
2027     RoundList.Free;
2028     end;
2029 h677 1.182
2030 yoffy 1.236 try
2031 h677 1.234 try
2032     FControlThread.Terminate;
2033 yoffy 1.236 FControlThread.WaitFor;
2034 h677 1.234 except
2035 h677 1.219 end;
2036 yoffy 1.236 finally
2037     FControlThread.Free;
2038     end;
2039 h677 1.230
2040 yoffy 1.155 // TBBS 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申 TCategory, TBoard, TThreadItem 鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申
2041     // TBoard, TThreadItem 鐃緒申鐃?鐃?鐃?鐃緒申鐃?鐃?鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申
2042     // BoardPluteIns 鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃緒申鐃緒申
2043 yoffy 1.126 try
2044 h677 1.220 for i := Length( BBSs ) - 1 downto 0 do begin
2045 h677 1.153 if BBSs[ i ] <> nil then
2046     BBSs[ i ].Free;
2047     BBSs[ i ] := nil;
2048     end;
2049     except
2050     end;
2051 yoffy 1.155
2052 h677 1.153 try
2053 h677 1.220 for i := Length( BoardPlugIns ) - 1 downto 0 do begin
2054 yoffy 1.126 if BoardPlugIns[ i ] <> nil then
2055     BoardPlugIns[ i ].Free;
2056     BoardPlugIns[ i ] := nil;
2057     end;
2058     except
2059     end;
2060 yoffy 1.124
2061 h677 1.234 try
2062 yoffy 1.236 if FEvent <> nil then
2063     FEvent.Free;
2064 h677 1.181
2065 yoffy 1.2 //Hint鐃?鐃緒申
2066     if FHint <> nil then begin
2067     FHint.ReleaseHandle;
2068     FHint.Free;
2069     FHint := nil;
2070     end;
2071     //Preview鐃?鐃緒申
2072     if TPreviewBrowser <> nil then begin
2073     FPreviewBrowser.Free;
2074     FPreviewBrowser := nil;
2075     end;
2076     except
2077     end;
2078 h677 1.230
2079 hi_ 1.1 end;
2080    
2081     //鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃?鐃?
2082     procedure TGikoForm.FormClose(Sender: TObject; var Action: TCloseAction);
2083     begin
2084 h677 1.230 end;
2085 hi_ 1.1 //鐃?鐃緒申鐃?鐃?鐃?鐃?鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃?鐃?
2086     procedure TGikoForm.CabinetPanelHide(Sender: TObject);
2087     begin
2088     CabinetVisibleAction.Execute;
2089     // CabinetPanelVisible(false);
2090     end;
2091    
2092 yoffy 1.289 // 鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃?鐃? BBS 鐃緒申鐃?鐃緒申鐃?鐃緒申鐃?鐃?鐃?鐃?鐃?鐃?
2093     procedure TGikoForm.SetBBSMenu;
2094 yoffy 1.123 var
2095     i : Integer;
2096 yoffy 1.149 item : TBBSMenuItem;
2097 hi_ 1.1 begin
2098    
2099 yoffy 1.148 // 鐃緒申鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申
2100     for i := CabinetSelectPopupMenu.Items.Count - 1 downto 0 do begin
2101     try
2102     if CabinetSelectPopupMenu.Items[ i ] is TBBSMenuItem then begin
2103 yoffy 1.155 CabinetSelectPopupMenu.Items[ i ].Free;
2104     CabinetMenu.Items[ i ].Free;
2105 yoffy 1.289 BBSSelectPopupMenu.Items[ i ].Free;
2106 yoffy 1.148 end;
2107     except
2108     end;
2109     end;
2110 yoffy 1.289
2111     // 鐃緒申鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申
2112 yoffy 1.148 for i := Length( BBSs ) - 1 downto 0 do begin
2113     try
2114     item := TBBSMenuItem.Create( PopupMenu );
2115     item.Caption := BBSs[ i ].Title;
2116     item.Data := BBSs[ i ];
2117     item.OnClick := BBSMenuItemOnClick;
2118     CabinetSelectPopupMenu.Items.Insert( 0, item );
2119     item := TBBSMenuItem.Create( PopupMenu );
2120     item.Caption := BBSs[ i ].Title;
2121     item.Data := BBSs[ i ];
2122     item.OnClick := BBSMenuItemOnClick;
2123     CabinetMenu.Insert( 0, item );
2124 yoffy 1.289 item := TBBSMenuItem.Create( PopupMenu );
2125     item.Caption := BBSs[ i ].Title;
2126     item.Data := BBSs[ i ];
2127     item.OnClick := BBSMenuItemOnClick;
2128     BBSSelectPopupMenu.Items.Insert( 0, Item );
2129 yoffy 1.148 except
2130     end;
2131     end;
2132 yoffy 1.289
2133     end;
2134    
2135     procedure TGikoForm.ReloadBBS;
2136     var
2137     i : Integer;
2138 h677 1.321 tmpBool: Boolean;
2139 yoffy 1.289 begin
2140     //鐃?鐃?鐃?鐃緒申鐃?鐃?
2141 h677 1.321 tmpBool := GikoSys.Setting.ShowDialogForAllTabClose;
2142     GikoSys.Setting.ShowDialogForAllTabClose := false;
2143 h677 1.320 AllTabCloseAction.Execute;
2144 h677 1.321 GikoSys.Setting.ShowDialogForAllTabClose := tmpBool;
2145    
2146 h677 1.320 SetContent(BrowserNullTab);
2147 yoffy 1.289 //TreeView鐃?鐃緒申鐃?鐃?BBS2ch.Free鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃?鐃緒申鐃緒申鐃緒申XP鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申鐃?鐃緒申鐃?鐃?鐃緒申鐃?
2148     TreeView.Items.Clear;
2149    
2150     //BBS鐃?鐃緒申
2151     try
2152     for i := Length( BBSs ) - 1 downto 0 do begin
2153     if BBSs[ i ] <> nil then
2154     BBSs[ i ].Free;
2155     BBSs[ i ] := nil;
2156     end;
2157     except
2158     end;
2159    
2160     ActiveList := nil;
2161    
2162     FTreeType := gttNone;
2163    
2164     GikoSys.ListBoardFile; //鐃?鐃?鐃?鐃?鐃?鐃?鐃緒申鐃緒申鐃緒申
2165    
2166     // BBS 鐃緒申鐃?鐃緒申鐃?鐃緒申鐃?鐃?
2167     SetBBSMenu;
2168    
2169 yoffy 1.123 ShowBBSTree( BBSs[ 0 ] );
2170 yoffy 1.143
2171     // 鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
2172 yoffy 1.146 SaveHistory;
2173 yoffy 1.272 ClearHistory;
2174 yoffy 1.143 LoadHistory;
2175    
2176     //鐃緒申鐃?鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申鐃緒申
2177 yoffy 1.287 FavoriteDM.WriteFavorite;
2178 yoffy 1.272 FavoriteDM.Clear;
2179 yoffy 1.143 FavoriteDM.ReadFavorite;
2180 yoffy 1.279
2181 yoffy 1.143 SetLinkBar;
2182    
2183 hi_ 1.1 end;
2184    
2185     //鐃?鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申
2186 yoffy 1.123 procedure TGikoForm.SetBoardTreeNode(
2187     inBBS : TBBS
2188     );
2189 hi_ 1.1 var
2190 yoffy 1.120 i, j, k: integer;
2191 hi_ 1.1 Root: TTreeNode;
2192     CategoryNode: TTreeNode;
2193     BoardNode: TTreeNode;
2194     Category: TCategory;
2195     Board: TBoard;
2196     begin
2197 yoffy 1.112 // 鐃緒申鐃緒申鐃?鐃?鐃緒申鐃緒申鐃緒申
2198 yoffy 1.133 FActiveBBS := inBBS;
2199 hi_ 1.1 TreeView.Items.BeginUpdate;
2200     TreeView.Items.Clear;
2201     try
2202 q9_ 1.385 if not inBBS.IsBoardFileRead then
2203     GikoSys.ReadBoardFile( inBBS );
2204 yoffy 1.123 try
2205     if SplashWindow <> nil then
2206 yoffy 1.210 SplashWindow.ProgressBar.Max := inBBS.Count;
2207 yoffy 1.123 except
2208     end;
2209    
2210 q9_ 1.385 // 鐃?鐃緒申鐃?鐃?鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申鐃?鐃?鐃?
2211     if ( GikoSys.Setting.BBSSortIndex <> 0 ) or ( GikoSys.Setting.BBSSortOrder <> true ) then begin
2212     Sort.SortOrder := true;
2213     Sort.SortIndex := 0;
2214     Sort.SortNoFlag := true;
2215     inBBS.Sort(CategorySortProc);
2216     end;
2217    
2218 yoffy 1.123 Root := TreeView.Items.Add( nil, inBBS.Title );
2219     Root.ImageIndex := ITEM_ICON_2CH1;
2220     Root.SelectedIndex := ITEM_ICON_2CH2;
2221     Root.Data := inBBS;
2222     for i := 0 to inBBS.Count - 1 do begin
2223     Category := TCategory(inBBS.Items[i]);
2224     CategoryNode := TreeView.Items.AddChild(Root, Category.Title);
2225     CategoryNode.Data := Category;
2226     CategoryNode.ImageIndex := ITEM_ICON_CATEGORY1;
2227     CategoryNode.SelectedIndex := ITEM_ICON_CATEGORY2;
2228 hi_ 1.1
2229 q9_ 1.385 // 鐃?鐃緒申鐃?鐃?鐃?鐃?鐃?鐃緒申鐃?鐃緒申鐃緒申鐃?鐃?鐃?
2230     if ( GikoSys.Setting.CategorySortIndex <> 0 ) or ( GikoSys.Setting.CategorySortOrder <> true ) then begin
2231     Sort.SortOrder := true;
2232     Sort.SortIndex := 0;
2233     Sort.SortNoFlag := true;
2234     Category.CustomSort(BoardSortProc);
2235     end;
2236    
2237 yoffy 1.123 for j := 0 to Category.Count - 1 do begin
2238     Board := TBoard(Category.Items[j]);
2239     Board.BeginUpdate;
2240