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.379 - (hide annotations) (download) (as text)
Wed Aug 4 03:42:23 2004 UTC (19 years, 8 months ago) by yoffy
Branch: MAIN
Changes since 1.378: +1 -6 lines
File MIME type: text/x-pascal
終了時に AccessViolation を起こしてしまうバグを修正。(r1.376 にてエンバグ)

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