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.368 - (hide annotations) (download) (as text)
Mon Jul 12 14:48:24 2004 UTC (19 years, 9 months ago) by genyakun
Branch: MAIN
Changes since 1.367: +0 -2 lines
File MIME type: text/x-pascal
Tabをファイル名を指定して保存を削除(Open,SaveDialog削除されていなかったので修正)

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