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.374 - (hide annotations) (download) (as text)
Mon Aug 2 12:48:18 2004 UTC (19 years, 8 months ago) by yoffy
Branch: MAIN
Changes since 1.373: +61 -16 lines
File MIME type: text/x-pascal
最新100レスのみ表示をすべてのレスを表示、レス絞込みと同じグループに入れ、排他的に扱われるようにした。

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