6 SysUtils, Classes, ExtActns, StdActns, ActnList, ImgList, Controls,
14 ComCtrls, BrowserRecord, Graphics, Messages, Setting, Dialogs,
18 CAPTION_NAME: string = '
\83M
\83R
\83i
\83r';
19 USER_SETLINKBAR = WM_USER + 2003;
21 ITEM_ICON_SORT1 = 12; //!<
\83\
\81[
\83g
\83A
\83C
\83R
\83\93
22 ITEM_ICON_SORT2 = 13; //!<
\83\
\81[
\83g
\83A
\83C
\83R
\83\93
24 //
\83c
\81[
\83\8b\83o
\81[
\83A
\83C
\83R
\83\93
25 TOOL_ICON_HEIGHT_MAX = 16; //!<
\8d\82\82³
\8dÅ
\91å
\83A
\83C
\83R
\83\93
26 TOOL_ICON_HEIGHT_MIN = 17; //!<
\8d\82\82³
\8dÅ
\8f¬
\83A
\83C
\83R
\83\93
27 TOOL_ICON_HEIGHT_NORMAL = 18; //!<
\8d\82\82³
\95W
\8f\80\83A
\83C
\83R
\83\93
28 TOOL_ICON_WIDTH_MAX = 19; //!<
\95\9d\8dÅ
\91å
\83A
\83C
\83R
\83\93
29 TOOL_ICON_WIDTH_MIN = 20; //!<
\95\9d\8dÅ
\8f¬
\83A
\83C
\83R
\83\93
30 TOOL_ICON_WIDTH_NORMAL = 21; //!<
\95\9d\95W
\8f\80\83A
\83C
\83R
\83\93
32 TOOL_ICON_FAV_FOLDER = 30; //!<
\82¨
\8bC
\82É
\93ü
\82è
\83t
\83H
\83\8b\83_
\83A
\83C
\83R
\83\93
33 TOOL_ICON_FAV_BOARD = 31; //!<
\82¨
\8bC
\82É
\93ü
\82è
\94Â
\83A
\83C
\83R
\83\93
34 TOOL_ICON_FAV_THREAD = 32; //!<
\82¨
\8bC
\82É
\93ü
\82è
\83X
\83\8c\83A
\83C
\83R
\83\93
37 PROTOCOL_HTTP : string = 'http://';
38 //!
\83M
\83R
\83i
\83r
\83T
\83C
\83g
\82ÌURL
39 URL_GIKONAVI: string = 'gikonavi.sourceforge.jp/';
40 //! Monazilla
\83T
\83C
\83g
\82ÌURL
41 URL_MONAZILLA: string = 'www.monazilla.org/';
42 //! 2
\82¿
\82á
\82ñ
\82Ë
\82é
\82ÌURL
43 URL_2ch: string = 'www.2ch.net/';
44 //!
\83M
\83R
\83i
\83rWiki
\82ÌURL
45 URL_Wiki: string = 'gikowiki.dyndns.info/index.php?FAQ';
47 SELECTCOMBOBOX_NAME: string = ''; // '
\83X
\83\8c\83b
\83h
\8di
\8d\9e\8c\9f\8dõ';
48 SELECTCOMBOBOX_COLOR: TColor = clWindow;
52 TGikoDM = class(TDataModule)
53 GikoFormActionList: TActionList;
54 OnlyAHundredResAction: TAction;
55 OnlyKokoResAction: TAction;
57 NewBoardAction: TAction;
58 LogDeleteAction: TAction;
59 KidokuAction: TAction;
60 StdToolBarVisibleAction: TAction;
61 AddressBarVisibleAction: TAction;
62 LinkBarVisibleAction: TAction;
63 ListToolBarVisibleAction: TAction;
64 SearchAction: TAction;
65 GikoNaviWebPageAction: TAction;
66 MonazillaWebPageAction: TAction;
67 BBS2chWebPageAction: TAction;
68 GikoFolderOpenAction: TAction;
70 SelectTextClearAction: TAction;
71 NameTextClearAction: TAction;
72 MailTextClearAction: TAction;
74 ListNameBarVisibleAction: TAction;
75 BrowserToolBarVisibleAction: TAction;
76 BrowserNameBarVisibleAction: TAction;
77 MsgBarVisibleAction: TAction;
78 MsgBarCloseAction: TAction;
79 StatusBarVisibleAction: TAction;
80 CabinetBBSAction: TAction;
81 CabinetHistoryAction: TAction;
82 OnlyNewResAction: TAction;
83 CabinetFavoriteAction: TAction;
84 CabinetVisibleAction: TAction;
85 ListNumberVisibleAction: TAction;
86 UpFolderAction: TAction;
87 CabinetCloseAction: TAction;
89 LargeIconAction: TAction;
90 SmallIconAction: TAction;
91 ListIconAction: TAction;
92 DetailIconAction: TAction;
93 MidokuAction: TAction;
94 AllSelectAction: TAction;
95 AllItemAction: TAction;
96 LogItemAction: TAction;
97 NewItemAction: TAction;
98 ThreadRangeAction: TAction;
99 SelectItemAction: TAction;
101 OptionAction: TAction;
102 RoundAction: TAction;
103 BrowserMaxAction: TAction;
104 BrowserMinAction: TAction;
105 ScrollTopAction: TAction;
106 ScrollLastAction: TAction;
107 ScrollNewAction: TAction;
108 ScrollKokoAction: TAction;
109 EditorAction: TAction;
111 ShowThreadAction: TAction;
112 ShowBoardAction: TAction;
113 URLCopyAction: TAction;
114 NameCopyAction: TAction;
115 NameURLCopyAction: TAction;
116 ItemReloadAction: TAction;
117 ThreadEditorAction: TAction;
118 BoardIEAction: TAction;
119 SelectItemURLCopyAction: TAction;
120 SelectItemNameCopyAction: TAction;
121 SelectItemNameURLCopyAction: TAction;
122 SelectListReloadAction: TAction;
123 SelectThreadReloadAction: TAction;
124 BrowserTabCloseAction: TAction;
125 NotSelectTabCloseAction: TAction;
126 AllTabCloseAction: TAction;
127 KokomadeAction: TAction;
128 ZenbuAction: TAction;
129 KokoResAction: TAction;
130 TreeSelectBoradReload: TAction;
131 TreeSelectThreadReload: TAction;
132 TreeSelectURLCopy: TAction;
133 SelectReservAction: TAction;
134 SelectNewRoundName: TAction;
135 SelectDeleteRound: TAction;
136 KeySettingAction: TAction;
137 ArrangeAction: TAction;
138 ActiveLogDeleteAction: TAction;
139 TreeSelectNameURLCopy: TAction;
140 PaneInitAction: TAction;
141 LeftmostTabSelectAction: TAction;
142 LeftTabSelectAction: TAction;
143 RightTabSelectAction: TAction;
144 RightmostTabSelectAction: TAction;
145 FavoriteAddAction: TAction;
146 BoardFavoriteAddAction: TAction;
147 ThreadFavoriteAddAction: TAction;
148 TreeSelectFavoriteAddAction: TAction;
149 FavoriteArrangeAction: TAction;
150 MoveToAction: TAction;
151 BrowserTabVisibleAction: TAction;
152 BrowserTabTopAction: TAction;
153 BrowserTabBottomAction: TAction;
154 BrowserTabTabStyleAction: TAction;
155 BrowserTabButtonStyleAction: TAction;
156 BrowserTabFlatStyleAction: TAction;
157 GikoHelpAction: TAction;
158 KotehanAction: TAction;
159 ToolBarSettingAction: TAction;
160 SelectResAction: TAction;
161 AllResAction: TAction;
162 EditNGAction: TAction;
163 ReloadAction: TAction;
164 GoFowardAction: TAction;
165 GoBackAction: TAction;
166 TreeSelectSearchBoardName: TAction;
167 FavoriteTreeViewRenameAction: TAction;
168 FavoriteTreeViewNewFolderAction: TAction;
169 FavoriteTreeViewDeleteAction: TAction;
170 FavoriteTreeViewBrowseFolderAction: TAction;
171 FavoriteTreeViewReloadAction: TAction;
172 FavoriteTreeViewURLCopyAction: TAction;
173 FavoriteTreeViewNameCopyAction: TAction;
174 FavoriteTreeViewNameURLCopyAction: TAction;
175 FavoriteTreeViewLogDeleteAction: TAction;
176 ResRangeAction: TAction;
177 ExportFavoriteFile: TFileSaveAs;
178 FavoriteTreeViewBrowseBoardAction: TAction;
179 FavoriteTreeViewBrowseThreadAction: TAction;
180 UpBoardAction: TAction;
182 TreeSelectNameCopy: TAction;
183 SetFocusForBrowserAction: TAction;
184 SetFocusForThreadListAction: TAction;
185 SetFocusForCabinetAction: TAction;
187 ThreadlistMaxAndFocusAction: TAction;
188 BrowserMaxAndFocusAction: TAction;
189 SelectItemSaveForHTML: TAction;
190 SelectItemSaveForDat: TAction;
191 LogFolderOpenAction: TAction;
192 TabsSaveAction: TAction;
193 TabsOpenAction: TAction;
194 BrowsBoradHeadAction: TAction;
195 TabAutoSaveAction: TAction;
196 TabAutoLoadAction: TAction;
197 JumpToNumOfResAction: TAction;
198 FavoriteTreeViewCollapseAction: TAction;
199 RightTabCloseAction: TAction;
200 LeftTabCloseAction: TAction;
201 SameIDResAnchorAction: TAction;
202 IndividualAbon1Action: TAction;
203 IndividualAbon0Action: TAction;
204 AntiIndividualAbonAction: TAction;
205 AntiIndividualAbonDlgAction: TAction;
206 IndividualAbonID1Action: TAction;
207 IndividualAbonID0Action: TAction;
209 SortActiveColumnAction: TAction;
210 SortNextColumnAction: TAction;
211 SortPrevColumnAction: TAction;
212 BeLogInOutAction: TAction;
213 UnSelectedListViewAction: TAction;
214 WikiFAQWebPageAction: TAction;
215 ToobarImageList: TImageList;
216 SaveDialog: TSaveDialog;
217 ThreadSizeCalcForFileAction: TAction;
218 SetInputAssistAction: TAction;
219 OpenFindDialogAction: TAction;
220 ArchiveItemAction: TAction;
221 LiveItemAction: TAction;
222 FavoriteTreeViewItemNameCopyAction: TAction;
223 procedure EditNGActionExecute(Sender: TObject);
224 procedure ReloadActionExecute(Sender: TObject);
225 procedure GoFowardActionExecute(Sender: TObject);
226 procedure GoBackActionExecute(Sender: TObject);
227 procedure MoveToActionExecute(Sender: TObject);
228 procedure FavoriteAddActionExecute(Sender: TObject);
229 procedure FavoriteArrangeActionExecute(Sender: TObject);
230 procedure FavoriteTreeViewCollapseActionExecute(Sender: TObject);
231 procedure FavoriteTreeViewRenameActionExecute(Sender: TObject);
232 procedure FavoriteTreeViewNewFolderActionExecute(Sender: TObject);
233 procedure FavoriteTreeViewDeleteActionExecute(Sender: TObject);
234 procedure FavoriteTreeViewBrowseFolderActionExecute(Sender: TObject);
235 procedure FavoriteTreeViewReloadActionExecute(Sender: TObject);
236 procedure FavoriteTreeViewURLCopyActionExecute(Sender: TObject);
237 procedure FavoriteTreeViewNameCopyActionExecute(Sender: TObject);
238 procedure FavoriteTreeViewNameURLCopyActionExecute(Sender: TObject);
239 procedure FavoriteTreeViewLogDeleteActionExecute(Sender: TObject);
240 procedure FavoriteTreeViewBrowseThreadActionExecute(Sender: TObject);
241 procedure OnlyAHundredResActionExecute(Sender: TObject);
242 procedure OnlyKokoResActionExecute(Sender: TObject);
243 procedure OnlyNewResActionExecute(Sender: TObject);
244 procedure BrowserMaxActionExecute(Sender: TObject);
245 procedure BrowserMinActionExecute(Sender: TObject);
246 procedure ScrollTopActionExecute(Sender: TObject);
247 procedure ScrollLastActionExecute(Sender: TObject);
248 procedure ScrollNewActionExecute(Sender: TObject);
249 procedure ScrollKokoActionExecute(Sender: TObject);
250 procedure ScrollKokoActionUpdate(Sender: TObject);
251 procedure EditorActionExecute(Sender: TObject);
252 procedure IEActionExecute(Sender: TObject);
253 procedure ShowThreadActionExecute(Sender: TObject);
254 procedure ShowBoardActionExecute(Sender: TObject);
255 procedure URLCopyActionExecute(Sender: TObject);
256 procedure NameCopyActionExecute(Sender: TObject);
257 procedure NameURLCopyActionExecute(Sender: TObject);
258 procedure ItemReloadActionExecute(Sender: TObject);
259 procedure BrowserTabCloseActionExecute(Sender: TObject);
260 procedure BrowserTabCloseActionUpdate(Sender: TObject);
261 procedure NotSelectTabCloseActionExecute(Sender: TObject);
262 procedure NotSelectTabCloseActionUpdate(Sender: TObject);
263 procedure AllTabCloseActionExecute(Sender: TObject);
264 procedure ActiveLogDeleteActionExecute(Sender: TObject);
265 procedure LeftmostTabSelectActionExecute(Sender: TObject);
266 procedure LeftmostTabSelectActionUpdate(Sender: TObject);
267 procedure LeftTabSelectActionExecute(Sender: TObject);
268 procedure RightTabSelectActionExecute(Sender: TObject);
269 procedure RightTabSelectActionUpdate(Sender: TObject);
270 procedure RightmostTabSelectActionExecute(Sender: TObject);
271 procedure ThreadFavoriteAddActionExecute(Sender: TObject);
272 procedure ThreadFavoriteAddActionUpdate(Sender: TObject);
273 procedure SelectResActionExecute(Sender: TObject);
274 procedure AllResActionExecute(Sender: TObject);
275 procedure ResRangeActionExecute(Sender: TObject);
276 procedure UpBoardActionExecute(Sender: TObject);
277 procedure JumpToNumOfResActionExecute(Sender: TObject);
278 procedure RightTabCloseActionExecute(Sender: TObject);
279 procedure RightTabCloseActionUpdate(Sender: TObject);
280 procedure LeftTabCloseActionExecute(Sender: TObject);
281 procedure DataModuleCreate(Sender: TObject);
282 procedure SearchActionExecute(Sender: TObject);
283 procedure OptionActionExecute(Sender: TObject);
284 procedure RoundActionExecute(Sender: TObject);
285 procedure KeySettingActionExecute(Sender: TObject);
286 procedure KotehanActionExecute(Sender: TObject);
287 procedure ToolBarSettingActionExecute(Sender: TObject);
288 procedure MuteActionExecute(Sender: TObject);
289 procedure TreeSelectBoradReloadExecute(Sender: TObject);
290 procedure TreeSelectThreadReloadExecute(Sender: TObject);
291 procedure TreeSelectURLCopyExecute(Sender: TObject);
292 procedure TreeSelectNameURLCopyExecute(Sender: TObject);
293 procedure TreeSelectFavoriteAddActionExecute(Sender: TObject);
294 procedure TreeSelectSearchBoardNameExecute(Sender: TObject);
295 procedure TreeSelectNameCopyExecute(Sender: TObject);
296 procedure LoginActionExecute(Sender: TObject);
297 procedure NewBoardActionExecute(Sender: TObject);
298 procedure LogDeleteActionExecute(Sender: TObject);
299 procedure LogDeleteActionUpdate(Sender: TObject);
300 procedure SelectTextClearActionExecute(Sender: TObject);
301 procedure NameTextClearActionExecute(Sender: TObject);
302 procedure MailTextClearActionExecute(Sender: TObject);
303 procedure ExitActionExecute(Sender: TObject);
304 procedure ExportFavoriteFileBeforeExecute(Sender: TObject);
305 procedure ExportFavoriteFileAccept(Sender: TObject);
306 procedure SelectItemSaveForHTMLExecute(Sender: TObject);
307 procedure SelectItemSaveForDatExecute(Sender: TObject);
308 procedure TabsSaveActionExecute(Sender: TObject);
309 procedure TabsOpenActionExecute(Sender: TObject);
310 procedure TabAutoSaveActionExecute(Sender: TObject);
311 procedure TabAutoLoadActionExecute(Sender: TObject);
312 procedure BeLogInOutActionExecute(Sender: TObject);
313 procedure BeLogInOutActionUpdate(Sender: TObject);
314 procedure KokomadeActionExecute(Sender: TObject);
315 procedure ZenbuActionExecute(Sender: TObject);
316 procedure KokoResActionExecute(Sender: TObject);
317 procedure KoreCopyExecute(Sender: TObject);
318 procedure SameIDResAnchorActionExecute(Sender: TObject);
319 procedure IndividualAbon1ActionExecute(Sender: TObject);
320 procedure IndividualAbon0ActionExecute(Sender: TObject);
321 procedure AntiIndividualAbonActionExecute(Sender: TObject);
322 procedure AntiIndividualAbonDlgActionExecute(Sender: TObject);
323 procedure IndividualAbonID1ActionExecute(Sender: TObject);
324 procedure IndividualAbonID0ActionExecute(Sender: TObject);
325 procedure GikoNaviWebPageActionExecute(Sender: TObject);
326 procedure MonazillaWebPageActionExecute(Sender: TObject);
327 procedure BBS2chWebPageActionExecute(Sender: TObject);
328 procedure GikoFolderOpenActionExecute(Sender: TObject);
329 procedure AboutActionExecute(Sender: TObject);
330 procedure GikoHelpActionExecute(Sender: TObject);
331 procedure WikiFAQWebPageActionExecute(Sender: TObject);
332 procedure ListNumberVisibleActionExecute(Sender: TObject);
333 procedure UpFolderActionExecute(Sender: TObject);
334 procedure UpFolderActionUpdate(Sender: TObject);
335 procedure IconStyleExecute(Sender: TObject);
336 procedure AllItemActionExecute(Sender: TObject);
337 procedure LogItemActionExecute(Sender: TObject);
338 procedure NewItemActionExecute(Sender: TObject);
339 procedure ThreadRangeActionExecute(Sender: TObject);
340 procedure SelectItemActionExecute(Sender: TObject);
341 procedure ThreadEditorActionExecute(Sender: TObject);
342 procedure BoardIEActionExecute(Sender: TObject);
343 procedure SelectItemURLCopyActionExecute(Sender: TObject);
344 procedure SelectItemURLCopyActionUpdate(Sender: TObject);
345 procedure SelectItemNameCopyActionExecute(Sender: TObject);
346 procedure SelectItemNameCopyActionUpdate(Sender: TObject);
347 procedure SelectItemNameURLCopyActionExecute(Sender: TObject);
348 procedure SelectListReloadActionExecute(Sender: TObject);
349 procedure SelectListReloadActionUpdate(Sender: TObject);
350 procedure SelectThreadReloadActionExecute(Sender: TObject);
351 procedure SelectThreadReloadActionUpdate(Sender: TObject);
352 procedure SelectReservActionExecute(Sender: TObject);
353 procedure SelectReservActionUpdate(Sender: TObject);
354 procedure SelectNewRoundNameExecute(Sender: TObject);
355 procedure SelectDeleteRoundExecute(Sender: TObject);
356 procedure BoardFavoriteAddActionExecute(Sender: TObject);
357 procedure BoardFavoriteAddActionUpdate(Sender: TObject);
358 procedure LogFolderOpenActionExecute(Sender: TObject);
359 procedure LogFolderOpenActionUpdate(Sender: TObject);
360 procedure BrowsBoradHeadActionExecute(Sender: TObject);
361 procedure SortActiveColumnActionExecute(Sender: TObject);
362 procedure SortNextColumnActionExecute(Sender: TObject);
363 procedure SortPrevColumnActionExecute(Sender: TObject);
364 procedure StdToolBarVisibleActionExecute(Sender: TObject);
365 procedure AddressBarVisibleActionExecute(Sender: TObject);
366 procedure LinkBarVisibleActionExecute(Sender: TObject);
367 procedure ListToolBarVisibleActionExecute(Sender: TObject);
368 procedure ListNameBarVisibleActionExecute(Sender: TObject);
369 procedure BrowserToolBarVisibleActionExecute(Sender: TObject);
370 procedure BrowserNameBarVisibleActionExecute(Sender: TObject);
371 procedure MsgBarVisibleActionExecute(Sender: TObject);
372 procedure MsgBarCloseActionExecute(Sender: TObject);
373 procedure StatusBarVisibleActionExecute(Sender: TObject);
374 procedure CabinetBBSActionExecute(Sender: TObject);
375 procedure CabinetHistoryActionExecute(Sender: TObject);
376 procedure CabinetFavoriteActionExecute(Sender: TObject);
377 procedure CabinetVisibleActionExecute(Sender: TObject);
378 procedure CabinetCloseActionExecute(Sender: TObject);
379 procedure LargeIconActionExecute(Sender: TObject);
380 procedure SmallIconActionExecute(Sender: TObject);
381 procedure ListIconActionExecute(Sender: TObject);
382 procedure DetailIconActionExecute(Sender: TObject);
383 procedure StopActionExecute(Sender: TObject);
384 procedure ArrangeActionExecute(Sender: TObject);
385 procedure PaneInitActionExecute(Sender: TObject);
386 procedure BrowserTabVisibleActionExecute(Sender: TObject);
387 procedure BrowserTabTopActionExecute(Sender: TObject);
388 procedure BrowserTabBottomActionExecute(Sender: TObject);
389 procedure BrowserTabTabStyleActionExecute(Sender: TObject);
390 procedure BrowserTabButtonStyleActionExecute(Sender: TObject);
391 procedure BrowserTabFlatStyleActionExecute(Sender: TObject);
392 procedure SetFocusForBrowserActionExecute(Sender: TObject);
393 procedure SetFocusForBrowserActionUpdate(Sender: TObject);
394 procedure SetFocusForThreadListActionExecute(Sender: TObject);
395 procedure SetFocusForCabinetActionExecute(Sender: TObject);
396 procedure SetFocusForCabinetActionUpdate(Sender: TObject);
397 procedure ThreadlistMaxAndFocusActionExecute(Sender: TObject);
398 procedure BrowserMaxAndFocusActionExecute(Sender: TObject);
399 procedure UnSelectedListViewActionExecute(Sender: TObject);
400 procedure KidokuActionExecute(Sender: TObject);
401 procedure MidokuActionExecute(Sender: TObject);
402 procedure AllSelectActionExecute(Sender: TObject);
403 procedure AllSelectActionUpdate(Sender: TObject);
404 procedure ThreadSizeCalcForFileActionExecute(Sender: TObject);
405 procedure SetInputAssistActionExecute(Sender: TObject);
406 procedure OpenFindDialogActionExecute(Sender: TObject);
407 procedure ArchiveItemActionExecute(Sender: TObject);
408 procedure LiveItemActionExecute(Sender: TObject);
409 procedure FavoriteTreeViewItemNameCopyActionExecute(Sender: TObject);
412 procedure ClearResFilter;
413 procedure SetResRange(range: Integer);
414 procedure SetThreadAreaHorNormal;
415 procedure SetThreadAreaHorizontal(gls : TGikoListState);
416 procedure SetThreadAreaVerNormal;
417 procedure SetThreadAreaVertical(gls : TGikoListState);
418 procedure SetThreadReadProperty(read: Boolean);
419 procedure SelectThreadSaveToFile(dat: Boolean);
420 function GetSortProperties(List: TObject;var vSortOrder: Boolean): Boolean;
421 procedure RecalcThreadSize(limit : Integer);
422 procedure ClearSelectComboBox;
425 procedure RepaintStatusBar;
427 { Published
\90é
\8c¾ }
428 //! TAction
\82ÅGetActiveContent
\82ªnil
\88È
\8aO
\82Å
\97L
\8cø
\82É
\82È
\82é
429 procedure DependActiveCntentActionUpdate(Sender: TObject);
430 //! TAction
\82ÅGetActiveContent
\82ªnil
\88È
\8aO
\82©
\82Â
\83\8d\83O
\82ð
\8e\9d\82Á
\82Ä
\82¢
\82é
\82Æ
\97L
\8cø
\82É
\82È
\82é
431 procedure DependActiveCntentLogActionUpdate(Sender: TObject);
432 //! TAction
\82ÅActiveList
\82ªTBoard
\82Å
\97L
\8cø
\82É
\82È
\82é
433 procedure DependActiveListTBoardActionUpdate(Sender: TObject);
443 Windows, Math, Clipbrd,
444 Giko, GikoSystem, GikoUtil, BoardGroup,
445 FavoriteArrange, Favorite, MojuUtils,
446 Editor, ListSelect, Search, Option, Round,
447 KeySetting, Gesture, Kotehan, ToolBarSetting,
448 ToolBarUtil, NewBoard, HTMLCreate, IndividualAbon,
449 GikoBayesian, About, ShellAPI,
450 RoundName, RoundData, Menus, ListViewUtils,
451 ThreadControl, GikoMessage, InputAssist;
454 MSG_ERROR : string = '
\83G
\83\89\81[';
457 // *************************************************************************
458 //! TAction
\82ÅGetActiveContent
\82ªnil
\88È
\8aO
\82Å
\97L
\8cø
\82É
\82È
\82é
459 // *************************************************************************
460 procedure TGikoDM.DependActiveCntentActionUpdate(Sender: TObject);
462 TAction(Sender).Enabled := (GikoForm.GetActiveContent <> nil);
464 // *************************************************************************
465 //! TAction
\82ÅGetActiveContent
\82ªnil
\88È
\8aO
\82©
\82Â
\83\8d\83O
\82ð
\8e\9d\82Á
\82Ä
\82¢
\82é
466 // *************************************************************************
467 procedure TGikoDM.DependActiveCntentLogActionUpdate(Sender: TObject);
469 TAction(Sender).Enabled := (GikoForm.GetActiveContent <> nil)
470 and (GikoForm.GetActiveContent.IsLogFile);
472 // *************************************************************************
473 //! TAction
\82ÅActiveList
\82ªTBoard
\82Å
\97L
\8cø
\82É
\82È
\82é
474 // *************************************************************************
475 procedure TGikoDM.DependActiveListTBoardActionUpdate(Sender: TObject);
477 TAction(Sender).Enabled := (GikoForm.GetActiveList is TBoard);
479 // *************************************************************************
480 //! NG
\83\8f\81[
\83h
\95Ò
\8fW
481 // *************************************************************************
482 procedure TGikoDM.EditNGActionExecute(Sender: TObject);
484 //
\83e
\83L
\83X
\83g
\82É
\8aÖ
\98A
\95t
\82¯
\82ç
\82ê
\82½
\83A
\83v
\83\8a\82ÅNG
\83\8f\81[
\83h
\83t
\83@
\83C
\83\8b\82ð
\83I
\81[
\83v
\83\93
485 GikoSys.FAbon.EditNGwords;
487 // *************************************************************************
488 //! NG
\83\8f\81[
\83h
\93Ç
\82Ý
\8d\9e\82Ý
\81i
\8dÄ
\93Ç
\82Ý
\8d\9e\82Ý
\81j
489 // *************************************************************************
490 procedure TGikoDM.ReloadActionExecute(Sender: TObject);
492 //
\83\8a\83\8d\81[
\83h
\82ð
\8eÀ
\8ds
\81@
\8e¸
\94s
\82µ
\82½
\82ç
\83\81\83b
\83Z
\81[
\83W
\8fo
\97Í
493 if GikoSys.FAbon.ReLoadFromNGwordFile =false then begin
494 MsgBox(GikoForm.Handle, 'NG
\83\8f\81[
\83h
\83t
\83@
\83C
\83\8b\82Ì
\8dÄ
\93Ç
\82Ý
\8d\9e\82Ý
\82É
\8e¸
\94s
\82µ
\82Ü
\82µ
\82½',
495 MSG_ERROR, MB_OK or MB_ICONEXCLAMATION);
497 //
\91S
\82Ä
\82Ì
\83^
\83u
\82É
\8dÄ
\95`
\89æ
\82ð
\90Ý
\92è
498 GikoForm.RepaintAllTabsBrowser();
501 // *************************************************************************
502 //! NG
\83\8f\81[
\83h
\93Ç
\82Ý
\8d\9e\82Ý
\81i
\88ê
\82Â
\8cã
\82ë
\81j
503 // *************************************************************************
504 procedure TGikoDM.GoFowardActionExecute(Sender: TObject);
506 //
\88ê
\82Â
\8cã
\82ë
\82Ì
\93Ç
\82Ý
\8d\9e\82Ý
\81@
\8e¸
\94s
\82µ
\82½
\82ç
\83\81\83b
\83Z
\81[
\83W
\8fo
\97Í
507 if GikoSys.FAbon.GoBack =false then begin
508 MsgBox(GikoForm.Handle, '
\88ê
\82Â
\8cã
\82ë
\82ÌNG
\83\8f\81[
\83h
\83t
\83@
\83C
\83\8b\82Ì
\93Ç
\82Ý
\8d\9e\82Ý
\82É
\8e¸
\94s
\82µ
\82Ü
\82µ
\82½',
509 MSG_ERROR, MB_OK or MB_ICONEXCLAMATION);
511 //
\83X
\83e
\81[
\83^
\83X
\82É
\95\
\8e¦
\82³
\82ê
\82éNG
\83\8f\81[
\83h
\83t
\83@
\83C
\83\8b\96¼
\82ð
\8dX
\90V
513 //
\91S
\82Ä
\82Ì
\83^
\83u
\82É
\8dÄ
\95`
\89æ
\82ð
\90Ý
\92è
514 GikoForm.RepaintAllTabsBrowser();
517 // *************************************************************************
518 //! NG
\83\8f\81[
\83h
\93Ç
\82Ý
\8d\9e\82Ý
\81i
\88ê
\82Â
\91O
\81j
519 // *************************************************************************
520 procedure TGikoDM.GoBackActionExecute(Sender: TObject);
522 //
\88ê
\82Â
\8cã
\82ë
\82Ì
\93Ç
\82Ý
\8d\9e\82Ý
\81@
\8e¸
\94s
\82µ
\82½
\82ç
\83\81\83b
\83Z
\81[
\83W
\8fo
\97Í
523 if GikoSys.FAbon.GoForward =false then begin
524 MsgBox(GikoForm.Handle, '
\88ê
\82Â
\91O
\82ÌNG
\83\8f\81[
\83h
\83t
\83@
\83C
\83\8b\82Ì
\93Ç
\82Ý
\8d\9e\82Ý
\82É
\8e¸
\94s
\82µ
\82Ü
\82µ
\82½',
525 MSG_ERROR, MB_OK or MB_ICONEXCLAMATION);
527 //
\83X
\83e
\81[
\83^
\83X
\82É
\95\
\8e¦
\82³
\82ê
\82éNG
\83\8f\81[
\83h
\83t
\83@
\83C
\83\8b\96¼
\82ð
\8dX
\90V
529 //
\91S
\82Ä
\82Ì
\83^
\83u
\82É
\8dÄ
\95`
\89æ
\82ð
\90Ý
\92è
530 GikoForm.RepaintAllTabsBrowser();
533 // *************************************************************************
534 //! NG
\83\8f\81[
\83h
\82ð
\95Ï
\8dX
\82µ
\82½
\8cã
\82Ì
\83X
\83e
\81[
\83^
\83X
\83o
\81[
\82Ì
\8dX
\90V
\8f\88\97\9d
535 // *************************************************************************
536 procedure TGikoDM.RepaintStatusBar;
540 //
\83X
\83e
\81[
\83^
\83X
\82É
\95\
\8e¦
\82³
\82ê
\82éNG
\83\8f\81[
\83h
\83t
\83@
\83C
\83\8b\96¼
\82ð
\8dX
\90V
541 s := GikoSys.FAbon.NGwordname;
542 GikoForm.StatusBar.Panels.Items[GiKo.NGWORDNAME_PANEL].Text := s;
543 //
\83X
\83e
\81[
\83^
\83X
\82Ì
\95\
\8e¦
\83T
\83C
\83Y
\82Ì
\83\8a\83T
\83C
\83Y
544 GikoForm.StatusBar.Panels[GiKo.NGWORDNAME_PANEL].Width
545 := Max(GikoForm.StatusBar.Canvas.TextWidth(s), 100);
546 GikoForm.StatusBarResize(nil);
548 // *************************************************************************
549 //!
\83A
\83h
\83\8c\83X
\83o
\81[
\82É
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83A
\83h
\83\8c\83X
\82Ö
\88Ú
\93®
\82·
\82é
550 // *************************************************************************
551 procedure TGikoDM.MoveToActionExecute(Sender: TObject);
556 //
\83A
\83h
\83\8c\83X
\83R
\83\93\83{
\83{
\83b
\83N
\83X
\82©
\82çURL
\82ð
\8eæ
\93¾
557 URL := Trim(GikoForm.AddressComboBox.Text);
559 GikoForm.MoveToURL(URL);
560 //
\88È
\89º
\81A
\97\9a\97ð
\82Ì
\8f\88\97\9d
561 idx := GikoForm.AddressComboBox.Items.IndexOf(URL);
562 if idx = -1 then begin
563 GikoForm.AddressComboBox.Items.Insert(0, URL);
564 if GikoForm.AddressComboBox.Items.Count > GikoSys.Setting.AddressHistoryCount then
565 GikoForm.AddressComboBox.Items.Delete(GikoForm.AddressComboBox.Items.Count - 1);
567 GikoForm.AddressComboBox.Items.Delete(idx);
568 GikoForm.AddressComboBox.Items.Insert(0, URL);
571 // *************************************************************************
572 //!
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\92Ç
\89Á
\83_
\83C
\83A
\83\8d\83O
\82ð
\8aJ
\82
573 // *************************************************************************
574 procedure TGikoDM.FavoriteAddActionExecute(Sender: TObject);
576 GikoForm.ShowFavoriteAddDialog(GikoForm.GetActiveContent);
578 // *************************************************************************
579 //!
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\90®
\97\9d\83_
\83C
\83A
\83\8d\83O
\82ð
\8aJ
\82
580 // *************************************************************************
581 procedure TGikoDM.FavoriteArrangeActionExecute(Sender: TObject);
583 Dlg: TFavoriteArrangeDialog;
585 Dlg := TFavoriteArrangeDialog.Create(GikoForm);
591 //
\83\8a\83\93\83N
\83o
\81[
\82É
\8dX
\90V
\82ð
\93`
\82¦
\82é
592 PostMessage( GikoForm.Handle, USER_SETLINKBAR, 0, 0 );
594 // *************************************************************************
595 //!
\83c
\83\8a\81[
\82ð
\91S
\82Ä
\95Â
\82¶
\82é
596 // *************************************************************************
597 procedure TGikoDM.FavoriteTreeViewCollapseActionExecute(Sender: TObject);
601 node := GikoForm.FavoriteTreeView.Items.GetFirstNode;
603 //
\83m
\81[
\83h
\82ª
\91±
\82
\8cÀ
\82è
\81@
\83m
\81[
\83h
\82ð
\8fk
\8f¬
\82³
\82¹
\82é
604 while node <> nil do begin
605 if node.HasChildren then
606 node.Expanded := False;
607 node := node.GetNext;
612 // *************************************************************************
613 //!
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\96¼
\91O
\82ð
\95Ò
\8fW
\82·
\82é
614 // *************************************************************************
615 procedure TGikoDM.FavoriteTreeViewRenameActionExecute(Sender: TObject);
620 if GikoForm.ClickNode = nil then
622 if GikoForm.ClickNode.IsFirstNode then
624 if GikoForm.ClickNode.Text = Favorite.FAVORITE_LINK_NAME then
626 GikoForm.FavoriteTreeView.ReadOnly := False;
627 if (GikoForm.TreeType = gttFavorite) and (GikoForm.CabinetPanel.Visible) then begin
628 node := GikoForm.ClickNode.Parent;
629 while node <> nil do begin
630 node.Expanded := True;
633 GikoForm.ClickNode.EditText;
635 GikoForm.ClickNode.Text := InputBox( '
\96¼
\91O
\82Ì
\95Ï
\8dX', '
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\90V
\82µ
\82¢
\96¼
\91O
\82ð
\93ü
\97Í
\82µ
\82Ä
\82
\82¾
\82³
\82¢', GikoForm.ClickNode.Text );
637 //
\8dX
\90V
\82µ
\82½
\82±
\82Æ
\82ð
\8b³
\82¦
\82é
638 FavoriteDM.Modified := true;
641 // *************************************************************************
642 //!
\90V
\82µ
\82
\82¨
\8bC
\82É
\93ü
\82è
\82É
\83t
\83H
\83\8b\83_
\82ð
\8dì
\90¬
\82·
\82é
643 // *************************************************************************
644 procedure TGikoDM.FavoriteTreeViewNewFolderActionExecute(Sender: TObject);
646 NewFavFolder: TFavoriteFolder;
650 if GikoForm.ClickNode = nil then
654 if not (TObject(GikoForm.ClickNode.Data) is TFavoriteFolder) then begin
655 GikoForm.FavoriteTreeView.Selected := GikoForm.ClickNode.Parent;
656 GikoForm.ClickNode := GikoForm.ClickNode.Parent;
659 NewFavFolder := TFavoriteFolder.Create;
660 Node := GikoForm.FavoriteTreeView.Items.AddChildObject(GikoForm.ClickNode, '
\90V
\82µ
\82¢
\83t
\83H
\83\8b\83_', NewFavFolder);
661 Node.ImageIndex := 14;
662 Node.SelectedIndex := 14;
663 // FClickNode.Selected.Expanded := True;
664 GikoForm.FavoriteTreeView.Selected := Node;
665 GikoForm.ClickNode := Node;
666 //
\8dX
\90V
\82µ
\82½
\82±
\82Æ
\82ð
\8b³
\82¦
\82é
667 FavoriteDM.Modified := true;
668 FavoriteTreeViewRenameAction.Execute;
673 // *************************************************************************
674 //!
\82±
\82Ì
\82¨
\8bC
\82É
\93ü
\82è
\82ð
\8dí
\8f\9c\82·
\82é
675 // *************************************************************************
676 procedure TGikoDM.FavoriteTreeViewDeleteActionExecute(Sender: TObject);
678 DEL_LINK_MSG = '
\81g
\83\8a\83\93\83N
\81h
\82Í
\83\8a\83\93\83N
\83o
\81[
\97p
\83t
\83H
\83\8b\83_
\82Å
\82·
\81B
\8dí
\8f\9c\82µ
\82Ä
\82æ
\82ë
\82µ
\82¢
\82Å
\82·
\82©
\81H';
679 DEL_MSG = '
\81g^0
\81h
\82ð
\8dí
\8f\9c\82µ
\82Ü
\82·
\81B
\82æ
\82ë
\82µ
\82¢
\82Å
\82·
\82©
\81H';
680 DEL_TITLE = '
\8dí
\8f\9c\8am
\94F';
683 if GikoForm.ClickNode = nil then
685 if GikoForm.ClickNode.IsFirstNode then
687 if (GetKeyState( VK_SHIFT ) and $80000000) = 0 then begin
688 if GikoForm.ClickNode.Text = Favorite.FAVORITE_LINK_NAME then begin
689 if MsgBox(GikoForm.Handle, DEL_LINK_MSG, DEL_TITLE, MB_YESNO or MB_ICONWARNING or MB_DEFBUTTON2) <> ID_YES then
692 if MsgBox(GikoForm.Handle, StringReplace( DEL_MSG, '^0', GikoForm.ClickNode.Text, [rfReplaceAll] ) , DEL_TITLE, MB_YESNO or MB_ICONWARNING or MB_DEFBUTTON2) <> ID_YES then
697 GikoForm.ClickNode.Delete;
698 //
\8dX
\90V
\82µ
\82½
\82±
\82Æ
\82ð
\8b³
\82¦
\82é
699 FavoriteDM.Modified := true;
704 // *************************************************************************
705 //!
\82±
\82Ì
\83t
\83H
\83\8b\83_
\82É
\93ü
\82Á
\82Ä
\82¢
\82é
\82¨
\8bC
\82É
\93ü
\82è
\82ð
\91S
\82Ä
\8aJ
\82
706 // *************************************************************************
707 procedure TGikoDM.FavoriteTreeViewBrowseFolderActionExecute(
710 GikoForm.FavoriteBrowseFolder( GikoForm.ClickNode );
712 // *************************************************************************
713 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\82¨
\8bC
\82É
\93ü
\82è
\82ð
\83_
\83E
\83\93\83\8d\81[
\83h
\82·
\82é
714 // *************************************************************************
715 procedure TGikoDM.FavoriteTreeViewReloadActionExecute(Sender: TObject);
717 FavThread: TFavoriteThreadItem;
718 FavBoard: TFavoriteBoardItem;
721 if (GikoForm.ClickNode = nil) then Exit;
723 shiftDown := GetAsyncKeyState(VK_SHIFT) = Smallint($8001);
725 if TObject( GikoForm.ClickNode.Data ) is TFavoriteThreadItem then begin
726 FavThread := TFavoriteThreadItem( GikoForm.ClickNode.Data );
727 if FavThread.Item <> nil then
728 GikoForm.DownloadContent(FavThread.Item, shiftDown);
729 end else if TObject( GikoForm.ClickNode.Data ) is TFavoriteBoardItem then begin
730 FavBoard := TFavoriteBoardItem( GikoForm.ClickNode.Data );
731 GikoForm.DownloadList(FavBoard.Item, shiftDown);
735 // *************************************************************************
736 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\82¨
\8bC
\82É
\93ü
\82è
\82ÌURL
\82ð
\83R
\83s
\81[
\82·
\82é
737 // *************************************************************************
738 procedure TGikoDM.FavoriteTreeViewURLCopyActionExecute(Sender: TObject);
741 if GikoForm.ClickNode = nil then Exit;
743 if (TObject(GikoForm.ClickNode.Data) is TFavoriteItem) then begin
744 Clipboard.AsText := TFavoriteItem( GikoForm.ClickNode.Data ).URL + #13#10;
747 // *************************************************************************
748 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\96¼
\91O
\82ð
\83R
\83s
\81[
\82·
\82é
749 // *************************************************************************
750 procedure TGikoDM.FavoriteTreeViewNameCopyActionExecute(Sender: TObject);
753 if GikoForm.ClickNode = nil then Exit;
755 if (TObject(GikoForm.ClickNode.Data) is TFavoriteItem) then begin
757 TFavoriteItem(GikoForm.ClickNode.Data).GetItemTitle + #13#10;
760 GikoForm.ClickNode.Text + #13#10;
764 // *************************************************************************
765 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\96¼
\91O
\82ÆURL
\82ð
\83R
\83s
\81[
\82·
\82é
766 // *************************************************************************
767 procedure TGikoDM.FavoriteTreeViewNameURLCopyActionExecute(
770 favItem : TFavoriteItem;
773 if GikoForm.ClickNode = nil then Exit;
775 if (TObject(GikoForm.ClickNode.Data) is TFavoriteItem) then begin
776 favItem := TFavoriteItem(GikoForm.ClickNode.Data);
777 Clipboard.AsText := favItem.GetItemTitle + #13#10 +
778 favItem.URL + #13#10;
782 // *************************************************************************
783 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\82¨
\8bC
\82É
\93ü
\82è
\83X
\83\8c\83b
\83h
\82ð
\8dí
\8f\9c\82·
\82é
784 // *************************************************************************
785 procedure TGikoDM.FavoriteTreeViewLogDeleteActionExecute(Sender: TObject);
787 DEL_MSG = '
\81g^0
\81h
\82Ì
\83\8d\83O
\82ð
\8dí
\8f\9c\82µ
\82Ü
\82·
\81B
\82æ
\82ë
\82µ
\82¢
\82Å
\82·
\82©
\81H';
788 DEL_TITLE = '
\8dí
\8f\9c\8am
\94F';
790 ThreadItem: TThreadItem;
791 FavThread: TFavoriteThreadItem;
794 if GikoForm.ClickNode = nil then Exit;
795 if not (TObject(GikoForm.ClickNode.Data) is TFavoriteThreadItem) then Exit;
797 FavThread := TFavoriteThreadItem( GikoForm.ClickNode.Data );
798 ThreadItem := FavThread.Item;
801 if GikoSys.Setting.DeleteMsg then begin
802 if (GetKeyState( VK_SHIFT ) and $80000000) = 0 then
803 if MsgBox(GikoForm.Handle, StringReplace( DEL_MSG, '^0', GikoForm.ClickNode.Text, [rfReplaceAll] ) , DEL_TITLE, MB_YESNO or MB_ICONWARNING or MB_DEFBUTTON2) <> ID_YES then
807 GikoForm.DeleteHistory(ThreadItem);
808 GikoForm.DeleteTab(ThreadItem);
809 ThreadItem.DeleteLogFile;
811 GikoForm.ListView.Refresh;
816 // *************************************************************************
817 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\83u
\83\89\83E
\83U
\82Å
\95\
\8e¦
\82·
\82é
818 // *************************************************************************
819 procedure TGikoDM.FavoriteTreeViewBrowseThreadActionExecute(
822 threadItem : TThreadItem;
825 if GikoForm.ClickNode = nil then Exit;
827 if (TObject(GikoForm.ClickNode.Data) is TFavoriteThreadItem) then begin
829 threadItem := TFavoriteThreadItem( GikoForm.ClickNode.Data ).Item;
830 if threadItem = nil then
832 GikoSys.OpenBrowser( threadItem.URL, gbtAuto );
836 //!
\83\8c\83X
\82Ì
\8di
\8d\9e\82Ý
\83t
\83B
\83\8b\83^
\81[
\82ð
\8bó
\82É
\82·
\82é
837 procedure TGikoDM.ClearResFilter;
839 FilterList : TStringList;
841 //
\83t
\83B
\83\8b\83^
\95¶
\8e\9a\97ñ
\82ð
\8bó
\82É
\82·
\82é
842 FilterList := TStringList.Create;
844 GikoSys.FSelectResFilter.LoadFromStringList( FilterList );
845 GikoSys.FSelectResFilter.Reverse := False;
849 GikoForm.SelectResWord := '';
851 // *************************************************************************
852 //!
\83\8c\83X
\82Ì
\95\
\8e¦
\94Í
\88Í
\82ð
\90Ý
\92è
\82·
\82é
853 // *************************************************************************
854 procedure TGikoDM.SetResRange(range: Integer);
856 if GikoSys.ResRange <> range then begin
857 GikoSys.ResRange := range;
858 //
\83t
\83B
\83\8b\83^
\95¶
\8e\9a\97ñ
\82ð
\8bó
\82É
\82·
\82é
860 GikoForm.RepaintAllTabsBrowser();
863 // *************************************************************************
864 //!
\8dÅ
\90V100
\83\8c\83X
\82Ì
\82Ý
\95\
\8e¦
865 // *************************************************************************
866 procedure TGikoDM.OnlyAHundredResActionExecute(Sender: TObject);
868 if (GikoForm.ActiveContent <> nil) and (GikoForm.ActiveContent.Browser <> nil)
869 and (GikoForm.ActiveContent.Browser.Busy) then Exit;
871 GikoForm.ResRangeMenuSelect := 100;
872 OnlyAHundredResAction.Checked := True;
873 //
\81@
\95\
\8e¦
\94Í
\88Í
\82ð
\90Ý
\92è
\82·
\82é
876 // *************************************************************************
877 //!
\96¢
\93Ç
\83\8c\83X
\82Ì
\82Ý
\95\
\8e¦
878 // *************************************************************************
879 procedure TGikoDM.OnlyKokoResActionExecute(Sender: TObject);
881 if (GikoForm.ActiveContent <> nil) and (GikoForm.ActiveContent.Browser <> nil)
882 and (GikoForm.ActiveContent.Browser.Busy) then Exit;
884 GikoForm.ResRangeMenuSelect := Ord( grrKoko );
885 OnlyKokoResAction.Checked := True;
887 //
\81@
\95\
\8e¦
\94Í
\88Í
\82ð
\90Ý
\92è
\82·
\82é
888 SetResRange(Ord( grrKoko ));
890 // *************************************************************************
891 //!
\90V
\92\85\83\8c\83X
\82Ì
\82Ý
\95\
\8e¦
892 // *************************************************************************
893 procedure TGikoDM.OnlyNewResActionExecute(Sender: TObject);
895 if (GikoForm.ActiveContent <> nil) and (GikoForm.ActiveContent.Browser <> nil)
896 and (GikoForm.ActiveContent.Browser.Busy) then Exit;
898 GikoForm.ResRangeMenuSelect := Ord( grrNew );
899 OnlyNewResAction.Checked := True;
901 //
\81@
\95\
\8e¦
\94Í
\88Í
\82ð
\90Ý
\92è
\82·
\82é
902 SetResRange(Ord( grrNew ));
904 // *************************************************************************
905 //!
\83X
\83\8c\83b
\83h
\95\
\8e¦
\83G
\83\8a\83A
\92Ê
\8fí
\95\
\8e¦
\82É
\82·
\82é
\92\8d)ListOrientation = gloHorizontal
\81@
906 // *************************************************************************
907 procedure TGikoDM.SetThreadAreaHorNormal;
909 //
\92Ê
\8fí
\95\
\8e¦
\82É
\82·
\82é
910 GikoForm.ViewPanel.Width := GikoForm.BrowserSizeWidth;
911 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_MAX;
912 BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_MIN;
913 GikoSys.Setting.ListWidthState := glsNormal;
915 // *************************************************************************
916 //!
\83X
\83\8c\83b
\83h
\95\
\8e¦
\83G
\83\8a\83A
\8dÅ
\91å/
\8dÅ
\8f¬
\95\
\8e¦
\82É
\82·
\82é
\92\8d)ListOrientation = gloHorizontal
\81@
917 // *************************************************************************
918 procedure TGikoDM.SetThreadAreaHorizontal(gls : TGikoListState);
920 if GikoSys.Setting.ListWidthState = glsNormal then
921 GikoForm.BrowserSizeWidth := GikoForm.ViewPanel.Width;
923 if (gls = glsMax) then begin
924 GikoForm.ViewPanel.Width := 1;
925 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_NORMAL;
926 BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_MIN;
927 GikoSys.Setting.ListWidthState := glsMax;
928 end else if (gls = glsMin) then begin
929 GikoForm.ViewPanel.Width := GikoForm.ThreadMainPanel.Width - 80;
930 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_MAX;
931 BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_NORMAL;
932 GikoSys.Setting.ListWidthState := glsMin;
935 // *************************************************************************
936 //!
\83X
\83\8c\83b
\83h
\95\
\8e¦
\83G
\83\8a\83A
\92Ê
\8fí
\95\
\8e¦
\82É
\82·
\82é
\92\8d)ListOrientation = gloVertical
937 // *************************************************************************
938 procedure TGikoDM.SetThreadAreaVerNormal;
940 //
\92Ê
\8fí
\95\
\8e¦
\82É
\82·
\82é
941 GikoForm.ViewPanel.Height := GikoForm.BrowserSizeHeight;
942 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_MAX;
943 BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_MIN;
944 GikoSys.Setting.ListHeightState := glsNormal;
946 // *************************************************************************
947 //!
\83X
\83\8c\83b
\83h
\95\
\8e¦
\83G
\83\8a\83A
\8dÅ
\91å/
\8dÅ
\8f¬
\95\
\8e¦
\82É
\82·
\82é
\92\8d)ListOrientation = gloVertical
948 // *************************************************************************
949 procedure TGikoDM.SetThreadAreaVertical(gls : TGikoListState);
951 if GikoSys.Setting.ListHeightState = glsNormal then
952 GikoForm.BrowserSizeHeight := GikoForm.ViewPanel.Height;
953 if (gls = glsMin) then begin
954 GikoForm.ViewPanel.Height := GikoForm.ThreadMainPanel.Height - GikoForm.BrowserCoolBar.Height - 7;
955 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_MAX;
956 BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_NORMAL;
957 GikoSys.Setting.ListHeightState := glsMin;
958 end else if (gls = glsMax) then begin
959 GikoForm.ViewPanel.Height := 1;
960 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_NORMAL;
961 BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_MIN;
962 GikoSys.Setting.ListHeightState := glsMax;
965 // *************************************************************************
966 //!
\83X
\83\8c\83b
\83h
\95\
\8e¦
\83G
\83\8a\83A
\82ð
\91å
\82«
\82
\95\
\8e¦
\82·
\82é
967 // *************************************************************************
968 procedure TGikoDM.BrowserMaxActionExecute(Sender: TObject);
970 if GikoSys.Setting.ListOrientation = gloHorizontal then begin
971 case GikoSys.Setting.ListWidthState of
973 //
\92Ê
\8fí
\95\
\8e¦
\82É
\82·
\82é
974 SetThreadAreaHorNormal;
976 glsMin, glsNormal: begin
977 //
\8dÅ
\91å
\95\
\8e¦
\82É
\82·
\82é
978 SetThreadAreaHorizontal(glsMax);
982 case GikoSys.Setting.ListHeightState of
984 //
\92Ê
\8fí
\95\
\8e¦
\82É
\82·
\82é
985 SetThreadAreaVerNormal;
987 glsMin, glsNormal: begin
988 //
\8dÅ
\91å
\95\
\8e¦
\82É
\82·
\82é
989 SetThreadAreaVertical(glsMax);
994 // *************************************************************************
995 //!
\83X
\83\8c\83b
\83h
\95\
\8e¦
\83G
\83\8a\83A
\82ð
\8f¬
\82³
\82
\95\
\8e¦
\82·
\82é
996 // *************************************************************************
997 procedure TGikoDM.BrowserMinActionExecute(Sender: TObject);
999 if GikoSys.Setting.ListOrientation = gloHorizontal then begin
1000 case GikoSys.Setting.ListWidthState of
1001 glsMax, glsNormal: begin
1002 //
\8dÅ
\8f¬
\95\
\8e¦
\82É
\82·
\82é
1003 SetThreadAreaHorizontal(glsMin);
1006 //
\92Ê
\8fí
\95\
\8e¦
\82É
\82·
\82é
1007 SetThreadAreaHorNormal;
1011 case GikoSys.Setting.ListHeightState of
1012 glsMax, glsNormal: begin
1013 //
\8dÅ
\8f¬
\95\
\8e¦
\82É
\82·
\82é
1014 SetThreadAreaVertical(glsMin);
1017 //
\92Ê
\8fí
\95\
\8e¦
\82É
\82·
\82é
1018 SetThreadAreaVerNormal;
1023 // *************************************************************************
1024 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82Ì
\90æ
\93ª
\82Ö
\88Ú
\93®
\82·
\82é
1025 // *************************************************************************
1026 procedure TGikoDM.ScrollTopActionExecute(Sender: TObject);
1028 GikoForm.BrowserMovement('top');
1030 // *************************************************************************
1031 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82Ì
\8dÅ
\8cã
\82Ö
\88Ú
\93®
\82·
\82é
1032 // *************************************************************************
1033 procedure TGikoDM.ScrollLastActionExecute(Sender: TObject);
1035 GikoForm.BrowserMovement('bottom');
1037 // *************************************************************************
1038 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82Ì
\90V
\92\85\82Ö
\88Ú
\93®
\82·
\82é
1039 // *************************************************************************
1040 procedure TGikoDM.ScrollNewActionExecute(Sender: TObject);
1042 GikoForm.BrowserMovement('new');
1044 // *************************************************************************
1045 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82Ì
\83R
\83R
\82Ü
\82Å
\93Ç
\82ñ
\82¾
\82Ö
\88Ú
\93®
\82·
\82é
1046 // *************************************************************************
1047 procedure TGikoDM.ScrollKokoActionExecute(Sender: TObject);
1049 GikoForm.BrowserMovement('koko');
1051 // *************************************************************************
1052 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82Ì
\83R
\83R
\82Ü
\82Å
\93Ç
\82ñ
\82¾
\82Ö
\88Ú
\93®
\82·
\82é
\82ÌUpdate
\83C
\83x
\83\93\83g
1053 // *************************************************************************
1054 procedure TGikoDM.ScrollKokoActionUpdate(Sender: TObject);
1056 ScrollKokoAction.Enabled := (GikoForm.GetActiveContent <> nil)
1057 and (GikoForm.GetActiveContent.IsLogFile)
1058 and (GikoForm.GetActiveContent.Kokomade <> -1);
1060 // *************************************************************************
1061 //!
\83\8c\83X
\8f\91\82«
\8d\9e\82Ý
\83E
\83B
\83\93\83h
\83E
\82ð
\95\
\8e¦
\82·
\82é
1062 // *************************************************************************
1063 procedure TGikoDM.EditorActionExecute(Sender: TObject);
1065 Editor: TEditorForm;
1068 Item := GikoForm.GetActiveContent;
1069 if Item = nil then Exit;
1070 Editor := TEditorForm.Create(GikoForm.GetMainForm);
1071 Editor.SetThreadItem(Item);
1073 Editor.BodyEdit.SetFocus;
1075 // *************************************************************************
1076 //!
\83X
\83\8c\82ð
\83u
\83\89\83E
\83U
\82Å
\95\
\8e¦
\82·
\82é
1077 // *************************************************************************
1078 procedure TGikoDM.IEActionExecute(Sender: TObject);
1080 ShowThreadAction.Execute;
1082 // *************************************************************************
1083 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\83u
\83\89\83E
\83U
\82Å
\95\
\8e¦
\82·
\82é
1084 // *************************************************************************
1085 procedure TGikoDM.ShowThreadActionExecute(Sender: TObject);
1087 ThreadItem: TThreadItem;
1089 ThreadItem := GikoForm.GetActiveContent;
1090 if ThreadItem = nil then Exit;
1091 GikoSys.OpenBrowser(ThreadItem.URL, gbtAuto);
1093 // *************************************************************************
1094 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82Ì
\94Â
\82ð
\83u
\83\89\83E
\83U
\82Å
\95\
\8e¦
\82·
\82é
1095 // *************************************************************************
1096 procedure TGikoDM.ShowBoardActionExecute(Sender: TObject);
1098 ThreadItem: TThreadItem;
1100 ThreadItem := GikoForm.GetActiveContent;
1101 if ThreadItem = nil then Exit;
1102 GikoSys.OpenBrowser(ThreadItem.ParentBoard.URL, gbtAuto);
1104 // *************************************************************************
1105 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ÌURL
\82ð
\83R
\83s
\81[
\82·
\82é
1106 // *************************************************************************
1107 procedure TGikoDM.URLCopyActionExecute(Sender: TObject);
1112 if TObject(GikoForm.GetActiveContent) is TBoard then
1113 s := s + TBoard(GikoForm.GetActiveContent).URL + #13#10
1114 else if TObject(GikoForm.GetActiveContent) is TThreadItem then
1115 s := s + TThreadItem(GikoForm.GetActiveContent).URL + #13#10;
1117 Clipboard.AsText := s;
1119 // *************************************************************************
1120 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\96¼
\82ð
\83R
\83s
\81[
\82·
\82é
1121 // *************************************************************************
1122 procedure TGikoDM.NameCopyActionExecute(Sender: TObject);
1127 if TObject(GikoForm.GetActiveContent) is TBoard then
1128 s := s + TBoard(GikoForm.GetActiveContent).Title + #13#10
1129 else if TObject(GikoForm.GetActiveContent) is TThreadItem then
1130 s := s + TThreadItem(GikoForm.GetActiveContent).Title + #13#10;
1132 Clipboard.AsText := s;
1134 // *************************************************************************
1135 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\96¼
\82ÆURL
\82ð
\83R
\83s
\81[
\82·
\82é
1136 // *************************************************************************
1137 procedure TGikoDM.NameURLCopyActionExecute(Sender: TObject);
1142 if TObject(GikoForm.GetActiveContent) is TBoard then
1143 s := s + TBoard(GikoForm.GetActiveContent).Title + #13#10 + TBoard(GikoForm.GetActiveContent).URL + #13#10
1144 else if TObject(GikoForm.GetActiveContent) is TThreadItem then
1145 s := s + TThreadItem(GikoForm.GetActiveContent).Title + #13#10 + TThreadItem(GikoForm.GetActiveContent).URL + #13#10;
1147 Clipboard.AsText := s;
1149 // *************************************************************************
1150 //!
\95\
\8e¦
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\83_
\83E
\83\93\83\8d\81[
\83h
\82·
\82é
1151 // *************************************************************************
1152 procedure TGikoDM.ItemReloadActionExecute(Sender: TObject);
1154 ThreadItem: TThreadItem;
1157 ThreadItem := GikoForm.GetActiveContent;
1158 shiftDown := GetAsyncKeyState(VK_SHIFT) = Smallint($8001);
1159 if ThreadItem <> nil then
1160 GikoForm.DownloadContent(ThreadItem, shiftDown);
1162 // *************************************************************************
1163 //!
\8c»
\8dÝ
\8aJ
\82¢
\82Ä
\82¢
\82é
\83^
\83u
\82ð
\95Â
\82¶
\82é
1164 // *************************************************************************
1165 procedure TGikoDM.BrowserTabCloseActionExecute(Sender: TObject);
1169 idx := GikoForm.BrowserTab.TabIndex;
1170 if idx <> -1 then begin
1171 if GikoForm.BrowserTab.Tabs.Objects[idx] <> nil then begin
1172 GikoForm.DeleteTab(TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[idx]));
1176 // *************************************************************************
1177 //!
\83^
\83u
\82ª
\82P
\82Â
\88È
\8fã
\82 \82ê
\82ª
\97L
\8cø
\82É
\82·
\82éUpdate
\83C
\83x
\83\93\83g
1178 // *************************************************************************
1179 procedure TGikoDM.BrowserTabCloseActionUpdate(Sender: TObject);
1181 TAction(Sender).Enabled := (GikoForm.BrowserTab.Tabs.Count > 0);
1183 // *************************************************************************
1184 //!
\8c»
\8dÝ
\8aJ
\82¢
\82Ä
\82¢
\82é
\83^
\83u
\88È
\8aO
\82ð
\95Â
\82¶
\82é
1185 // *************************************************************************
1186 procedure TGikoDM.NotSelectTabCloseActionExecute(Sender: TObject);
1191 idx := GikoForm.BrowserTab.TabIndex;
1192 if idx = -1 then Exit;
1193 GikoForm.BrowserTab.Tabs.BeginUpdate;
1194 for i := GikoForm.BrowserTab.Tabs.Count - 1 downto GikoForm.BrowserTab.TabIndex + 1 do begin
1195 TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[i]).Free;
1196 GikoForm.BrowserTab.Tabs.Delete(i);
1198 if idx > 0 then begin
1199 for i := GikoForm.BrowserTab.TabIndex - 1 downto 0 do begin
1200 TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[i]).Free;
1201 GikoForm.BrowserTab.Tabs.Delete(i);
1204 GikoForm.BrowserTab.Tabs.EndUpdate;
1206 // *************************************************************************
1207 //!
\83^
\83u
\82ª
\82Q
\82Â
\88È
\8fã
\82 \82ê
\82ª
\97L
\8cø
\82É
\82·
\82éUpdate
\83C
\83x
\83\93\83g
1208 // *************************************************************************
1209 procedure TGikoDM.NotSelectTabCloseActionUpdate(Sender: TObject);
1211 TAction(Sender).Enabled := (GikoForm.BrowserTab.Tabs.Count > 1);
1213 // *************************************************************************
1214 //!
\91S
\82Ä
\82Ì
\83^
\83u
\82ð
\95Â
\82¶
\82é
1215 // *************************************************************************
1216 procedure TGikoDM.AllTabCloseActionExecute(Sender: TObject);
1220 if GikoSys.Setting.ShowDialogForAllTabClose then
1221 if(MessageDlg('
\91S
\82Ä
\82Ì
\83^
\83u
\82ð
\95Â
\82¶
\82Ä
\82æ
\82ë
\82µ
\82¢
\82Å
\82·
\82©
\81H', mtConfirmation,[mbOk, mbCancel], 0) = mrCancel ) then
1224 GikoForm.ActiveContent := nil;
1225 GikoForm.BrowserNullTab.Thread := nil;
1226 GikoForm.BrowserTab.OnChange := nil;
1227 GikoForm.BrowserTab.Tabs.BeginUpdate;
1228 for i := GikoForm.BrowserTab.Tabs.Count - 1 downto 0 do begin
1229 TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[i]).Free;
1231 GikoForm.BrowserTab.Tabs.Clear;
1232 GikoForm.BrowserTab.Tabs.EndUpdate;
1233 GikoForm.BrowserTab.OnChange := GikoForm.BrowserTabChange;
1234 GikoForm.SetContent(GikoForm.BrowserNullTab);
1235 GikoForm.Caption := CAPTION_NAME ;
1237 // *************************************************************************
1238 //!
\8c»
\8dÝ
\8aJ
\82¢
\82Ä
\82¢
\82é
\83^
\83u
\82Ì
\83X
\83\8c\83b
\83h
\82ð
\8dí
\8f\9c\82·
\82é
1239 // *************************************************************************
1240 procedure TGikoDM.ActiveLogDeleteActionExecute(Sender: TObject);
1242 DEL_MSG = '
\81g^0
\81h
\82Ì
\83\8d\83O
\82ð
\8dí
\8f\9c\82µ
\82Ü
\82·
\81B
\82æ
\82ë
\82µ
\82¢
\82Å
\82·
\82©
\81H';
1243 DEL_TITLE = '
\8dí
\8f\9c\8am
\94F';
1246 ThreadItem: TThreadItem;
1248 idx := GikoForm.BrowserTab.TabIndex;
1249 if idx <> -1 then begin
1250 if GikoForm.BrowserTab.Tabs.Objects[idx] <> nil then begin
1251 ThreadItem := TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[idx]).Thread;
1252 if GikoSys.Setting.DeleteMsg then
1253 if (GetKeyState( VK_SHIFT ) and $80000000) = 0 then
1254 if MsgBox(GikoForm.Handle, StringReplace( DEL_MSG, '^0', ThreadItem.Title, [rfReplaceAll] ) , DEL_TITLE, MB_YESNO or MB_ICONWARNING or MB_DEFBUTTON2) <> ID_YES then
1256 GikoForm.DeleteTab(TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[idx]));
1257 GikoForm.DeleteHistory(ThreadItem);
1258 ThreadItem.DeleteLogFile;
1259 if ThreadItem.ParentBoard = GikoForm.ActiveList then
1260 GikoForm.ListView.Refresh;
1264 // *************************************************************************
1265 //!
\88ê
\94Ô
\8d¶
\82Ì
\83^
\83u
\82ð
\91I
\91ð
\82·
\82é
1266 // *************************************************************************
1267 procedure TGikoDM.LeftmostTabSelectActionExecute(Sender: TObject);
1269 if GikoForm.BrowserTab.Tabs.Count > 0 then begin
1270 GikoForm.BrowserTab.TabIndex := 0;
1271 GikoForm.BrowserTab.OnChange(nil);
1274 // *************************************************************************
1275 //!
\83^
\83u
\82Ì
\90\94\82ª
\82P
\88È
\8fã
\82Å
\81A
\83^
\83u
\82Ì
\83C
\83\93\83f
\83b
\83N
\83X
\82ª
\82O
\88È
\8aO
\82Å
\97L
\8cø
\82É
\82È
\82éUpdate
\83C
\83x
\83\93\83g
1276 // *************************************************************************
1277 procedure TGikoDM.LeftmostTabSelectActionUpdate(Sender: TObject);
1279 TAction(Sender).Enabled := (GikoForm.BrowserTab.Tabs.Count > 0)
1280 and (GikoForm.BrowserTab.TabIndex <> 0);
1282 // *************************************************************************
1283 //!
\8d¶
\82Ì
\83^
\83u
\82ð
\91I
\91ð
\82·
\82é
1284 // *************************************************************************
1285 procedure TGikoDM.LeftTabSelectActionExecute(Sender: TObject);
1287 if GikoForm.BrowserTab.Tabs.Count > 0 then begin
1288 if GikoForm.BrowserTab.TabIndex = -1 then begin
1289 GikoForm.BrowserTab.TabIndex := 0;
1290 GikoForm.BrowserTab.OnChange(nil);
1291 end else if GikoForm.BrowserTab.TabIndex > 0 then begin
1292 GikoForm.BrowserTab.TabIndex := GikoForm.BrowserTab.TabIndex - 1;
1293 GikoForm.BrowserTab.OnChange(nil);
1297 // *************************************************************************
1298 //!
\89E
\82Ì
\83^
\83u
\82ð
\91I
\91ð
\82·
\82é
1299 // *************************************************************************
1300 procedure TGikoDM.RightTabSelectActionExecute(Sender: TObject);
1302 if GikoForm.BrowserTab.Tabs.Count > 0 then begin
1303 if GikoForm.BrowserTab.TabIndex = -1 then begin
1304 GikoForm.BrowserTab.TabIndex := GikoForm.BrowserTab.Tabs.Count - 1;
1305 GikoForm.BrowserTab.OnChange(nil);
1306 end else if GikoForm.BrowserTab.TabIndex < (GikoForm.BrowserTab.Tabs.Count - 1) then begin
1307 GikoForm.BrowserTab.TabIndex := GikoForm.BrowserTab.TabIndex + 1;
1308 GikoForm.BrowserTab.OnChange(nil);
1312 // *************************************************************************
1313 //!
\83^
\83u
\82Ì
\90\94\82ª
\82P
\88È
\8fã
\82Å
\81A
\83^
\83u
\82ª
\89E
\92[
\88È
\8aO
\82Å
\97L
\8cø
\82É
\82È
\82éUpdate
\83C
\83x
\83\93\83g
1314 // *************************************************************************
1315 procedure TGikoDM.RightTabSelectActionUpdate(Sender: TObject);
1317 TAction(Sender).Enabled := (GikoForm.BrowserTab.Tabs.Count > 0)
1318 and (GikoForm.BrowserTab.TabIndex <> GikoForm.BrowserTab.Tabs.Count - 1);
1320 // *************************************************************************
1321 //!
\88ê
\94Ô
\89E
\82Ì
\83^
\83u
\82ð
\91I
\91ð
\82·
\82é
1322 // *************************************************************************
1323 procedure TGikoDM.RightmostTabSelectActionExecute(Sender: TObject);
1325 if GikoForm.BrowserTab.Tabs.Count > 0 then begin
1326 GikoForm.BrowserTab.TabIndex := GikoForm.BrowserTab.Tabs.Count - 1;
1327 GikoForm.BrowserTab.OnChange(nil);
1330 // *************************************************************************
1331 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\82¨
\8bC
\82É
\93ü
\82è
\82É
\92Ç
\89Á
1332 // *************************************************************************
1333 procedure TGikoDM.ThreadFavoriteAddActionExecute(Sender: TObject);
1335 if TObject(GikoForm.ListView.Selected.Data) is TThreadItem then
1336 GikoForm.ShowFavoriteAddDialog(TObject(GikoForm.ListView.Selected.Data));
1338 // *************************************************************************
1339 //!
\83X
\83\8c\83b
\83h
\88ê
\97\97\82Å
\81A
\83X
\83\8c\82ª
\82P
\82Â
\88È
\8fã
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\97L
\8cø
\82É
\82È
\82éUpdate
\83C
\83x
\83\93\83g
1340 // *************************************************************************
1341 procedure TGikoDM.ThreadFavoriteAddActionUpdate(Sender: TObject);
1343 TAction(Sender).Enabled := (GikoForm.GetActiveList is TBoard)
1344 and (GikoForm.ListView.SelCount > 0);
1346 // *************************************************************************
1347 //!
\83\8c\83X
\82Ì
\93à
\97e
\82ð
\8di
\82è
\8d\9e\82Þ
1348 // *************************************************************************
1349 procedure TGikoDM.SelectResActionExecute(Sender: TObject);
1351 Dlg: TListSelectDialog;
1352 FilterList : TStringList;
1355 Dlg := TListSelectDialog.Create(GikoForm);
1357 Dlg.SelectComboBox.Items.Assign(GikoSys.Setting.SelectTextList);
1358 Dlg.SelectComboBox.Text := GikoForm.SelectResWord;
1360 if Dlg.ModalResult = mrOK then begin
1361 SelectResAction.Checked := True;
1362 if Length( Dlg.SelectComboBox.Text ) = 0 then begin
1363 //
\8bó
\93ü
\97Í
\82Å OK
\82Í
\8di
\82è
\8d\9e\82Ý
\89ð
\8f\9c\82Æ
\93¯
\88Ó
\8b`
1364 ResRangeAction.Execute;
1366 GikoSys.ResRange := Ord( grrSelect );
1368 //
\8dÅ
\8cã
\82É
\90Ý
\92è
\82µ
\82½
\82à
\82Ì
\82ð
\8ao
\82¦
\82Ä
\82¨
\82
1369 GikoForm.SelectResWord := Dlg.SelectComboBox.Text;
1371 //
\8c\9f\8dõ
\97\9a\97ð
\82Ì
\8dX
\90V
1372 idx := GikoSys.Setting.SelectTextList.IndexOf(Dlg.SelectComboBox.Text);
1374 GikoSys.Setting.SelectTextList.Delete(idx);
1375 GikoSys.Setting.SelectTextList.Insert(0, Dlg.SelectComboBox.Text);
1376 while Dlg.SelectComboBox.Items.Count > 100 do begin
1377 Dlg.SelectComboBox.Items.Delete(Dlg.SelectComboBox.Items.Count - 1);
1381 if GikoForm.SelectComboBoxPanel.Visible then
1382 GikoForm.SelectComboBox.Items.Assign( GikoSys.Setting.SelectTextList );
1386 //
\83t
\83B
\83\8b\83^
\82Ì
\90Ý
\92è
1387 FilterList := TStringList.Create;
1389 GikoSys.FSelectResFilter.Reverse := True;
1390 FilterList.Delimiter := ' '; //
\8bæ
\90Ø
\82è
\8eq
\82ð
\94¼
\8ap
\83X
\83y
\81[
\83X
\82É
\90Ý
\92è
1391 FilterList.DelimitedText := Dlg.SelectComboBox.Text;
1393 GikoSys.FSelectResFilter.LoadFromStringList( FilterList );
1397 GikoForm.RepaintAllTabsBrowser();
1400 //
\83L
\83\83\83\93\83Z
\83\8b
1401 if GikoSys.ResRange <> Ord( grrSelect ) then
1402 ResRangeAction.Execute;
1409 // *************************************************************************
1410 //!
\91S
\82Ä
\82Ì
\83\8c\83X
\82ð
\95\
\8e¦
\82·
\82é
1411 // *************************************************************************
1412 procedure TGikoDM.AllResActionExecute(Sender: TObject);
1414 if(GikoForm.ActiveContent <> nil) and (GikoForm.ActiveContent.Browser <> nil )
1415 and (GikoForm.ActiveContent.Browser.Busy) then Exit;
1417 GikoForm.ResRangeMenuSelect := Ord( grrAll );
1418 AllResAction.Checked := True;
1420 //
\81@
\95\
\8e¦
\94Í
\88Í
\82ð
\90Ý
\92è
\82·
\82é
1421 SetResRange(Ord( grrAll ));
1423 // *************************************************************************
1424 //!
\83\8c\83X
\82Ì
\95\
\8e¦
\94Í
\88Í
\82ð
\90Ý
\92è
1425 // *************************************************************************
1426 procedure TGikoDM.ResRangeActionExecute(Sender: TObject);
1428 case GikoForm.ResRangeMenuSelect of
1429 Ord( grrAll ): AllResAction.Execute;
1430 Ord( grrKoko ): OnlyKokoResAction.Execute;
1431 Ord( grrNew ): OnlyNewResAction.Execute;
1432 100: OnlyAHundredResAction.Execute;
1436 // *************************************************************************
1437 //!
\82±
\82Ì
\83X
\83\8c\83b
\83h
\82ð
\8aÜ
\82Þ
\83X
\83\8c\83b
\83h
\88ê
\97\97\82ð
\95\
\8e¦
1438 // *************************************************************************
1439 procedure TGikoDM.UpBoardActionExecute(Sender: TObject);
1441 GikoForm.SelectTreeNode( GikoForm.GetActiveContent.ParentBoard, True );
1443 // *************************************************************************
1444 //!
\8ew
\92è
\82µ
\82½
\94Ô
\8d\86\82Ì
\83\8c\83X
\82É
\94ò
\82Ô
1445 // *************************************************************************
1446 procedure TGikoDM.JumpToNumOfResActionExecute(Sender: TObject);
1452 if( InputQuery('
\8ew
\92è
\82µ
\82½
\94Ô
\8d\86\82Ì
\83\8c\83X
\82É
\94ò
\82Ô', '
\94Ô
\8d\86\82ð
\93ü
\97Í
\82µ
\82Ä
\82
\82¾
\82³
\82¢', str) ) then begin
1453 str := ZenToHan(str);
1454 res := StrToIntDef(str, -1);
1455 if (res > 0) and (res <= GikoForm.GetActiveContent.Count) then begin
1456 GikoForm.ActiveContent.Move(IntToStr(res));
1457 SetFocusForBrowserAction.Execute;
1458 end else if res > GikoForm.GetActiveContent.Count then begin
1459 GikoForm.ActiveContent.Move(IntToStr(GikoForm.GetActiveContent.Count));
1460 SetFocusForBrowserAction.Execute;
1464 // *************************************************************************
1465 //!
\83A
\83N
\83e
\83B
\83u
\82È
\83^
\83u
\82æ
\82è
\89E
\82ð
\95Â
\82¶
\82é
1466 // *************************************************************************
1467 procedure TGikoDM.RightTabCloseActionExecute(Sender: TObject);
1472 idx := GikoForm.BrowserTab.TabIndex;
1473 if idx = -1 then Exit;
1474 GikoForm.BrowserTab.Tabs.BeginUpdate;
1475 for i := GikoForm.BrowserTab.Tabs.Count - 1 downto idx + 1 do begin
1476 TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[i]).Free;
1477 GikoForm.BrowserTab.Tabs.Delete(i);
1479 GikoForm.BrowserTab.Tabs.EndUpdate;
1481 // *************************************************************************
1482 //!
\83^
\83u
\82Ì
\90\94\82ª
\82Q
\88È
\8fã
\82Å
\97L
\8cø
\82ÈUpdate
\83C
\83x
\83\93\83g
1483 // *************************************************************************
1484 procedure TGikoDM.RightTabCloseActionUpdate(Sender: TObject);
1486 TAction(Sender).Enabled := (GikoForm.BrowserTab.Tabs.Count > 1);
1488 // *************************************************************************
1489 //!
\83A
\83N
\83e
\83B
\83u
\82È
\83^
\83u
\82æ
\82è
\8d¶
\82ð
\95Â
\82¶
\82é
1490 // *************************************************************************
1491 procedure TGikoDM.LeftTabCloseActionExecute(Sender: TObject);
1496 idx := GikoForm.BrowserTab.TabIndex;
1497 if idx = -1 then Exit;
1498 GikoForm.BrowserTab.Tabs.BeginUpdate;
1499 if idx > 0 then begin
1500 for i := idx - 1 downto 0 do begin
1501 TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[i]).Free;
1502 GikoForm.BrowserTab.Tabs.Delete(i);
1505 GikoForm.BrowserTab.Tabs.EndUpdate;
1507 ////////////////////////////////
\83X
\83\8c\83b
\83h
\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
1508 procedure TGikoDM.DataModuleCreate(Sender: TObject);
1511 // *************************************************************************
1512 //!
\83\8d\83O
\8c\9f\8dõ
\83_
\83C
\83A
\83\8d\83O
\82ð
\95\
\8e¦
\82·
\82é
1513 // *************************************************************************
1514 procedure TGikoDM.SearchActionExecute(Sender: TObject);
1519 if GikoForm.SearchDialog = nil then begin
1520 if (GikoForm.GetActiveList is TCategory) or (GikoForm.GetActiveList is TBoard) then
1521 chk := GikoForm.GetActiveList
1525 GikoForm.SearchDialog := TSearchDialog.Create(GikoForm, chk);
1526 GikoForm.SearchDialog.SearchComboBox.Items.Assign( GikoSys.Setting.SelectTextList );
1530 GikoForm.SearchDialog.Show;
1534 // *************************************************************************
1535 //!
\83I
\83v
\83V
\83\87\83\93\83_
\83C
\83A
\83\8d\83O
\82ð
\95\
\8e¦
\82·
\82é
1536 // *************************************************************************
1537 procedure TGikoDM.OptionActionExecute(Sender: TObject);
1541 Dlg := TOptionDialog.Create(GikoForm);
1548 // *************************************************************************
1549 //!
\8f\84\89ñ
\83_
\83C
\83A
\83\8d\83O
\82ð
\95\
\8e¦
\82·
\82é
1550 // *************************************************************************
1551 procedure TGikoDM.RoundActionExecute(Sender: TObject);
1555 Dlg := TRoundDialog.Create(GikoForm);
1562 // *************************************************************************
1563 //!
\83L
\81[
\90Ý
\92è
\83_
\83C
\83A
\83\8d\83O
\82ð
\8aJ
\82
1564 // *************************************************************************
1565 procedure TGikoDM.KeySettingActionExecute(Sender: TObject);
1567 Dlg: TKeySettingForm;
1569 Dlg := TKeySettingForm.Create(GikoForm);
1571 if Dlg.ShowModal = mrOk then begin
1572 GikoSys.SaveKeySetting(GikoFormActionList, Setting.KEY_SETTING_FILE_NAME);
1573 GikoSys.SaveKeySetting(Dlg.EditorForm.ActionList, Setting.EKEY_SETTING_FILE_NAME);
1574 GikoSys.Setting.Gestures.SaveGesture( GikoSys.Setting.GetGestureFileName );
1579 MouseGesture.UnHook;
1580 MouseGesture.OnGestureStart := GikoForm.OnGestureStart;
1581 MouseGesture.OnGestureMove := GikoForm.OnGestureMove;
1582 MouseGesture.OnGestureEnd := GikoForm.OnGestureEnd;
1583 if GikoSys.Setting.GestureEnabled then begin
1584 GikoSys.Setting.Gestures.ClearGesture;
1585 GikoSys.Setting.Gestures.LoadGesture(
1586 GikoSys.Setting.GetGestureFileName, GikoFormActionList );
1587 MouseGesture.SetHook( GikoForm.Handle );
1591 // *************************************************************************
1592 //!
\83L
\81[
\90Ý
\92è
\83_
\83C
\83A
\83\8d\83O
\82ð
\8aJ
\82
1593 // *************************************************************************
1594 procedure TGikoDM.KotehanActionExecute(Sender: TObject);
1596 Dlg: TKotehanDialog;
1598 Dlg := TKotehanDialog.Create(GikoForm);
1605 // *************************************************************************
1606 //!
\83c
\81[
\83\8b\83o
\81[
\90Ý
\92è
\83_
\83C
\83A
\83\8d\83O
\82ð
\8aJ
\82
1607 // *************************************************************************
1608 procedure TGikoDM.ToolBarSettingActionExecute(Sender: TObject);
1610 Dlg: TToolBarSettingDialog;
1613 Dlg := TToolBarSettingDialog.Create(GikoForm, GikoFormActionList);
1615 Dlg.AddToolBar(GikoForm.StdToolBar, gttStandard);
1616 Dlg.AddToolBar(GikoForm.ListToolBar, gttList);
1617 Dlg.AddToolBar(GikoForm.BrowserToolBar, gttBrowser);
1618 case GikoForm.ToolBarSettingSender of
1619 tssMain: Dlg.ToolBarIndex := 0;
1620 tssList: Dlg.ToolBarIndex := 1;
1621 tssBrowser: Dlg.ToolBarIndex := 2;
1623 if Dlg.ShowModal = mrOK then begin
1624 GikoForm.SetToolBarPopup;
1626 //
\8dÅ
\93K
\95\9d\82ð
\8dÄ
\90Ý
\92è
\82·
\82é
\82½
\82ß
\82É
\93K
\93\96\82È
\83v
\83\8d\83p
\83e
\83B
\82ð
\82¢
\82¶
\82
\82é
1627 for i := 0 to GikoForm.MainCoolBar.Bands.Count - 1 do begin
1628 GikoForm.MainCoolBar.Bands[i].MinWidth :=
1629 GikoForm.MainCoolBar.Bands[i].MinWidth + 1;
1630 GikoForm.MainCoolBar.Bands[i].MinWidth :=
1631 GikoForm.MainCoolBar.Bands[i].MinWidth - 1;
1633 for i := 0 to GikoForm.ListCoolBar.Bands.Count - 1 do begin
1634 GikoForm.ListCoolBar.Bands[i].MinWidth :=
1635 GikoForm.ListCoolBar.Bands[i].MinWidth + 1;
1636 GikoForm.ListCoolBar.Bands[i].MinWidth :=
1637 GikoForm.ListCoolBar.Bands[i].MinWidth - 1;
1639 for i := 0 to GikoForm.BrowserCoolBar.Bands.Count - 1 do begin
1640 GikoForm.BrowserCoolBar.Bands[i].MinWidth :=
1641 GikoForm.BrowserCoolBar.Bands[i].MinWidth + 1;
1642 GikoForm.BrowserCoolBar.Bands[i].MinWidth :=
1643 GikoForm.BrowserCoolBar.Bands[i].MinWidth - 1;
1646 SaveToolBarSetting(GikoForm.StdToolBar);
1647 SaveToolBarSetting(GikoForm.ListToolBar);
1648 //ListToolBar
\82É
\82¢
\82é
\82©
\82à
\82µ
\82ê
\82È
\82¢
\8di
\8d\9e\82ÝComboBox
\82ð
\94z
\92u
1649 GikoForm.SetSelectComboBox;
1650 GikoForm.ResetBandInfo( GikoForm.ListCoolBar, GikoForm.ListToolBar );
1651 SaveToolBarSetting(GikoForm.BrowserToolBar);
1655 GikoForm.ToolBarSettingSender := tssNone;
1658 // *************************************************************************
1659 //!
\83~
\83\85\81[
\83g
1660 // *************************************************************************
1661 procedure TGikoDM.MuteActionExecute(Sender: TObject);
1663 GikoSys.Setting.Mute := not GikoSys.Setting.Mute;
1665 ////////////////////////////////
\83c
\81[
\83\8b\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
1666 // *************************************************************************
1667 //!
\83X
\83\8c\83b
\83h
\88ê
\97\97\82ð
\83_
\83E
\83\93\83\8d\81[
\83h
\82·
\82é
1668 // *************************************************************************
1669 procedure TGikoDM.TreeSelectBoradReloadExecute(Sender: TObject);
1672 TmpTreeNode: TTreeNode;
1674 TmpTreeNode := GikoForm.ClickNode;
1675 GikoForm.TreeView.Selected := GikoForm.ClickNode;
1678 if TObject(TmpTreeNode.Data) is TBoard then
1679 Board := TBoard(TmpTreeNode.Data)
1680 else if TObject(TmpTreeNode.Data) is TFavoriteBoardItem then
1681 Board := TFavoriteBoardItem(TmpTreeNode.Data).Item;
1683 if Board <> nil then
1684 GikoForm.DownloadList(Board);
1686 // *************************************************************************
1687 //!
\91I
\91ð
\82³
\82ê
\82½
\83X
\83\8c\83b
\83h
\82ð
\83_
\83E
\83\93\83\8d\81[
\83h
\82·
\82é
1688 // *************************************************************************
1689 procedure TGikoDM.TreeSelectThreadReloadExecute(Sender: TObject);
1691 ThreadItem: TThreadItem;
1692 TmpTreeNode: TTreeNode;
1694 TmpTreeNode := GikoForm.ClickNode;
1695 GikoForm.TreeView.Selected := GikoForm.ClickNode;
1698 if TObject(TmpTreeNode.Data) is TThreadItem then
1699 ThreadItem := TThreadItem(TmpTreeNode.Data)
1700 else if TObject(TmpTreeNode.Data) is TFavoriteThreadItem then
1701 ThreadItem := TFavoriteThreadItem(TmpTreeNode.Data).Item;
1703 if ThreadItem <> nil then
1704 GikoForm.DownloadContent(ThreadItem);
1706 // *************************************************************************
1707 //!
\91I
\91ð
\82³
\82ê
\82½
\94Â
\82ÌURL
\82ð
\83R
\83s
\81[
\82·
\82é
1708 // *************************************************************************
1709 procedure TGikoDM.TreeSelectURLCopyExecute(Sender: TObject);
1711 TmpTreeNode: TTreeNode;
1714 TmpTreeNode := GikoForm.ClickNode;
1715 GikoForm.TreeView.Selected := GikoForm.ClickNode;
1716 if TObject(TmpTreeNode.Data) is TBoard then begin
1717 s := TBoard(TmpTreeNode.Data).URL + #13#10;
1718 end else if TObject(TmpTreeNode.Data) is TFavoriteBoardItem then begin
1719 s := TFavoriteBoardItem(TmpTreeNode.Data).URL + #13#10;
1720 end else if (TObject(TmpTreeNode.Data) is TThreadItem) then begin
1721 s := TThreadItem(TmpTreeNode.Data).URL + #13#10;
1722 end else if TObject(TmpTreeNode.Data) is TFavoriteThreadItem then begin
1723 s := TFavoriteThreadItem(TmpTreeNode.Data).URL + #13#10;
1725 Clipboard.AsText := s;
1727 // *************************************************************************
1728 //!
\91I
\91ð
\82³
\82ê
\82½
\94Â
\82Ì
\96¼
\91O
\82ÆURL
\82ð
\83R
\83s
\81[
\82·
\82é
1729 // *************************************************************************
1730 procedure TGikoDM.TreeSelectNameURLCopyExecute(Sender: TObject);
1732 TmpTreeNode: TTreeNode;
1735 TmpTreeNode := GikoForm.ClickNode;
1736 GikoForm.TreeView.Selected := GikoForm.ClickNode;
1737 if TObject(TmpTreeNode.Data) is TBoard then begin
1738 s := TBoard(TmpTreeNode.Data).Title + #13#10 + TBoard(TmpTreeNode.Data).URL + #13#10;
1739 end else if TObject(TmpTreeNode.Data) is TFavoriteBoardItem then begin
1740 s := TFavoriteBoardItem(TmpTreeNode.Data).Item.Title + #13#10 + TFavoriteBoardItem(TmpTreeNode.Data).URL + #13#10;
1741 end else if (TObject(TmpTreeNode.Data) is TThreadItem) then begin
1742 s := TThreadItem(TmpTreeNode.Data).Title + #13#10 + TThreadItem(TmpTreeNode.Data).URL + #13#10;
1743 end else if TObject(TmpTreeNode.Data) is TFavoriteThreadItem then begin
1744 s := TFavoriteThreadItem(TmpTreeNode.Data).Item.Title + #13#10 + TFavoriteThreadItem(TmpTreeNode.Data).URL + #13#10;
1746 Clipboard.AsText := s;
1748 // *************************************************************************
1749 //!
\82¨
\8bC
\82É
\93ü
\82è
\82É
\92Ç
\89Á
\82·
\82é
1750 // *************************************************************************
1751 procedure TGikoDM.TreeSelectFavoriteAddActionExecute(Sender: TObject);
1753 GikoForm.ShowFavoriteAddDialog(TObject(GikoForm.ClickNode.Data));
1755 // *************************************************************************
1756 //!
\94Â
\96¼
\8c\9f\8dõ
1757 // *************************************************************************
1758 procedure TGikoDM.TreeSelectSearchBoardNameExecute(Sender: TObject);
1762 CurItem : TTreeNode;
1765 if InputQuery('
\94Â
\96¼
\8c\9f\8dõ','
\94Â
\96¼
\82Ì
\93ü
\97Í',s) then begin
1768 if GikoForm.TreeView.Selected = nil then
1769 CurItem := GikoForm.TreeView.Items.GetFirstNode
1771 CurItem := GikoForm.TreeView.Selected.GetNext;
1772 if CurItem = nil then
1773 CurItem := GikoForm.TreeView.Items.GetFirstNode;
1775 while CurItem <> nil do begin
1776 if (CurItem.ImageIndex <> 2) and (VaguePos(s,CurItem.Text) <> 0) then begin
1779 CurItem := CurItem.GetNext;
1782 if CurItem = nil then begin
1783 msg := '
\90æ
\93ª
\82É
\96ß
\82è
\82Ü
\82·
\82©
\81H';
1784 if MsgBox(GikoForm.Handle, msg, '', MB_YESNO or MB_ICONEXCLAMATION) = mrYes then begin
1785 CurItem := GikoForm.TreeView.Items.GetFirstNode;
1789 GikoForm.TreeView.Select(CurItem);
1790 GikoForm.TreeView.SetFocus;
1792 GikoForm.TreeView.Select(CurItem);
1793 GikoForm.TreeView.SetFocus;
1794 msg := '
\8e\9f\82É
\8ds
\82«
\82Ü
\82·
\82©
\81H';
1795 if MsgBox(GikoForm.Handle, msg, '', MB_YESNO or MB_ICONEXCLAMATION) = mrYes then begin
1808 // *************************************************************************
1809 //!
\91I
\91ð
\82³
\82ê
\82½
\94Â
\82Ì
\96¼
\91O
\82ð
\83R
\83s
\81[
\82·
\82é
1810 // *************************************************************************
1811 procedure TGikoDM.TreeSelectNameCopyExecute(Sender: TObject);
1815 GikoForm.TreeView.Selected := GikoForm.ClickNode;
1816 s := GikoForm.ClickNode.Text;
1817 Clipboard.AsText := s;
1819 ////////////////////////////////
\83c
\83\8a\81[
\83|
\83b
\83v
\83A
\83b
\83v
\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
1820 // *************************************************************************
1821 //!
\83\8d\83O
\83C
\83\93\81^
\83\8d\83O
\83A
\83E
\83g
\82ð
\82·
\82é
1822 // *************************************************************************
1823 procedure TGikoDM.LoginActionExecute(Sender: TObject);
1828 if GikoSys.Dolib.Connected then begin
1829 //
\83\8d\83O
\83A
\83E
\83g
1830 GikoSys.Dolib.Disconnect;
1831 LoginAction.Checked := False;
1832 GikoForm.AddMessageList(GikoSys.GetGikoMessage(gmLogout), nil, gmiOK);
1833 LoginAction.Caption := '
\83\8d\83O
\83C
\83\93(&L)';
1835 TmpCursor := GikoForm.ScreenCursor;
1836 GikoForm.ScreenCursor := crHourGlass;
1838 //
\92Ê
\8fí
\83\8d\83O
\83C
\83\93
1839 if not GikoSys.Setting.ForcedLogin then begin
1840 GikoSys.Dolib.ClientUA := 'gikoNavi/1.00';
1841 GikoSys.Dolib.UserName := GikoSys.Setting.UserID;
1842 GikoSys.Dolib.Password := GikoSys.Setting.Password;
1843 if GikoSys.Setting.ReadProxy then begin
1844 GikoSys.Dolib.ProxyAddress := GikoSys.Setting.ReadProxyAddress;
1845 GikoSys.Dolib.ProxyPort := GikoSys.Setting.ReadProxyPort;
1847 GikoSys.Dolib.ProxyAddress := '';
1848 GikoSys.Dolib.ProxyPort := 0;
1850 if GikoSys.Dolib.Connect then begin
1851 LoginAction.Checked := True;
1852 GikoForm.AddMessageList(GikoSys.GetGikoMessage(gmLogin) + GikoSys.Setting.UserID, nil, gmiOK);
1853 LoginAction.Caption := '
\83\8d\83O
\83A
\83E
\83g(&L)';
1854 //LoginToolButton.Style := tbsCheck;
1856 // MsgBox(Handle, '
\83\8d\83O
\83C
\83\93\8fo
\97\88\82Ü
\82¹
\82ñ
\82Å
\82µ
\82½', '
\83G
\83\89\81[', MB_OK or MB_ICONSTOP);
1857 GikoForm.AddMessageList(GikoSys.Dolib.ErrorMsg, nil, gmiNG);
1858 GikoForm.PlaySound('Error');
1859 LoginAction.Checked := False;
1860 //LoginToolButton.Down := False;
1861 ///LoginToolButton.Style := tbsButton;
1864 msg := '
\8b
\90§
\83\8d\83O
\83C
\83\93\83\82\81[
\83h
\82Å
\82Í
\81C
\83T
\81[
\83o
\82Ì
\8fØ
\96¾
\8f\91\82Ì
\97L
\8cø
\90«
\82ð
\83`
\83F
\83b
\83N
\82µ
\82Ü
\82¹
\82ñ
\81B' + #13#10
1865 + '
\8bU
\91\95\83T
\81[
\83o
\82Ì
\8fê
\8d\87\81A
\82 \82È
\82½
\82Ì
\83p
\83X
\83\8f\81[
\83h
\93\90\82Ü
\82ê
\82é
\89Â
\94\
\90«
\82ª
\82 \82è
\82Ü
\82·
\81B' + #13#10
1866 + '
\82±
\82Ì
\83\82\81[
\83h
\82Å
\83\8d\83O
\83C
\83\93\82ð
\8e\8e\82Ý
\82Ü
\82·
\82©
\81H' + #13#10;
1867 if MsgBox(GikoForm.Handle, msg, '
\8cx
\8d\90', MB_YESNO or MB_ICONEXCLAMATION) = IDYES then begin
1868 GikoSys.Dolib.ClientUA := 'gikoNavi/1.00';
1869 GikoSys.Dolib.UserName := GikoSys.Setting.UserID;
1870 GikoSys.Dolib.Password := GikoSys.Setting.Password;
1871 if GikoSys.Setting.ReadProxy then begin
1872 GikoSys.Dolib.ProxyAddress := GikoSys.Setting.ReadProxyAddress;
1873 GikoSys.Dolib.ProxyPort := GikoSys.Setting.ReadProxyPort;
1875 GikoSys.Dolib.ProxyAddress := '';
1876 GikoSys.Dolib.ProxyPort := 0;
1878 //SSL
\8fá
\8aQ
\97p
\8b
\90§
\83\8d\83O
\83C
\83\93
1879 GikoSys.Dolib.ForcedConnect;
1880 if GikoSys.Dolib.Connect then begin
1881 LoginAction.Checked := True;
1882 GikoForm.AddMessageList(GikoSys.GetGikoMessage(gmForceLogin) + GikoSys.Setting.UserID, nil, gmiOK);
1883 LoginAction.Caption := '
\83\8d\83O
\83A
\83E
\83g(&L)';
1884 //LoginToolButton.Style := tbsCheck;
1886 // MsgBox(Handle, '
\83\8d\83O
\83C
\83\93\8fo
\97\88\82Ü
\82¹
\82ñ
\82Å
\82µ
\82½', '
\83G
\83\89\81[', MB_OK or MB_ICONSTOP);
1887 GikoForm.AddMessageList(GikoSys.Dolib.ErrorMsg, nil, gmiNG);
1888 GikoForm.PlaySound('Error');
1889 LoginAction.Checked := False;
1890 //LoginToolButton.Down := False;
1891 //LoginToolButton.Style := tbsButton;
1894 LoginAction.Checked := False;
1895 //LoginToolButton.Down := False;
1896 //LoginToolButton.Style := tbsButton;
1900 GikoForm.ScreenCursor := TmpCursor;
1904 // *************************************************************************
1905 //!
\83{
\81[
\83h
\8dX
\90V
\83_
\83C
\83A
\83\8d\83O
\82ð
\95\
\8e¦
\82·
\82é
1906 // *************************************************************************
1907 procedure TGikoDM.NewBoardActionExecute(Sender: TObject);
1909 Dlg: TNewBoardDialog;
1912 if GikoForm.EditorFormExists then begin
1913 Msg := '
\83\8c\83X
\83G
\83f
\83B
\83^
\82ð
\91S
\82Ä
\95Â
\82¶
\82Ä
\82
\82¾
\82³
\82¢';
1914 MsgBox(GikoForm.Handle, Msg, MSG_ERROR, MB_OK or MB_ICONSTOP);
1917 Dlg := TNewBoardDialog.Create(GikoForm);
1924 // *************************************************************************
1925 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\8dí
\8f\9c\82·
\82é
1926 // *************************************************************************
1927 procedure TGikoDM.LogDeleteActionExecute(Sender: TObject);
1929 DEL_MSG = '
\81g^0
\81h
\82Ì
\83\8d\83O
\82ð
\8dí
\8f\9c\82µ
\82Ü
\82·
\81B
\82æ
\82ë
\82µ
\82¢
\82Å
\82·
\82©
\81H';
1930 DEL_SAME_MSG = '
\82±
\82ê
\82ç ^0
\8cÂ
\82Ì
\83X
\83\8c\83b
\83h
\82Ì
\83\8d\83O
\82ð
\8dí
\8f\9c\82µ
\82Ü
\82·
\81B
\82æ
\82ë
\82µ
\82¢
\82Å
\82·
\82©
\81H';
1931 DEL_TITLE = '
\8dí
\8f\9c\8am
\94F';
1933 ThreadItem: TThreadItem;
1934 TmpListItem: TListItem;
1938 List := TList.Create;
1940 TmpListItem := GikoForm.ListView.Selected;
1941 while TmpListItem <> nil do begin
1942 if TObject(TmpListItem.Data) is TThreadItem then begin
1943 ThreadItem := TThreadItem(TmpListItem.Data);
1944 if ThreadItem.IsLogFile then
1945 List.Add(ThreadItem);
1947 TmpListItem := GikoForm.ListView.GetNextItem(TmpListItem, sdAll, [isSelected]);
1950 if GikoSys.Setting.DeleteMsg and (List.Count > 0) then begin
1951 if (GetKeyState( VK_SHIFT ) and $80000000) = 0 then begin
1952 if List.Count = 1 then begin
1953 if MsgBox(GikoForm.Handle, StringReplace( DEL_MSG, '^0', TThreadItem( List[ 0 ] ).Title, [rfReplaceAll] ) , DEL_TITLE, MB_YESNO or MB_ICONWARNING or MB_DEFBUTTON2) <> ID_YES then
1956 if MsgBox(GikoForm.Handle, StringReplace( DEL_SAME_MSG, '^0', IntToStr( List.Count ), [rfReplaceAll] ), DEL_TITLE, MB_YESNO or MB_ICONWARNING or MB_DEFBUTTON2) <> IDYES then
1962 for i := 0 to List.Count - 1 do begin
1963 ThreadItem := TThreadItem(List[i]);
1964 GikoForm.DeleteHistory(ThreadItem);
1965 GikoForm.DeleteTab(ThreadItem);
1966 ThreadItem.DeleteLogFile;
1968 GikoForm.TreeView.Refresh; // UnRead
\82Ì
\95\
\8e¦
\82ð
\8dX
\90V
1970 GikoForm.ListView.Refresh;
1975 // *************************************************************************
1976 //! ActiveList
\82ªTBoard
\82Å
\83X
\83\8c\88ê
\97\97\82Å
\82P
\82Â
\88È
\8fã
\91I
\91ð
\82µ
\82Ä
\82¢
\82é
\82Æ
\97L
\8cø
\82É
\82È
\82éAction
\82Å
\8b¤
\92Ê
1977 // *************************************************************************
1978 procedure TGikoDM.LogDeleteActionUpdate(Sender: TObject);
1980 TAction(Sender).Enabled := (GikoForm.GetActiveList is TBoard)
1981 and (GikoForm.ListView.SelCount > 0);
1983 // *************************************************************************
1984 //!
\8di
\8d\9e\82Ý
\97\9a\97ð
\82ð
\8fÁ
\8b\8e\82·
\82é
1985 // *************************************************************************
1986 procedure TGikoDM.SelectTextClearActionExecute(Sender: TObject);
1988 DEL_MSG = '
\8di
\8d\9e\82Ý
\91S
\97\9a\97ð
\82ð
\8dí
\8f\9c\82µ
\82Ü
\82·
\81B
\82æ
\82ë
\82µ
\82¢
\82Å
\82·
\82©
\81H';
1989 DEL_TITLE = '
\8dí
\8f\9c\8am
\94F';
1991 if (GetKeyState( VK_SHIFT ) and $80000000) = 0 then
1992 if MsgBox(GikoForm.Handle, DEL_MSG, DEL_TITLE, MB_YESNO or MB_ICONWARNING or MB_DEFBUTTON2) <> ID_YES then
1994 GikoSys.Setting.SelectTextList.Clear;
1995 GikoForm.SelectComboBox.Items.Clear;
1996 GikoForm.SelectComboBox.Text := '';
1997 GikoForm.SetListViewType( gvtAll );
1999 // *************************************************************************
2000 //!
\83\8c\83X
\83G
\83f
\83B
\83^
\82Ì
\96¼
\91O
\97\9a\97ð
\82ð
\8fÁ
\8b\8e\82·
\82é
2001 // *************************************************************************
2002 procedure TGikoDM.NameTextClearActionExecute(Sender: TObject);
2004 DEL_MSG = '
\83\8c\83X
\83G
\83f
\83B
\83^
\96¼
\91O
\91S
\97\9a\97ð
\82ð
\8dí
\8f\9c\82µ
\82Ü
\82·
\81B
\82æ
\82ë
\82µ
\82¢
\82Å
\82·
\82©
\81H';
2005 DEL_TITLE = '
\8dí
\8f\9c\8am
\94F';
2007 if (GetKeyState( VK_SHIFT ) and $80000000) = 0 then
2008 if MsgBox(GikoForm.Handle, DEL_MSG, DEL_TITLE, MB_YESNO or MB_ICONWARNING or MB_DEFBUTTON2) <> ID_YES then
2010 GikoSys.Setting.NameList.Clear;
2011 GikoForm.AllEditroFormNameTextClearClear;
2013 // *************************************************************************
2014 //!
\83\8c\83X
\83G
\83f
\83B
\83^
\82Ì
\83\81\81[
\83\8b\97\9a\97ð
\82ð
\8fÁ
\8b\8e\82·
\82é
2015 // *************************************************************************
2016 procedure TGikoDM.MailTextClearActionExecute(Sender: TObject);
2018 DEL_MSG = '
\83\8c\83X
\83G
\83f
\83B
\83^
\83\81\81[
\83\8b\91S
\97\9a\97ð
\82ð
\8dí
\8f\9c\82µ
\82Ü
\82·
\81B
\82æ
\82ë
\82µ
\82¢
\82Å
\82·
\82©
\81H';
2019 DEL_TITLE = '
\8dí
\8f\9c\8am
\94F';
2021 if (GetKeyState( VK_SHIFT ) and $80000000) = 0 then
2022 if MsgBox(GikoForm.Handle, DEL_MSG, DEL_TITLE, MB_YESNO or MB_ICONWARNING or MB_DEFBUTTON2) <> ID_YES then
2024 GikoSys.Setting.MailList.Clear;
2025 GikoForm.AllEditroFormMailTextClearClear;
2027 // *************************************************************************
2028 //!
\83M
\83R
\83i
\83r
\82ð
\8fI
\97¹
\82·
\82é
2029 // *************************************************************************
2030 procedure TGikoDM.ExitActionExecute(Sender: TObject);
2034 // *************************************************************************
2035 //!
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\83G
\83N
\83X
\83|
\81[
\83g
\81@
\8eÀ
\8ds
\91O
\8f\88\97\9d
2036 // *************************************************************************
2037 procedure TGikoDM.ExportFavoriteFileBeforeExecute(Sender: TObject);
2039 ExportFavoriteFile.Dialog.FileName := FavoriteDM.GetFavoriteFilePath;
2041 // *************************************************************************
2042 //!
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\83G
\83N
\83X
\83|
\81[
\83g
\81@
\8eÀ
\8ds
\8f\88\97\9d
2043 // *************************************************************************
2044 procedure TGikoDM.ExportFavoriteFileAccept(Sender: TObject);
2046 if FavoriteDM.SaveFavoriteFile( ExportFavoriteFile.Dialog.FileName ) Then begin
2047 ShowMessage('
\83t
\83@
\83C
\83\8b\82ð
\8fo
\97Í
\82µ
\82Ü
\82µ
\82½');
2049 ShowMessage('
\83t
\83@
\83C
\83\8b\82Ì
\8fo
\97Í
\82É
\8e¸
\94s
\82µ
\82Ü
\82µ
\82½');
2052 // *************************************************************************
2053 //!
\91I
\91ð
\83X
\83\8c\83b
\83h
\82ð
\83t
\83@
\83C
\83\8b\82É
\95Û
\91¶
\82·
\82é
2054 // *************************************************************************
2055 procedure TGikoDM.SelectThreadSaveToFile(dat: Boolean);
2062 List := TList.Create;
2064 GikoForm.ScreenCursor := crHourGlass;
2065 GikoForm.SelectListItem(List);
2066 if ((GikoSys.Setting.ListOrientation = gloVertical) and
2067 (GikoSys.Setting.ListHeightState = glsMax)) or
2068 ((GikoSys.Setting.ListOrientation = gloHorizontal) and
2069 (GikoSys.Setting.ListWidthState = glsMax)) then
2070 ShowMessage('
\83X
\83\8c\83b
\83h
\88ê
\97\97\82ð
\95\
\8e¦
\82µ
\82Ä
\82
\82¾
\82³
\82¢')
2071 else if(List.Count = 0) then
2072 ShowMessage('
\83X
\83\8c\83b
\83h
\82ð
\91I
\91ð
\82µ
\82Ä
\82
\82¾
\82³
\82¢')
2075 SaveDialog.Title := '
\91I
\91ð
\83X
\83\8c\83b
\83h
\82ðdat
\82Ì
\82Ü
\82Ü
\95Û
\91¶';
2076 SaveDialog.Filter := 'DAT
\83t
\83@
\83C
\83\8b(*.dat)|*.dat';
2078 SaveDialog.Title := '
\91I
\91ð
\83X
\83\8c\83b
\83h
\82ðHTML
\89»
\82µ
\82Ä
\95Û
\91¶';
2079 SaveDialog.Filter := 'HTML
\83t
\83@
\83C
\83\8b(*.html)|*.html';
2081 for i := 0 to List.Count - 1 do begin
2082 if (TObject(List[i]) is TThreadItem) and (TThreadItem(List[i]).IsLogFile) then begin
2084 SaveDialog.FileName := TThreadItem(List[i]).FileName;
2086 SaveDialog.FileName := ReplaseNoValidateChar(TThreadItem(List[i]).Title) + '.html';
2088 if SaveDialog.Execute then begin
2090 CopyFile(PChar(TThreadItem(List[i]).FilePath),
2091 PChar(SaveDialog.FileName), true);
2093 html := TStringList.Create;
2094 title := TThreadItem(List[i]).Title;
2096 HTMLCreater.CreateHTML3(html, TThreadItem(List[i]), title);
2097 html.SaveToFile(SaveDialog.FileName);
2098 THTMLCreate.SkinorCSSFilesCopy(ExtractFilePath(SaveDialog.FileName));
2108 GikoForm.ScreenCursor := crDefault;
2112 // *************************************************************************
2113 //!
\91I
\91ð
\83X
\83\8c\83b
\83h
\82ðHTML
\89»
\82µ
\82Ä
\95Û
\91¶
2114 // *************************************************************************
2115 procedure TGikoDM.SelectItemSaveForHTMLExecute(Sender: TObject);
2117 SelectThreadSaveToFile(false);
2119 // *************************************************************************
2120 //!
\91I
\91ð
\83X
\83\8c\83b
\83h
\82ðDAT
\8c`
\8e®
\82Ì
\82Ü
\82Ü
\95Û
\91¶
2121 // *************************************************************************
2122 procedure TGikoDM.SelectItemSaveForDatExecute(Sender: TObject);
2124 SelectThreadSaveToFile(true);
2126 // *************************************************************************
2127 //!
\83^
\83u
\82Ì
\8f\87\94Ô
\82ð
\95Û
\91¶
2128 // *************************************************************************
2129 procedure TGikoDM.TabsSaveActionExecute(Sender: TObject);
2131 GikoForm.SaveTabURLs;
2133 // *************************************************************************
2134 //!
\83^
\83u
\82Ì
\8f\87\94Ô
\82ð
\95\9c\8c³
2135 // *************************************************************************
2136 procedure TGikoDM.TabsOpenActionExecute(Sender: TObject);
2138 GikoForm.LoadTabURLs;
2139 // TabsOpenAction.Tag
\82Í
\81C
\94Â
\88ê
\97\97\8dX
\90V
\82©
\82ç
\8cÄ
\82Î
\82ê
\82½
\82Æ
\82«
\82Í1
\82É
\82È
\82Á
\82Ä
\82¢
\82é
2140 if (GikoForm.BrowserTab.Tabs.Count = 0)
2141 and (TabsOpenAction.Tag = 0) then begin
2142 ShowMessage('
\95\
\8e¦
\82·
\82é
\83^
\83u
\82ª
\82 \82è
\82Ü
\82¹
\82ñ
\81B');
2145 // *************************************************************************
2146 //!
\83^
\83u
\82Ì
\8f\87\94Ô
\82ð
\8e©
\93®
\95Û
\91¶
2147 // *************************************************************************
2148 procedure TGikoDM.TabAutoSaveActionExecute(Sender: TObject);
2150 GikoForm.SaveTabURLs;
2152 // *************************************************************************
2153 //!
\83^
\83u
\82Ì
\8f\87\94Ô
\82ð
\8e©
\93®
\95\9c\8c³
2154 // *************************************************************************
2155 procedure TGikoDM.TabAutoLoadActionExecute(Sender: TObject);
2157 GikoForm.LoadTabURLs;
2159 // *************************************************************************
2160 //! Be2ch
\82É
\83\8d\83O
\83C
\83\93/
\83\8d\83O
\83A
\83E
\83g
\82·
\82é
2161 // *************************************************************************
2162 procedure TGikoDM.BeLogInOutActionExecute(Sender: TObject);
2164 GikoSys.Setting.BeLogin := not GikoSys.Setting.BeLogin;
2166 // *************************************************************************
2167 //! Be2ch
\82É
\83\8d\83O
\83C
\83\93/
\83\8d\83O
\83A
\83E
\83g
\82·
\82é
\82ÌUpdate
\83C
\83x
\83\93\83g
2168 // *************************************************************************
2169 procedure TGikoDM.BeLogInOutActionUpdate(Sender: TObject);
2171 if (GikoSys.Setting.BeUserID <> '') and (GikoSys.Setting.BeCode <> '') then begin
2172 if (GikoSys.Setting.BeLogin) then BeLogInOutAction.Checked := true
2173 else BeLogInOutAction.Checked := false;
2174 BeLogInOutAction.Enabled := true
2176 BeLogInOutAction.Enabled := false;
2178 ////////////////////////////////
\83t
\83@
\83C
\83\8b\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
2179 // *************************************************************************
2180 //!
\83R
\83R
\82Ü
\82Å
\93Ç
\82ñ
\82¾
2181 // *************************************************************************
2182 procedure TGikoDM.KokomadeActionExecute(Sender: TObject);
2185 ThreadItem: TThreadItem;
2187 No := GikoForm.KokoPopupMenu.Tag;
2188 if No = 0 then Exit;
2189 ThreadItem := GikoForm.GetActiveContent;
2190 if ThreadItem = nil then Exit;
2191 ThreadItem.Kokomade := No;
2192 GikoForm.ActiveContent.Thread.ScrollTop :=
2193 OleVariant(IHTMLDocument2(GikoForm.ActiveContent.Browser.Document)).Body.ScrollTop;
2194 GikoForm.ActiveContent.Repaint := true;
2195 GikoForm.InsertBrowserTab(GikoForm.ActiveContent.Thread, true);
2196 //INFO 2005/11/19
\88ê
\92U
\89B
\95Á
\81A
\95K
\97v
\82È
\82çGikoForm
\82Ì
\95û
\82É
\83\81\83\
\83b
\83h
\82ð
\92Ç
\89Á
\82·
\82é
2197 //Application.ProcessMessages;
2199 // *************************************************************************
2200 //!
\91S
\95\94\93Ç
\82ñ
\82¾
2201 // *************************************************************************
2202 procedure TGikoDM.ZenbuActionExecute(Sender: TObject);
2204 ThreadItem: TThreadItem;
2206 ThreadItem := GikoForm.GetActiveContent;
2207 if ThreadItem = nil then Exit;
2208 ThreadItem.Kokomade := -1;
2209 GikoForm.ActiveContent.Thread.ScrollTop :=
2210 OleVariant(IHTMLDocument2(GikoForm.ActiveContent.Browser.Document)).Body.ScrollTop;
2211 GikoForm.ActiveContent.Repaint := true;
2212 GikoForm.InsertBrowserTab(GikoForm.ActiveContent.Thread, true);
2213 //INFO 2005/11/19
\88ê
\92U
\89B
\95Á
\81A
\95K
\97v
\82È
\82çGikoForm
\82Ì
\95û
\82É
\83\81\83\
\83b
\83h
\82ð
\92Ç
\89Á
\82·
\82é
2214 //Application.ProcessMessages;
2216 // *************************************************************************
2217 //!
\83R
\83R
\82É
\83\8c\83X
2218 // *************************************************************************
2219 procedure TGikoDM.KokoResActionExecute(Sender: TObject);
2221 Editor: TEditorForm;
2225 Number := GikoForm.KokoPopupMenu.Tag;
2226 if Number = 0 then Exit;
2227 Item := GikoForm.GetActiveContent;
2228 if Item = nil then Exit;
2230 Editor := TEditorForm.Create(GikoForm);
2231 Editor.SetThreadItem(Item);
2232 Editor.BodyEdit.Text := '>>' + IntToStr(Number) + #13#10;
2234 Editor.BodyEdit.SetFocus;
2236 // *************************************************************************
2237 //!
\91I
\91ð
\82µ
\82½
\83\8c\83X
\82ð
\83R
\83s
\81[
\82·
\82é
2238 // *************************************************************************
2239 procedure TGikoDM.KoreCopyExecute(Sender: TObject);
2241 GikoForm.KonoresCopy(GikoForm.KokoPopupMenu.Tag, true);
2243 // *************************************************************************
2244 //!
\91I
\91ð
\82µ
\82½
\83\8c\83X
\82ð
\83R
\83s
\81[
\82·
\82é
2245 // *************************************************************************
2246 procedure TGikoDM.SameIDResAnchorActionExecute(Sender: TObject);
2248 ThreadItem : TThreadItem;
2249 No, count, rc : Integer;
2253 No := GikoForm.KokoPopupMenu.Tag;
2254 if No = 0 then Exit;
2255 ThreadItem := GikoForm.GetActiveContent;
2256 if ThreadItem = nil then Exit;
2257 count := GikoSys.GetSameIDResCount(No, GikoForm.ActiveContent.Thread);
2259 if count > 20 then begin
2260 rc := GikoUtil.MsgBox(GikoForm.Handle,
2261 '20
\8cÂ
\88È
\8fã
\82 \82è
\82Ü
\82·
\82ª
\81A
\82·
\82×
\82Ä
\95\
\8e¦
\82µ
\82Ü
\82·
\82©
\81H',
2262 'ID
\83|
\83b
\83v
\83A
\83b
\83v
\8cx
\8d\90',
2263 MB_YESNO or MB_ICONQUESTION);
2264 limited := rc <> ID_YES;
2266 body := GikoSys.GetSameIDResAnchor(No, ThreadItem, limited);
2267 GikoForm.ActiveContent.IDAnchorPopup(body);
2269 // *************************************************************************
2270 //!
\82±
\82Ì
\83\8c\83X
\82 \82Ú
\81`
\82ñ
\81@
\81i
\92Ê
\8fí
\81j
2271 // *************************************************************************
2272 procedure TGikoDM.IndividualAbon1ActionExecute(Sender: TObject);
2274 GikoForm.IndividualAbon(GikoForm.KokoPopupMenu.Tag, 1);
2276 // *************************************************************************
2277 //!
\82±
\82Ì
\83\8c\83X
\82 \82Ú
\81`
\82ñ
\81@
\81i
\93§
\96¾
\81j
2278 // *************************************************************************
2279 procedure TGikoDM.IndividualAbon0ActionExecute(Sender: TObject);
2281 GikoForm.IndividualAbon(GikoForm.KokoPopupMenu.Tag, 0);
2283 // *************************************************************************
2284 //!
\82±
\82Ì
\83\8c\83X
\82 \82Ú
\81`
\82ñ
\89ð
\8f\9c
2285 // *************************************************************************
2286 procedure TGikoDM.AntiIndividualAbonActionExecute(Sender: TObject);
2288 IndividualForm :TIndividualAbonForm;
2289 ThreadItem : TThreadItem;
2291 ReadList : TStringList;
2292 wordCount : TWordCount;
2294 IndividualForm := TIndividualAbonForm.Create(GikoForm);
2296 ThreadItem := GikoForm.GetActiveContent;
2297 ThreadItem.ScrollTop :=
2298 OleVariant(IHTMLDocument2(GikoForm.ActiveContent.Browser.Document)).Body.ScrollTop;
2299 if (ThreadItem <> nil) and (ThreadItem.IsLogFile) then begin
2300 if IndividualForm.SetThreadLogFileName(ThreadItem.GetThreadFileName) then begin
2301 ReadList := TStringList.Create;
2302 wordCount := TWordCount.Create;
2304 {$IFDEF SPAM_FILTER_ENABLED}
2305 //
\83X
\83p
\83\80\82ð
\89ð
\8f\9c
2306 ReadList.LoadFromFile( ThreadItem.GetThreadFileName );
2307 GikoSys.SpamCountWord( ReadList[ KokoPopupMenu.Tag - 1 ], wordCount );
2308 GikoSys.SpamForget( wordCount, True ); //
\83X
\83p
\83\80\82ð
\89ð
\8f\9c
2309 GikoSys.SpamLearn( wordCount, False ); //
\83n
\83\80\82É
\90Ý
\92è
2311 if IndividualForm.DeleteNG(GikoForm.KokoPopupMenu.Tag) then begin
2312 GikoForm.ActiveContent.Repaint := true;
2313 GikoForm.InsertBrowserTab( ThreadItem, True );
2320 msg := '
\82±
\82Ì
\83X
\83\8c\83b
\83h
\82Å
\82Í
\8cÂ
\95Ê
\82 \82Ú
\81`
\82ñ
\82ð
\8ds
\82Á
\82Ä
\82Ü
\82¹
\82ñ';
2321 MsgBox(GikoForm.Handle, msg, '
\83\81\83b
\83Z
\81[
\83W', MB_OK);
2325 IndividualForm.Release;
2328 // *************************************************************************
2329 //!
\82±
\82Ì
\83\8c\83X
\82 \82Ú
\81`
\82ñ
\89ð
\8f\9c\83\8c\83X
\94Ô
\8d\86\8ew
\92è
\81i
\83_
\83C
\83A
\83\8d\83O
\95\
\8e¦
\81j
2330 // *************************************************************************
2331 procedure TGikoDM.AntiIndividualAbonDlgActionExecute(Sender: TObject);
2333 IndividualForm :TIndividualAbonForm;
2334 ThreadItem : TThreadItem;
2336 ReadList : TStringList;
2337 wordCount : TWordCount;
2338 {$IFDEF SPAM_FILTER_ENABLED}
2342 IndividualForm := TIndividualAbonForm.Create(GikoForm);
2344 ThreadItem := GikoForm.GetActiveContent;
2345 ThreadItem.ScrollTop :=
2346 OleVariant(IHTMLDocument2(GikoForm.ActiveContent.Browser.Document)).Body.ScrollTop;
2347 if (ThreadItem <> nil) and (ThreadItem.IsLogFile) then begin
2348 if IndividualForm.SetThreadLogFileName(ThreadItem.GetThreadFileName) then begin
2349 if (IndividualForm.ShowModal = mrOK) then begin
2350 ReadList := TStringList.Create;
2351 wordCount := TWordCount.Create;
2353 {$IFDEF SPAM_FILTER_ENABLED}
2354 //
\83X
\83p
\83\80\82ð
\89ð
\8f\9c
2355 ReadList.LoadFromFile( ThreadItem.GetThreadFileName );
2356 for i := 0 to IndividualForm.DeleteList.Count - 1 do begin
2357 GikoSys.SpamCountWord( ReadList[ StrToInt(IndividualForm.DeleteList[i]) - 1 ], wordCount );
2358 GikoSys.SpamForget( wordCount, True ); //
\83X
\83p
\83\80\82ð
\89ð
\8f\9c
2359 GikoSys.SpamLearn( wordCount, False ); //
\83n
\83\80\82É
\90Ý
\92è
2362 if IndividualForm.FRepaint then begin
2363 GikoForm.ActiveContent.Repaint := true;
2364 GikoForm.InsertBrowserTab( ThreadItem, True );
2372 msg := '
\82±
\82Ì
\83X
\83\8c\83b
\83h
\82Å
\82Í
\8cÂ
\95Ê
\82 \82Ú
\81`
\82ñ
\82ð
\8ds
\82Á
\82Ä
\82Ü
\82¹
\82ñ';
2373 MsgBox(GikoForm.Handle, msg, '
\83\81\83b
\83Z
\81[
\83W', MB_OK);
2377 IndividualForm.Release;
2380 // *************************************************************************
2381 //!
\82±
\82ÌID
\82 \82Ú
\81`
\82ñ
\81@
\92Ê
\8fí
2382 // *************************************************************************
2383 procedure TGikoDM.IndividualAbonID1ActionExecute(Sender: TObject);
2385 GikoForm.IndividualAbonID(1);
2387 // *************************************************************************
2388 //!
\82±
\82ÌID
\82 \82Ú
\81`
\82ñ
\81@
\93§
\96¾
2389 // *************************************************************************
2390 procedure TGikoDM.IndividualAbonID0ActionExecute(Sender: TObject);
2392 GikoForm.IndividualAbonID(0);
2394 ////////////////////////////////
\83u
\83\89\83E
\83U
\83|
\83b
\83v
\83A
\83b
\83v
\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
2395 // *************************************************************************
2396 //!
\83M
\83R
\83i
\83r
\82Ì
\83E
\83F
\83u
\83T
\83C
\83g
\82ð
\95\
\8e¦
\82·
\82é
2397 // *************************************************************************
2398 procedure TGikoDM.GikoNaviWebPageActionExecute(Sender: TObject);
2400 GikoSys.OpenBrowser(PROTOCOL_HTTP + URL_GIKONAVI, gbtAuto);
2402 // *************************************************************************
2403 //!
\83\82\83i
\83W
\83\89\82Ì
\83E
\83F
\83u
\83T
\83C
\83g
\82ð
\95\
\8e¦
\82·
\82é
2404 // *************************************************************************
2405 procedure TGikoDM.MonazillaWebPageActionExecute(Sender: TObject);
2407 GikoSys.OpenBrowser(PROTOCOL_HTTP + URL_MONAZILLA, gbtAuto);
2409 // *************************************************************************
2410 //!
\82Q
\82¿
\82á
\82ñ
\82Ë
\82é
\83g
\83b
\83v
\83y
\81[
\83W
\82ð
\95\
\8e¦
\82·
\82é
2411 // *************************************************************************
2412 procedure TGikoDM.BBS2chWebPageActionExecute(Sender: TObject);
2414 GikoSys.OpenBrowser(PROTOCOL_HTTP + URL_2ch, gbtAuto);
2416 // *************************************************************************
2417 //!
\83M
\83R
\83i
\83r
\82Ì
\83t
\83H
\83\8b\83_
\82ð
\8aJ
\82
2418 // *************************************************************************
2419 procedure TGikoDM.GikoFolderOpenActionExecute(Sender: TObject);
2421 GikoSys.CreateProcess('explorer.exe', '/e,"' + GikoSys.GetAppDir + '"');
2423 // *************************************************************************
2424 //!
\83o
\81[
\83W
\83\87\83\93\8fî
\95ñ
\82ð
\95\
\8e¦
\82·
\82é
2425 // *************************************************************************
2426 procedure TGikoDM.AboutActionExecute(Sender: TObject);
2430 Dlg := TAboutDialog.Create(GikoForm);
2437 // *************************************************************************
2438 //!
\83M
\83R
\83i
\83r
\82Ì
\83w
\83\8b\83v
\82ð
\95\
\8e¦
\82·
\82é
2439 // *************************************************************************
2440 procedure TGikoDM.GikoHelpActionExecute(Sender: TObject);
2444 FileName := GikoSys.GetAppDir + 'batahlp.chm';
2445 if not FileExists(FileName) then begin
2448 '
\83w
\83\8b\83v
\82ª
\8c©
\82Â
\82©
\82è
\82Ü
\82¹
\82ñ
\82Å
\82µ
\82½' + #13#10 +
2449 '
\83w
\83\8b\83v
\83t
\83@
\83C
\83\8b\82ð
\83M
\83R
\83i
\83r
\82Ì
\83t
\83H
\83\8b\83_
\82É
\92u
\82¢
\82Ä
\82
\82¾
\82³
\82¢' + #13#10 +
2450 '
\83w
\83\8b\83v
\82Í
\83M
\83R
\83i
\83r
\82Ì
\83T
\83C
\83g
\82É
\92u
\82¢
\82Ä
\82 \82è
\82Ü
\82·',
2455 ShellExecute(GikoForm.Handle, 'open', PChar(FileName), '', PChar(GikoSys.GetAppDir), SW_SHOW);
2457 // *************************************************************************
2458 //!
\83M
\83R
\83i
\83rWiki
\82Ì
\83E
\83F
\83u
\83T
\83C
\83g
\82ð
\95\
\8e¦
\82·
\82é
2459 // *************************************************************************
2460 procedure TGikoDM.WikiFAQWebPageActionExecute(Sender: TObject);
2462 GikoSys.OpenBrowser(PROTOCOL_HTTP + URL_Wiki, gbtAuto);
2464 ////////////////////////////////
\83w
\83\8b\83v
\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
2465 // *************************************************************************
2466 //!
\83\8a\83X
\83g
\94Ô
\8d\86\95\
\8e¦
\82ð
\95Ï
\8dX
\82·
\82é
2467 // *************************************************************************
2468 procedure TGikoDM.ListNumberVisibleActionExecute(Sender: TObject);
2470 GikoSys.Setting.ListViewNo := ListNumberVisibleAction.Checked;
2471 GikoForm.ListView.Refresh;
2473 // *************************************************************************
2474 //!
\8fã
\88Ê
\83t
\83H
\83\8b\83_
\82É
\88Ú
\93®
\82·
\82é
2475 // *************************************************************************
2476 procedure TGikoDM.UpFolderActionExecute(Sender: TObject);
2478 if GikoForm.GetActiveList is TBoard then begin
2479 if TBoard(GikoForm.GetActiveList).ParentCategory <> nil then
2480 GikoForm.SelectTreeNode(TBoard(GikoForm.GetActiveList).ParentCategory, True);
2481 end else if GikoForm.GetActiveList is TCategory then begin
2482 GikoForm.SelectTreeNode(TCategory(GikoForm.GetActiveList).ParenTBBS, True);
2485 // *************************************************************************
2486 //!
\8fã
\88Ê
\83t
\83H
\83\8b\83_
\82É
\88Ú
\93®
\82·
\82éUpDate
\83C
\83x
\83\93\83g
2487 // *************************************************************************
2488 procedure TGikoDM.UpFolderActionUpdate(Sender: TObject);
2490 UpFolderAction.Enabled := not (GikoForm.GetActiveList is TBBS);
2492 // *************************************************************************
2493 //!
\95\
\8e¦
\81@
\95\
\8e¦
\83\8a\83X
\83g
\82Ì
\83\82\81[
\83h
\95Ï
\8dX
2494 // *************************************************************************
2495 procedure TGikoDM.IconStyleExecute(Sender: TObject);
2497 case GikoForm.ListView.ViewStyle of
2498 vsIcon: SmallIconAction.Execute;
2499 vsSmallIcon: ListIconAction.Execute;
2500 vsList: DetailIconAction.Execute;
2501 vsReport: LargeIconAction.Execute;
2504 // *************************************************************************
2505 //! SelectComboBox
\82Ì
\92l
\82ð
\83N
\83\8a\83A
\82·
\82é
2506 // *************************************************************************
2507 procedure TGikoDM.ClearSelectComboBox;
2509 if GikoForm.SelectComboBoxPanel.Visible then begin
2510 GikoForm.SelectComboBox.Text := SELECTCOMBOBOX_NAME;
2511 GikoForm.SelectComboBox.Color := SELECTCOMBOBOX_COLOR;
2512 GikoForm.ListView.SetFocus;
2515 // *************************************************************************
2516 //!
\83X
\83\8c\83b
\83h
\82ð
\82·
\82×
\82Ä
\95\
\8e¦
\82·
\82é
2517 // *************************************************************************
2518 procedure TGikoDM.AllItemActionExecute(Sender: TObject);
2521 if GikoForm.ViewType <> gvtAll then
2522 GikoForm.SetListViewType(gvtAll);
2523 GikoSys.Setting.ThreadRange := gtrAll;
2524 AllItemAction.Checked := True;
2525 // SelectComboBox
\82Ì
\97\9a\97ð
\82ð
\8dX
\90V
\82µ
\82Ä
\82¨
\82
2526 GikoForm.ModifySelectList;
2527 // SelectComboBox
\82Ì
\92l
\82ð
\83N
\83\8a\83A
2528 ClearSelectComboBox;
2532 // *************************************************************************
2533 //!
\83\8d\83O
\97L
\82è
\83X
\83\8c\83b
\83h
\82Ì
\82Ý
\82ð
\95\
\8e¦
\82·
\82é
2534 // *************************************************************************
2535 procedure TGikoDM.LogItemActionExecute(Sender: TObject);
2538 if GikoForm.ViewType <> gvtLog then
2539 GikoForm.SetListViewType(gvtLog);
2540 GikoSys.Setting.ThreadRange := gtrLog;
2541 LogItemAction.Checked := True;
2542 // SelectComboBox
\82Ì
\97\9a\97ð
\82ð
\8dX
\90V
\82µ
\82Ä
\82¨
\82
2543 GikoForm.ModifySelectList;
2544 // SelectComboBox
\82Ì
\92l
\82ð
\83N
\83\8a\83A
2545 ClearSelectComboBox;
2549 // *************************************************************************
2550 //!
\90V
\92\85\83X
\83\8c\83b
\83h
\82Ì
\82Ý
\95\
\8e¦
\82·
\82é
2551 // *************************************************************************
2552 procedure TGikoDM.NewItemActionExecute(Sender: TObject);
2556 if GikoForm.ViewType <> gvtNew then
2557 GikoForm.SetListViewType(gvtNew);
2558 GikoSys.Setting.ThreadRange := gtrNew;
2559 NewItemAction.Checked := True;
2560 // SelectComboBox
\82Ì
\97\9a\97ð
\82ð
\8dX
\90V
\82µ
\82Ä
\82¨
\82
2561 GikoForm.ModifySelectList;
2562 // SelectComboBox
\82Ì
\92l
\82ð
\83N
\83\8a\83A
2563 ClearSelectComboBox;
2567 // *************************************************************************
2568 //! DAT
\97\8e\82¿
\83X
\83\8c\83b
\83h
\82Ì
\82Ý
\95\
\8e¦
\82·
\82é
2569 // *************************************************************************
2570 procedure TGikoDM.ArchiveItemActionExecute(Sender: TObject);
2573 if GikoForm.ViewType <> gvtArch then
2574 GikoForm.SetListViewType(gvtArch);
2575 GikoSys.Setting.ThreadRange := gtrArch;
2576 ArchiveItemAction.Checked := True;
2577 // SelectComboBox
\82Ì
\97\9a\97ð
\82ð
\8dX
\90V
\82µ
\82Ä
\82¨
\82
2578 GikoForm.ModifySelectList;
2579 // SelectComboBox
\82Ì
\92l
\82ð
\83N
\83\8a\83A
2580 ClearSelectComboBox;
2584 // *************************************************************************
2585 //!
\90¶
\91¶
\83X
\83\8c\83b
\83h
\82Ì
\82Ý
\95\
\8e¦
\82·
\82é
2586 // *************************************************************************
2587 procedure TGikoDM.LiveItemActionExecute(Sender: TObject);
2590 if GikoForm.ViewType <> gvtLive then
2591 GikoForm.SetListViewType(gvtLive);
2592 GikoSys.Setting.ThreadRange := gtrLive;
2593 LiveItemAction.Checked := True;
2594 // SelectComboBox
\82Ì
\97\9a\97ð
\82ð
\8dX
\90V
\82µ
\82Ä
\82¨
\82
2595 GikoForm.ModifySelectList;
2596 // SelectComboBox
\82Ì
\92l
\82ð
\83N
\83\8a\83A
2597 ClearSelectComboBox;
2602 // *************************************************************************
2603 //!
\83X
\83\8c\83b
\83h
\82Ì
\95\
\8e¦
\94Í
\88Í
\82ð
\90Ý
\92è
2604 // *************************************************************************
2605 procedure TGikoDM.ThreadRangeActionExecute(Sender: TObject);
2607 case GikoSys.Setting.ThreadRange of
2608 gtrAll: AllItemAction.Execute;
2609 gtrLog: LogItemAction.Execute;
2610 gtrNew: NewItemAction.Execute;
2611 gtrArch: ArchiveItemAction.Execute;
2612 gtrLive: LiveItemAction.Execute;
2615 // *************************************************************************
2616 //!
\83X
\83\8c\83b
\83h
\8di
\8d\9e\82Ý
\83_
\83C
\83A
\83\8d\83O
\82ð
\95\
\8e¦
\82·
\82é
2617 // *************************************************************************
2618 procedure TGikoDM.SelectItemActionExecute(Sender: TObject);
2621 Dlg: TListSelectDialog;
2624 if GikoForm.SelectComboBoxPanel.Visible then begin
2625 if GikoForm.SelectComboBoxPanel.Left + GikoForm.SelectComboBoxPanel.Width < GikoForm.ListToolBar.Width then begin
2626 // SelectComboBox
\82ª
\82 \82é
\8fê
\8d\87\82Í
\83t
\83H
\81[
\83J
\83X
\82ð
\88Ú
\82·
2627 if GikoSys.Setting.ListOrientation = gloHorizontal then begin
2628 if GikoSys.Setting.ListWidthState = glsMax then
2629 BrowserMinAction.Execute;
2631 if GikoSys.Setting.ListHeightState = glsMax then
2632 BrowserMinAction.Execute;
2634 GikoForm.SelectComboBox.SetFocus;
2641 if GikoForm.SelectComboBox.Text = SELECTCOMBOBOX_NAME then begin
2642 GikoForm.SelectComboBox.Text := '';
2643 GikoForm.SelectComboBox.Color := clWindow;
2646 AllItemAction.Checked := False;
2647 LogItemAction.Checked := False;
2648 NewItemAction.Checked := False;
2649 //SelectItemAction.Checked := True;
2650 GikoForm.ModifySelectList;
2651 Dlg := TListSelectDialog.Create(GikoForm);
2653 Dlg.SelectComboBox.Items.Assign(GikoSys.Setting.SelectTextList);
2654 Dlg.SelectComboBox.Text := GikoForm.SelectComboBox.Text;
2656 if Dlg.ModalResult = mrCancel then begin
2657 if Length( GikoForm.SelectComboBox.Text ) = 0 then begin
2658 AllItemAction.Checked := True;
2659 GikoForm.SelectComboBox.Text := SELECTCOMBOBOX_NAME;
2660 GikoForm.SelectComboBox.Color := SELECTCOMBOBOX_COLOR;
2663 if GikoForm.GetActiveList is TBoard then
2664 GikoForm.SetListViewType(gvtUser, TBoard(GikoForm.GetActiveList).ParentCategory.ParenTBBS.SelectText , Dlg.KubetsuCheckBox.Checked);
2666 idx := GikoSys.Setting.SelectTextList.IndexOf(Dlg.SelectComboBox.Text);
2668 GikoSys.Setting.SelectTextList.Delete(idx);
2669 GikoSys.Setting.SelectTextList.Insert(0, Dlg.SelectComboBox.Text);
2670 while Dlg.SelectComboBox.Items.Count > 100 do begin
2671 Dlg.SelectComboBox.Items.Delete(Dlg.SelectComboBox.Items.Count - 1);
2674 if Length( Dlg.SelectComboBox.Text ) = 0 then begin
2675 GikoForm.SelectComboBox.Text := SELECTCOMBOBOX_NAME;
2676 GikoForm.SelectComboBox.Color := SELECTCOMBOBOX_COLOR;
2678 GikoForm.SelectComboBox.Text := Dlg.SelectComboBox.Text;
2679 GikoForm.SelectComboBox.Color := clWindow;
2681 GikoForm.SetListViewType(gvtUser, Dlg.SelectComboBox.Text, Dlg.KubetsuCheckBox.Checked);
2687 // *************************************************************************
2688 //!
\90V
\83X
\83\8c\8f\91\82«
\8d\9e\82Ý
\83E
\83B
\83\93\83h
\83E
\82ð
\95\
\8e¦
\82·
\82é
2689 // *************************************************************************
2690 procedure TGikoDM.ThreadEditorActionExecute(Sender: TObject);
2692 Editor: TEditorForm;
2694 if not (GikoForm.GetActiveList is TBoard) then
2696 Editor := TEditorForm.Create(GikoForm);
2697 Editor.SetBoard(TBoard(GikoForm.GetActiveList));
2699 Editor.BodyEdit.SetFocus;
2701 // *************************************************************************
2702 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\94Â
\82ð
\83u
\83\89\83E
\83U
\82Å
\95\
\8e¦
\82·
\82é
2703 // *************************************************************************
2704 procedure TGikoDM.BoardIEActionExecute(Sender: TObject);
2708 if GikoForm.GetActiveList is TBoard then begin
2709 URL := TBoard(GikoForm.GetActiveList).URL;
2710 GikoSys.OpenBrowser(URL, gbtAuto);
2713 // *************************************************************************
2714 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ÌURL
\82ð
\83R
\83s
\81[
\82·
\82é
2715 // *************************************************************************
2716 procedure TGikoDM.SelectItemURLCopyActionExecute(Sender: TObject);
2723 List := TList.Create;
2725 GikoForm.SelectListItem(List);
2726 for i := 0 to List.Count - 1 do begin
2727 if TObject(List[i]) is TBoard then
2728 s := s + TBoard(List[i]).URL + #13#10
2729 else if TObject(List[i]) is TThreadItem then
2730 s := s + TThreadItem(List[i]).URL + #13#10;
2733 Clipboard.AsText := s;
2738 // *************************************************************************
2739 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ÌURL
\82ð
\83R
\83s
\81[
\82·
\82éUpdate
\83C
\83x
\83\93\83g
2740 // *************************************************************************
2741 procedure TGikoDM.SelectItemURLCopyActionUpdate(Sender: TObject);
2743 if ((GikoForm.GetActiveList is TBoard) or
2744 (GikoForm.GetActiveList is TCategory))and (GikoForm.ListView.SelCount > 0) then
2745 TAction(Sender).Enabled := True
2747 TAction(Sender).Enabled := False;
2749 // *************************************************************************
2750 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\94Â
\82Ì
\96¼
\91O
\82ð
\83R
\83s
\81[
\82·
\82é
2751 // *************************************************************************
2752 procedure TGikoDM.SelectItemNameCopyActionExecute(Sender: TObject);
2759 List := TList.Create;
2761 GikoForm.SelectListItem(List);
2762 for i := 0 to List.Count - 1 do begin
2763 if TObject(List[i]) is TBoard then
2764 s := s + TBoard(List[i]).Title + #13#10
2765 else if TObject(List[i]) is TThreadItem then
2766 s := s + TThreadItem(List[i]).Title + #13#10;
2769 Clipboard.AsText := s;
2774 // *************************************************************************
2775 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\94Â
\82Ì
\96¼
\91O
\82ð
\83R
\83s
\81[
\82·
\82éUpdate
\83C
\83x
\83\93\83g
2776 // *************************************************************************
2777 procedure TGikoDM.SelectItemNameCopyActionUpdate(Sender: TObject);
2779 if ((GikoForm.GetActiveList is TBoard) or
2780 (GikoForm.GetActiveList is TCategory))and (GikoForm.ListView.SelCount > 0) then
2781 TAction(Sender).Enabled := True
2783 TAction(Sender).Enabled := False;
2785 // *************************************************************************
2786 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82Ì
\96¼
\91O
\82ÆURL
\82ð
\83R
\83s
\81[
\82·
\82é
2787 // *************************************************************************
2788 procedure TGikoDM.SelectItemNameURLCopyActionExecute(Sender: TObject);
2795 List := TList.Create;
2797 GikoForm.SelectListItem(List);
2798 for i := 0 to List.Count - 1 do begin
2799 if TObject(List[i]) is TBoard then
2800 s := s + TBoard(List[i]).Title + #13#10 + TBoard(List[i]).URL + #13#10
2801 else if TObject(List[i]) is TThreadItem then
2802 s := s + TThreadItem(List[i]).Title + #13#10 + TThreadItem(List[i]).URL + #13#10;
2805 Clipboard.AsText := s;
2810 // *************************************************************************
2811 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\88ê
\97\97\82ð
\83_
\83E
\83\93\83\8d\81[
\83h
\82·
\82é
2812 // *************************************************************************
2813 procedure TGikoDM.SelectListReloadActionExecute(Sender: TObject);
2820 shiftDown := GetAsyncKeyState(VK_SHIFT) = Smallint($8001);
2821 GikoForm.ActiveListColumnSave;
2822 if GikoForm.GetActiveList is TCategory then begin
2823 List := TList.Create;
2825 GikoForm.SelectListItem(List);
2826 if List.Count > 5 then begin
2827 msg := '5
\8cÂ
\88È
\8fã
\82Í
\8ew
\92è
\82Å
\82«
\82Ü
\82¹
\82ñ' + #13#10
2828 + '
\82Q
\82¿
\82á
\82ñ
\82Ë
\82é
\95\89\89×
\8cy
\8c¸
\82É
\82²
\8b¦
\97Í
\82
\82¾
\82³
\82¢';
2829 MsgBox(GikoForm.Handle, msg, '
\8cx
\8d\90', MB_ICONEXCLAMATION);
2832 for i := 0 to List.Count - 1 do begin
2833 if TObject(List[i]) is TBoard then
2834 GikoForm.DownloadList(TBoard(List[i]), shiftDown);
2839 end else if GikoForm.GetActiveList is TBoard then begin
2840 GikoForm.DownloadList(TBoard(GikoForm.GetActiveList), shiftDown);
2843 // *************************************************************************
2844 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\88ê
\97\97\82ð
\83_
\83E
\83\93\83\8d\81[
\83h
\82·
\82éUpdate
\83C
\83x
\83\93\83g
2845 // *************************************************************************
2846 procedure TGikoDM.SelectListReloadActionUpdate(Sender: TObject);
2848 if (GikoForm.GetActiveList is TCategory) and (GikoForm.ListView.SelCount > 0) then
2849 TAction(Sender).Enabled := True
2850 else if GikoForm.GetActiveList is TBoard then
2851 TAction(Sender).Enabled := True
2853 TAction(Sender).Enabled := False;
2855 // *************************************************************************
2856 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\83_
\83E
\83\93\83\8d\81[
\83h
\82·
\82é
2857 // *************************************************************************
2858 procedure TGikoDM.SelectThreadReloadActionExecute(Sender: TObject);
2865 shiftDown := GetAsyncKeyState(VK_SHIFT) = Smallint($8001);
2866 List := TList.Create;
2868 GikoForm.SelectListItem(List);
2869 if List.Count > 10 then begin
2870 msg := '10
\8cÂ
\88È
\8fã
\82Í
\8ew
\92è
\82Å
\82«
\82Ü
\82¹
\82ñ' + #13#10
2871 + '
\82Q
\82¿
\82á
\82ñ
\82Ë
\82é
\95\89\89×
\8cy
\8c¸
\82É
\82²
\8b¦
\97Í
\82
\82¾
\82³
\82¢';
2872 MsgBox(GikoForm.Handle, msg, '
\8cx
\8d\90', MB_ICONEXCLAMATION);
2875 for i := 0 to List.Count - 1 do begin
2876 if TObject(List[i]) is TThreadItem then
2877 GikoForm.DownloadContent(TThreadItem(List[i]), shiftDown);
2883 // *************************************************************************
2884 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\83_
\83E
\83\93\83\8d\81[
\83h
\82·
\82éUpdate
\83C
\83x
\83\93\83g
2885 // *************************************************************************
2886 procedure TGikoDM.SelectThreadReloadActionUpdate(Sender: TObject);
2888 TAction(Sender).Enabled :=
2889 (GikoForm.GetActiveList is TBoard) and (GikoForm.ListView.SelCount > 0);
2891 // *************************************************************************
2892 //!
\83X
\83\8c\83b
\83h
\8f\84\89ñ
\97\
\96ñ
2893 // *************************************************************************
2894 procedure TGikoDM.SelectReservActionExecute(Sender: TObject);
2896 //INFO 2005/11/19
\83_
\83~
\81[
\81H
\81@by
\82à
\82¶
\82ã
2897 //
\82±
\82Ì
\83R
\83\81\83\93\83g
\8dí
\8f\9c\82µ
\82Ä
\82Í
\91Ê
\96Ú
2899 // *************************************************************************
2900 //!
\83X
\83\8c\83b
\83h
\8f\84\89ñ
\97\
\96ñUpdate
\83C
\83x
\83\93\83g
2901 // *************************************************************************
2902 procedure TGikoDM.SelectReservActionUpdate(Sender: TObject);
2907 if (GikoForm.GetActiveList is TBoard) and (GikoForm.ListView.SelCount > 0) then begin
2908 List := TList.Create;
2910 GikoForm.SelectListItem(List);
2911 for i := 0 to List.Count - 1 do begin
2912 if TObject(List[i]) is TThreadItem then begin
2913 if TThreadItem(List[i]).IsLogFile then begin
2914 SelectReservAction.Enabled := True;
2919 SelectReservAction.Enabled := False;
2923 end else if (GikoForm.GetActiveList is TCategory) and (GikoForm.ListView.SelCount > 0) then
2924 SelectReservAction.Enabled := True
2926 SelectReservAction.Enabled := False;
2928 // *************************************************************************
2929 //!
\91I
\91ð
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82É
\90V
\82µ
\82¢
\96¼
\91O
\82Å
\8f\84\89ñ
\97\
\96ñ
2930 // *************************************************************************
2931 procedure TGikoDM.SelectNewRoundNameExecute(Sender: TObject);
2934 Dlg: TRoundNameDialog;
2938 //
\8cÄ
\82Ñ
\8fo
\82µ
\8c³
\82ª
\81ATAction
\82ÅListView
\82É
\91I
\91ð
\82ª
\82¢
\82È
\82¯
\82ê
\82Î
\81AEXIT
\82·
\82é
2939 if (Sender is TAction) and (GikoForm.ListView.Selected = nil) then
2942 //
\93o
\98^
\8fã
\8cÀ
\83`
\83F
\83b
\83N
2943 cnt := RoundList.Count[grtBoard];
2944 cnt := cnt + RoundList.Count[grtItem];
2945 if cnt > 500 then begin
2946 MsgBox(GikoForm.Handle, '
\8f\84\89ñ
\82Í500
\88È
\8fã
\93o
\98^
\82Å
\82«
\82Ü
\82¹
\82ñ', MSG_ERROR, MB_OK or MB_ICONSTOP);
2950 Dlg := TRoundNameDialog.Create(GikoForm);
2953 if Dlg.ModalResult <> mrCancel then begin
2954 s := Trim(Dlg.RoundNameEdit.Text);
2955 if (Sender is TMenuItem) then begin
2956 GikoForm.SetSelectItemRound(True, s, TMenuItem(Sender).Parent.Name);
2957 end else if (Sender is TAction) then begin
2958 if (GikoForm.ListView.Selected <> nil) then begin
2959 if (TObject(GikoForm.ListView.Selected.Data) is TThreadItem) then begin
2960 GikoForm.SetSelectItemRound(True, s,
2961 TThreadItem(GikoForm.ListView.Selected.Data).Title);
2962 end else if (TObject(GikoForm.ListView.Selected.Data) is TBoard) then begin
2963 GikoForm.SetSelectItemRound(True, s,
2964 TBoard(GikoForm.ListView.Selected.Data).Title);
2968 GikoForm.ListView.Refresh;
2974 // *************************************************************************
2975 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\83X
\83\8c\83b
\83h
\82Ì
\8f\84\89ñ
\82ð
\8dí
\8f\9c\82·
\82é
2976 // *************************************************************************
2977 procedure TGikoDM.SelectDeleteRoundExecute(Sender: TObject);
2981 if (Sender is TMenuItem) then begin
2983 GikoForm.SetSelectItemRound(False, '', TMenuItem(Sender).Parent.Name);
2986 end else if (Sender is TAction) then begin
2988 if GikoForm.ListView.Selected <> nil then begin
2989 if (TObject(GikoForm.ListView.Selected.Data) is TThreadItem) then begin
2990 s := TThreadItem(GikoForm.ListView.Selected.Data).Title;
2991 end else if (TObject(GikoForm.ListView.Selected.Data) is TBoard) then begin
2992 s := TBoard(GikoForm.ListView.Selected.Data).Title;
2994 GikoForm.SetSelectItemRound(False, '', s);
3000 GikoForm.ListView.Refresh;
3002 // *************************************************************************
3003 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\94Â
\82ð
\82¨
\8bC
\82É
\93ü
\82è
\82É
\92Ç
\89Á
\82·
\82é
3004 // *************************************************************************
3005 procedure TGikoDM.BoardFavoriteAddActionExecute(Sender: TObject);
3007 if TObject(GikoForm.ListView.Selected.Data) is TBoard then
3008 GikoForm.ShowFavoriteAddDialog(TObject(GikoForm.ListView.Selected.Data));
3010 // *************************************************************************
3011 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\94Â
\82ð
\82¨
\8bC
\82É
\93ü
\82è
\82É
\92Ç
\89Á
\82·
\82éUpdate
\83C
\83x
\83\93\83g
3012 // *************************************************************************
3013 procedure TGikoDM.BoardFavoriteAddActionUpdate(Sender: TObject);
3015 BoardFavoriteAddAction.Enabled :=
3016 (GikoForm.GetActiveList is TCategory) and (GikoForm.ListView.SelCount > 0);
3018 // *************************************************************************
3019 //! Explorer
\82ÅLog
\83t
\83H
\83\8b\83_
\82ð
\8aJ
\82
3020 // *************************************************************************
3021 procedure TGikoDM.LogFolderOpenActionExecute(Sender: TObject);
3025 if ((GikoSys.Setting.ListOrientation = gloVertical) and
3026 (GikoSys.Setting.ListHeightState = glsMax)) or
3027 ((GikoSys.Setting.ListOrientation = gloHorizontal) and
3028 (GikoSys.Setting.ListWidthState = glsMax)) then begin
3029 if(GikoForm.GetActiveContent <> nil) then begin
3030 GikoSys.CreateProcess('explorer.exe', '/e,"' + ExtractFilePath(GikoForm.GetActiveContent.FilePath) + '"');
3032 end else if GikoForm.GetActiveList is TCategory then begin
3033 List := TList.Create;
3035 GikoForm.SelectListItem(List);
3036 GikoSys.CreateProcess('explorer.exe', '/e,"' + ExtractFilePath(TBoard(List[0]).FilePath) + '"');
3040 end else if GikoForm.GetActiveList is TBoard then begin
3041 GikoSys.CreateProcess('explorer.exe', '/e,"' + ExtractFilePath(TBoard(GikoForm.GetActiveList).FilePath) + '"');
3045 // *************************************************************************
3046 //! ActiveList
\82ªTBoard
\82©TCategory
\82Å
\83X
\83\8c\88ê
\97\97\82Å
\82P
\82Â
\88È
\8fã
\91I
\91ð
\82µ
\82Ä
\82¢
\82é
\82Æ
\97L
\8cø
\82É
\82È
\82éActionde
\8b¤
\92Ê
3047 // *************************************************************************
3048 procedure TGikoDM.LogFolderOpenActionUpdate(Sender: TObject);
3050 if ((GikoForm.GetActiveList is TBoard) or (GikoForm.GetActiveList is TCategory))
3051 and (GikoForm.ListView.SelCount > 0) then
3052 TAction(Sender).Enabled := True
3054 TAction(Sender).Enabled := False;
3056 // *************************************************************************
3057 //! Header.txt
\82ð
\83u
\83\89\83E
\83U
\82Å
\95\
\8e¦
\82·
\82é
3058 // *************************************************************************
3059 procedure TGikoDM.BrowsBoradHeadActionExecute(Sender: TObject);
3061 RefURL, URL : string;
3065 if GikoForm.GetActiveList is TCategory then begin
3066 List := TList.Create;
3068 GikoForm.SelectListItem(List);
3069 RefURL := TBoard(List[0]).URL;
3073 end else if GikoForm.GetActiveList is TBoard then begin
3074 RefURL := TBoard(GikoForm.GetActiveList).URL
3076 if RefURL <> '' then begin
3077 if RefURL[Length(RefURL)] <> '/' then
3078 URL := RefURL + '/' + 'head.txt'
3080 URL := RefURL + 'head.txt';
3082 GikoForm.MoveToURL(URL);
3084 ShowMessage('
\94Â
\82ð
\93Á
\92è
\82Å
\82«
\82Ü
\82¹
\82ñ
\82Å
\82µ
\82½
\81B');
3088 // *************************************************************************
3089 //!
\83X
\83\8c\88ê
\97\97\82Ì
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\93à
\97e
\82É
\82µ
\82½
\82ª
\82Á
\82Ä
\81A
\83\
\81[
\83g
\83J
\83\89\83\80\82Ì
\88Ê
\92u
\82Æ
\95û
\8cü
\82ð
\8eæ
\93¾
\82·
\82é
3090 // *************************************************************************
3091 function TGikoDM.GetSortProperties(List: TObject;
3092 var vSortOrder: Boolean): Boolean;
3095 if (List <> nil) then begin
3096 if (List is TBBS) then begin
3097 vSortOrder := GikoSys.Setting.BBSSortOrder;
3098 end else if (List is TCategory) then begin
3099 vSortOrder := GikoSys.Setting.CategorySortOrder;
3100 end else if (List is TBoard) then begin
3101 vSortOrder := GikoSys.Setting.BoardSortOrder;
3109 // *************************************************************************
3110 //!
\8c»
\8dÝ
\82Ì
\83J
\83\89\83\80\82ð
\83\
\81[
\83g
\82·
\82é
3111 // *************************************************************************
3112 procedure TGikoDM.SortActiveColumnActionExecute(Sender: TObject);
3117 if GetSortProperties(GikoForm.GetActiveList, so) then begin
3118 for i := 0 to GikoForm.ListView.Columns.Count - 1 do begin
3119 if (GikoForm.ListView.Column[ i ].ImageIndex = ITEM_ICON_SORT1) or
3120 (GikoForm.ListView.Column[ i ].ImageIndex = ITEM_ICON_SORT2) then begin
3122 TListViewUtils.ListViewSort(nil, GikoForm.ListView,
3123 GikoForm.ListView.Column[ i ], ListNumberVisibleAction.Checked,
3130 // *************************************************************************
3131 //!
\89E
\97×
\82Ì
\83J
\83\89\83\80\82ð
\83\
\81[
\83g
3132 // *************************************************************************
3133 procedure TGikoDM.SortNextColumnActionExecute(Sender: TObject);
3137 for i := 0 to GikoForm.ListView.Columns.Count - 1 do begin
3138 if (GikoForm.ListView.Column[ i ].ImageIndex = ITEM_ICON_SORT1) or
3139 (GikoForm.ListView.Column[ i ].ImageIndex = ITEM_ICON_SORT2) then begin
3141 if id > GikoForm.ListView.Columns.Count - 1 then
3143 TListViewUtils.ListViewSort( nil, GikoForm.ListView,
3144 GikoForm.ListView.Column[ id ], ListNumberVisibleAction.Checked,
3150 // *************************************************************************
3151 //!
\8d¶
\97×
\82Ì
\83J
\83\89\83\80\82ð
\83\
\81[
\83g
3152 // *************************************************************************
3153 procedure TGikoDM.SortPrevColumnActionExecute(Sender: TObject);
3157 for i := 0 to GikoForm.ListView.Columns.Count - 1 do begin
3158 if (GikoForm.ListView.Column[ i ].ImageIndex = ITEM_ICON_SORT1) or
3159 (GikoForm.ListView.Column[ i ].ImageIndex = ITEM_ICON_SORT2) then begin
3162 id := GikoForm.ListView.Columns.Count - 1;
3163 TListViewUtils.ListViewSort( nil, GikoForm.ListView,
3164 GikoForm.ListView.Column[ id ], ListNumberVisibleAction.Checked,
3170 ////////////////////////////////
\94Â
\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
3171 // *************************************************************************
3172 //!
\95W
\8f\80\83c
\81[
\83\8b\83o
\81[
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3173 // *************************************************************************
3174 procedure TGikoDM.StdToolBarVisibleActionExecute(Sender: TObject);
3176 CoolBand: TCoolBand;
3178 CoolBand := GikoForm.GetCoolBand(GikoForm.MainCoolBar, GikoForm.StdToolBar);
3179 if CoolBand = nil then
3181 GikoSys.Setting.StdToolBarVisible := StdToolBarVisibleAction.Checked;
3182 CoolBand.Visible := GikoSys.Setting.StdToolBarVisible;
3183 GikoForm.StdToolBarVisiblePMenu.Checked := GikoSys.Setting.StdToolBarVisible;
3185 // *************************************************************************
3186 //!
\83A
\83h
\83\8c\83X
\83o
\81[
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3187 // *************************************************************************
3188 procedure TGikoDM.AddressBarVisibleActionExecute(Sender: TObject);
3190 CoolBand: TCoolBand;
3192 CoolBand := GikoForm.GetCoolBand(GikoForm.MainCoolBar, GikoForm.AddressToolBar);
3193 if CoolBand = nil then
3195 GikoSys.Setting.AddressBarVisible := AddressBarVisibleAction.Checked;
3196 CoolBand.Visible := GikoSys.Setting.AddressBarVisible;
3197 GikoForm.AddressToolBarVisiblePMenu.Checked := GikoSys.Setting.AddressBarVisible;
3199 // *************************************************************************
3200 //!
\83\8a\83\93\83N
\83o
\81[
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3201 // *************************************************************************
3202 procedure TGikoDM.LinkBarVisibleActionExecute(Sender: TObject);
3204 CoolBand: TCoolBand;
3206 CoolBand := GikoForm.GetCoolBand(GikoForm.MainCoolBar, GikoForm.LinkToolBar);
3207 if CoolBand = nil then
3209 GikoSys.Setting.LinkBarVisible := LinkBarVisibleAction.Checked;
3210 CoolBand.Visible := GikoSys.Setting.LinkBarVisible;
3211 GikoForm.LinkToolBarVisiblePMenu.Checked := GikoSys.Setting.LinkBarVisible;
3213 // *************************************************************************
3214 //!
\83\8a\83X
\83g
\83c
\81[
\83\8b\83o
\81[
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3215 // *************************************************************************
3216 procedure TGikoDM.ListToolBarVisibleActionExecute(Sender: TObject);
3218 CoolBand: TCoolBand;
3220 CoolBand := GikoForm.GetCoolBand(GikoForm.ListCoolBar, GikoForm.ListToolBar);
3221 if CoolBand = nil then
3223 CoolBand.Visible := ListToolBarVisibleAction.Checked;
3224 GikoSys.Setting.ListToolBarVisible := ListToolBarVisibleAction.Checked;
3226 // *************************************************************************
3227 //!
\83\8a\83X
\83g
\96¼
\8fÌ
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3228 // *************************************************************************
3229 procedure TGikoDM.ListNameBarVisibleActionExecute(Sender: TObject);
3231 CoolBand: TCoolBand;
3233 CoolBand := GikoForm.GetCoolBand(GikoForm.ListCoolBar, GikoForm.ListNameToolBar);
3234 if CoolBand = nil then
3236 CoolBand.Visible := ListNameBarVisibleAction.Checked;
3237 GikoSys.Setting.ListNameBarVisible := ListNameBarVisibleAction.Checked;
3239 // *************************************************************************
3240 //!
\83u
\83\89\83E
\83U
\83c
\81[
\83\8b\83o
\81[
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3241 // *************************************************************************
3242 procedure TGikoDM.BrowserToolBarVisibleActionExecute(Sender: TObject);
3244 CoolBand: TCoolBand;
3246 CoolBand := GikoForm.GetCoolBand(GikoForm.BrowserCoolBar, GikoForm.BrowserToolBar);
3247 if CoolBand = nil then
3249 CoolBand.Visible := BrowserToolBarVisibleAction.Checked;
3250 GikoSys.Setting.BrowserToolBarVisible := BrowserToolBarVisibleAction.Checked;
3252 // *************************************************************************
3253 //!
\83u
\83\89\83E
\83U
\96¼
\8fÌ
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3254 // *************************************************************************
3255 procedure TGikoDM.BrowserNameBarVisibleActionExecute(Sender: TObject);
3257 CoolBand: TCoolBand;
3259 CoolBand := GikoForm.GetCoolBand(GikoForm.BrowserCoolBar, GikoForm.BrowserNameToolBar);
3260 if CoolBand = nil then
3262 CoolBand.Visible := BrowserNameBarVisibleAction.Checked;
3263 GikoSys.Setting.BrowserNameBarVisible := BrowserNameBarVisibleAction.Checked;
3265 // *************************************************************************
3266 //!
\83\81\83b
\83Z
\81[
\83W
\83o
\81[
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3267 // *************************************************************************
3268 procedure TGikoDM.MsgBarVisibleActionExecute(Sender: TObject);
3270 GikoForm.MessageSplitter.Visible := MsgBarVisibleAction.Checked;
3271 GikoForm.MessagePanel.Top :=
3272 GikoForm.MessageSplitter.Top + GikoForm.MessageSplitter.Height;
3273 GikoForm.MessageSplitter.Top := GikoForm.MessagePanel.Top + 1;
3274 GikoForm.MessagePanel.Visible := MsgBarVisibleAction.Checked;
3275 GikoSys.Setting.MessageBarVisible := MsgBarVisibleAction.Checked;
3277 // *************************************************************************
3278 //!
\83\81\83b
\83Z
\81[
\83W
\83o
\81[
\82ð
\95Â
\82¶
\82é
3279 // *************************************************************************
3280 procedure TGikoDM.MsgBarCloseActionExecute(Sender: TObject);
3282 MsgBarVisibleAction.Execute;
3284 // *************************************************************************
3285 //!
\83X
\83e
\81[
\83^
\83X
\83o
\81[
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3286 // *************************************************************************
3287 procedure TGikoDM.StatusBarVisibleActionExecute(Sender: TObject);
3289 GikoForm.StatusBar.Visible := StatusBarVisibleAction.Checked;
3290 GikoSys.Setting.StatusBarVisible := StatusBarVisibleAction.Checked;
3292 // *************************************************************************
3293 //!
\83L
\83\83\83r
\83l
\83b
\83g
\82Ì
\95\
\8e¦
\82ð
\8cf
\8e¦
\94Â
\82É
\82·
\82é
3294 // *************************************************************************
3295 procedure TGikoDM.CabinetBBSActionExecute(Sender: TObject);
3298 if GikoForm.CabinetPanel.Visible then begin
3299 if GikoForm.TreeType = gtt2ch then begin
3300 GikoForm.CabinetVisible( False );
3302 CabinetBBSAction.Checked := False;
3304 CabinetBBSAction.Checked := True;
3307 GikoForm.CabinetVisible( True );
3308 CabinetBBSAction.Checked := True;
3311 if GikoForm.ActiveBBS = nil then
3312 GikoForm.ShowBBSTree( BBSs[ 0 ] )
3314 GikoForm.ShowBBSTree( GikoForm.ActiveBBS );
3317 // *************************************************************************
3318 //!
\83L
\83\83\83r
\83l
\83b
\83g
\82Ì
\95\
\8e¦
\82ð
\97\9a\97ð
\83\8a\83X
\83g
\82É
\82·
\82é
3319 // *************************************************************************
3320 procedure TGikoDM.CabinetHistoryActionExecute(Sender: TObject);
3322 GikoForm.ShowHistoryTree;
3324 // *************************************************************************
3325 //!
\83L
\83\83\83r
\83l
\83b
\83g
\82Ì
\95\
\8e¦
\82ð
\82¨
\8bC
\82É
\93ü
\82è
\83\8a\83X
\83g
\82É
\82·
\82é
3326 // *************************************************************************
3327 procedure TGikoDM.CabinetFavoriteActionExecute(Sender: TObject);
3333 if GikoForm.CabinetPanel.Visible then begin
3334 if GikoForm.TreeType = gttFavorite then begin
3335 GikoForm.CabinetVisible( False );
3336 CabinetFavoriteAction.Checked := False;
3338 CabinetFavoriteAction.Checked := True;
3341 GikoForm.CabinetVisible( True );
3342 CabinetFavoriteAction.Checked := True;
3345 // BBS...BBS, History, Favorite
3346 GikoSys.Setting.CabinetIndex := GikoForm.CabinetSelectPopupMenu.Items.Count - 1;
3348 b := GikoForm.CabinetSelectPopupMenu.Items.Count - 1;
3349 for i := 0 to b do begin
3350 item := GikoForm.CabinetSelectPopupMenu.Items[ i ];
3351 if item is TBBSMenuItem then begin
3352 item.Checked := False;
3353 // CabinetMenu
\82Í CabinetSelectPopupMenu
\82Æ
\93¯
\82¶
\82Æ
\8c\88\82ß
\82¤
\82¿
\82µ
\82¿
\82á
\82¤
3354 GikoForm.CabinetMenu.Items[ i ].Checked := False;
3358 //
\83L
\83\83\83r
\83l
\83b
\83g
\83c
\81[
\83\8b\83o
\81[
\8by
\82Ñ
\83L
\83\83\83r
\83l
\83b
\83g
\82Ì
\95\
\8e¦
\90Ø
\91Ö
3359 GikoForm.HistoryToolBar.Hide;
3360 GikoForm.FavoriteToolBar.Show;
3361 GikoForm.TreeView.Visible := False;
3362 GikoForm.FavoriteTreeView.Visible := True;
3364 GikoForm.CabinetSelectToolButton.Caption := '
\82¨
\8bC
\82É
\93ü
\82è';
3365 GikoForm.TreeType := gttFavorite;
3367 //
\83\81\83j
\83\85\81[
\8by
\82Ñ
\83{
\83^
\83\93\82Ì
\83`
\83F
\83b
\83N
\82ð
\90Ý
\92è
3368 CabinetBBSAction.Checked := False;
3369 CabinetHistoryAction.Checked := False;
3371 //
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\83c
\83\8a\81[
\82ð
\93W
\8aJ
3372 GikoForm.FavoriteTreeView.Items.GetFirstNode.Expanded := True;
3375 // *************************************************************************
3376 //!
\83L
\83\83\83r
\83l
\83b
\83g
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3377 // *************************************************************************
3378 procedure TGikoDM.CabinetVisibleActionExecute(Sender: TObject);
3380 case GikoForm.TreeType of
3381 gttHistory: CabinetHistoryAction.Execute;
3382 gttFavorite: CabinetFavoriteAction.Execute;
3384 CabinetBBSAction.Execute;
3387 // *************************************************************************
3388 //!
\83L
\83\83\83r
\83l
\83b
\83g
\82ð
\95Â
\82¶
\82é
3389 // *************************************************************************
3390 procedure TGikoDM.CabinetCloseActionExecute(Sender: TObject);
3392 //INFO 2005/11/19
\82±
\82Ì
\83A
\83N
\83V
\83\87\83\93\82É
\82Í
\89½
\82à
\90Ý
\92è
\82³
\82ê
\82Ä
\82¢
\82È
\82©
\82Á
\82½
\81@
\82à
\82¶
\82ã
3394 // *************************************************************************
3395 //!
\83\8a\83X
\83g
\82ð
\91å
\82«
\82¢
\83A
\83C
\83R
\83\93\95\
\8e¦
\82É
\82·
\82é
3396 // *************************************************************************
3397 procedure TGikoDM.LargeIconActionExecute(Sender: TObject);
3399 GikoForm.ListView.ViewStyle := vsIcon;
3400 LargeIconAction.Checked := True;
3402 // *************************************************************************
3403 //!
\83\8a\83X
\83g
\82ð
\8f¬
\82³
\82¢
\83A
\83C
\83R
\83\93\95\
\8e¦
\82É
\82·
\82é
3404 // *************************************************************************
3405 procedure TGikoDM.SmallIconActionExecute(Sender: TObject);
3407 GikoForm.ListView.ViewStyle := vsSmallIcon;
3408 SmallIconAction.Checked := True;
3410 // *************************************************************************
3411 //!
\83\8a\83X
\83g
\82ð
\88ê
\97\97\95\
\8e¦
\82É
\82·
\82é
3412 // *************************************************************************
3413 procedure TGikoDM.ListIconActionExecute(Sender: TObject);
3415 GikoForm.ListView.ViewStyle := vsList;
3416 ListIconAction.Checked := True;
3418 // *************************************************************************
3419 //!
\83\8a\83X
\83g
\82ð
\8fÚ
\8d×
\95\
\8e¦
\82É
\82·
\82é
3420 // *************************************************************************
3421 procedure TGikoDM.DetailIconActionExecute(Sender: TObject);
3423 GikoForm.ListView.ViewStyle := vsReport;
3424 DetailIconAction.Checked := True;
3426 // *************************************************************************
3427 //!
\83_
\83E
\83\93\83\8d\81[
\83h
\82ð
\92\86\8e~
\82·
\82é
3428 // *************************************************************************
3429 procedure TGikoDM.StopActionExecute(Sender: TObject);
3431 GikoForm.FControlThread.DownloadAbort;
3432 if GikoForm.WorkCount <> 0 then GikoForm.WorkCount := 0;
3434 GikoForm.Animate.Active := False;
3437 GikoForm.ScreenCursor := crDefault;
3439 // *************************************************************************
3440 //!
\83\8a\83X
\83g
\82Æ
\83u
\83\89\83E
\83U
\82Ì
\8fc
\89¡
\94z
\92u
\82ð
\95Ï
\8dX
\82·
\82é
3441 // *************************************************************************
3442 procedure TGikoDM.ArrangeActionExecute(Sender: TObject);
3444 if ArrangeAction.Checked then begin
3446 GikoForm.ViewPanel.Align := alNone;
3447 GikoForm.ListSplitter.Align := alNone;
3448 GikoForm.ThreadPanel.Align := alNone;
3450 GikoForm.ViewPanel.Width := GikoForm.BrowserSizeWidth;
3451 GikoForm.ViewPanel.Align := alLeft;
3453 GikoForm.ListSplitter.Width := 5;
3454 GikoForm.ListSplitter.Align := alLeft;
3456 GikoForm.ViewPanel.Left := -10;
3458 GikoForm.ThreadPanel.Align := alClient;
3460 GikoSys.Setting.ListOrientation := gloHorizontal;
3461 case GikoSys.Setting.ListWidthState of
3463 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_NORMAL;
3464 BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_MIN;
3465 GikoForm.ViewPanel.Width := 1;
3468 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_MAX;
3469 BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_MIN;
3472 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_MAX;
3473 BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_NORMAL;
3474 GikoForm.ViewPanel.Width := GikoForm.ThreadMainPanel.Width - 80;
3479 GikoForm.ViewPanel.Align := alNone;
3480 GikoForm.ListSplitter.Align := alNone;
3481 GikoForm.ThreadPanel.Align := alNone;
3483 GikoForm.ViewPanel.Height := GikoForm.BrowserSizeHeight;
3484 GikoForm.ViewPanel.Align := alTop;
3486 GikoForm.ListSplitter.Height := 5;
3487 GikoForm.ListSplitter.Align := alTop;
3489 GikoForm.ViewPanel.Top := -10;
3491 GikoForm.ThreadPanel.Align := alClient;
3492 GikoSys.Setting.ListOrientation := gloVertical;
3493 case GikoSys.Setting.ListHeightState of
3495 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_NORMAL;
3496 BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_MIN;
3497 GikoForm.ViewPanel.Height := 1;
3500 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_MAX;
3501 BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_MIN;
3504 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_MAX;
3505 BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_NORMAL;
3506 GikoForm.ViewPanel.Height :=
3507 GikoForm.ThreadMainPanel.Height - GikoForm.BrowserCoolBar.Height - 7;
3512 // *************************************************************************
3513 //!
\83y
\83C
\83\93\82Ì
\83T
\83C
\83Y
\82ð
\8f\89\8aú
\89»
\82·
\82é
3514 // *************************************************************************
3515 procedure TGikoDM.PaneInitActionExecute(Sender: TObject);
3517 GikoForm.CabinetPanel.Width := 150;
3518 GikoForm.MessagePanel.Height := 40;
3520 GikoForm.BrowserSizeWidth := 200;
3521 GikoForm.BrowserSizeHeight := 200;
3522 if ArrangeAction.Checked then begin
3523 GikoForm.ViewPanel.Width := GikoForm.BrowserSizeWidth;
3525 GikoForm.ViewPanel.Height := GikoForm.BrowserSizeHeight;
3527 if GikoSys.Setting.ListOrientation = gloHorizontal then begin
3528 if GikoSys.Setting.ListHeightState = glsMax then begin
3529 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_MAX;
3530 GikoSys.Setting.ListHeightState := glsNormal;
3533 if GikoSys.Setting.ListWidthState = glsMax then begin
3534 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_MAX;
3535 GikoSys.Setting.ListWidthState := glsNormal;
3539 // *************************************************************************
3540 //!
\83u
\83\89\83E
\83U
\83^
\83u
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3541 // *************************************************************************
3542 procedure TGikoDM.BrowserTabVisibleActionExecute(Sender: TObject);
3544 GikoSys.Setting.BrowserTabVisible := BrowserTabVisibleAction.Checked;
3545 GikoForm.SetBrowserTabState;
3547 // *************************************************************************
3548 //!
\83u
\83\89\83E
\83U
\83^
\83u
\82ð
\8fã
\82É
\95\
\8e¦
\82·
\82é
3549 // *************************************************************************
3550 procedure TGikoDM.BrowserTabTopActionExecute(Sender: TObject);
3552 BrowserTabBottomAction.Checked := False;
3553 BrowserTabTopAction.Checked := True;
3554 GikoSys.Setting.BrowserTabPosition := gtpTop;
3555 GikoForm.SetBrowserTabState;
3557 // *************************************************************************
3558 //!
\83u
\83\89\83E
\83U
\83^
\83u
\82ð
\89º
\82É
\95\
\8e¦
\82·
\82é
3559 // *************************************************************************
3560 procedure TGikoDM.BrowserTabBottomActionExecute(Sender: TObject);
3562 BrowserTabTopAction.Checked := False;
3563 BrowserTabBottomAction.Checked := True;
3564 GikoSys.Setting.BrowserTabPosition := gtpBottom;
3565 GikoForm.SetBrowserTabState;
3567 // *************************************************************************
3568 //!
\83u
\83\89\83E
\83U
\83^
\83u
\82Ì
\83X
\83^
\83C
\83\8b\82ð
\83^
\83u
\83X
\83^
\83C
\83\8b\82É
\82·
\82é
3569 // *************************************************************************
3570 procedure TGikoDM.BrowserTabTabStyleActionExecute(Sender: TObject);
3572 BrowserTabButtonStyleAction.Checked := False;
3573 BrowserTabFlatStyleAction.Checked := False;
3574 BrowserTabTabStyleAction.Checked := True;
3575 GikoSys.Setting.BrowserTabStyle := gtsTab;
3576 GikoForm.SetBrowserTabState;
3578 // *************************************************************************
3579 //!
\83u
\83\89\83E
\83U
\83^
\83u
\82Ì
\83X
\83^
\83C
\83\8b\82ð
\83{
\83^
\83\93\83X
\83^
\83C
\83\8b\82É
\82·
\82é
3580 // *************************************************************************
3581 procedure TGikoDM.BrowserTabButtonStyleActionExecute(Sender: TObject);
3583 BrowserTabTabStyleAction.Checked := False;
3584 BrowserTabFlatStyleAction.Checked := False;
3585 BrowserTabButtonStyleAction.Checked := True;
3586 GikoSys.Setting.BrowserTabStyle := gtsButton;
3587 GikoForm.SetBrowserTabState;
3589 // *************************************************************************
3590 //!
\83u
\83\89\83E
\83U
\83^
\83u
\82Ì
\83X
\83^
\83C
\83\8b\82ð
\83t
\83\89\83b
\83g
\83{
\83^
\83\93\83X
\83^
\83C
\83\8b\82É
\82·
\82é
3591 // *************************************************************************
3592 procedure TGikoDM.BrowserTabFlatStyleActionExecute(Sender: TObject);
3594 BrowserTabFlatStyleAction.Checked := True;
3595 BrowserTabTabStyleAction.Checked := False;
3596 BrowserTabButtonStyleAction.Checked := False;
3597 GikoSys.Setting.BrowserTabStyle := gtsFlat;
3598 GikoForm.SetBrowserTabState;
3600 // *************************************************************************
3601 //!
\83u
\83\89\83E
\83U
\82É
\83t
\83H
\81[
\83J
\83X
\82ð
\93\96\82Ä
\82é
3602 // *************************************************************************
3603 procedure TGikoDM.SetFocusForBrowserActionExecute(Sender: TObject);
3605 GikoForm.ActiveContent.Browser.SetFocus;
3607 // *************************************************************************
3608 //!
\83u
\83\89\83E
\83U
\82É
\83t
\83H
\81[
\83J
\83X
\82ð
\93\96\82Ä
\82éUpdate
\83C
\83x
\83\93\83g
3609 // *************************************************************************
3610 procedure TGikoDM.SetFocusForBrowserActionUpdate(Sender: TObject);
3612 if( GikoForm.ActiveContent <> nil) and (GikoForm.ActiveContent.Browser <> nil) and
3613 (GikoForm.ActiveContent.Browser <> GikoForm.BrowserNullTab.Browser) then
3614 TAction(Sender).Enabled := true
3616 TAction(Sender).Enabled := false;
3618 // *************************************************************************
3619 //!
\83X
\83\8c\83b
\83h
\88ê
\97\97\82É
\83t
\83H
\81[
\83J
\83X
\82ð
\93\96\82Ä
\82é
3620 // *************************************************************************
3621 procedure TGikoDM.SetFocusForThreadListActionExecute(Sender: TObject);
3623 if GikoForm.ActiveContent <> nil then
3624 GikoForm.WebBrowserClick(GikoForm.ActiveContent.Browser); //
\88ê
\89ñBrowser
\82É
\93\96\82Ä
\82È
\82¢
\82Æ
\93®
\82©
\82È
\82¢
\82Æ
\82«
\82ª
\82 \82é
3625 GikoForm.ListView.SetFocus;
3627 if( GikoForm.ListView.Items.Count > 0 ) and (GikoForm.ListView.ItemFocused = nil) then
3628 GikoForm.ListView.Items.Item[0].Selected := true; //
\91I
\91ð
\83A
\83C
\83e
\83\80\82ª
\96³
\82¢
\82Æ
\82«
\82Í
\90æ
\93ª
\82Ì
\82ð
\91I
\91ð
\82·
\82é
3630 //
\83X
\83N
\83\8d\81[
\83\8b\82³
\82¹
\82é
3631 if (GikoForm.ListView.ItemFocused <> nil) then begin
3632 GikoForm.ListView.ItemFocused.MakeVisible(False);
3635 // *************************************************************************
3636 //!
\83L
\83\83\83r
\83l
\83b
\83g
\82É
\83t
\83H
\81[
\83J
\83X
\82ð
\93\96\82Ä
\82é
3637 // *************************************************************************
3638 procedure TGikoDM.SetFocusForCabinetActionExecute(Sender: TObject);
3640 if GikoForm.ActiveContent <> nil then
3641 GikoForm.WebBrowserClick(GikoForm.ActiveContent.Browser); //
\88ê
\89ñBrowser
\82É
\93\96\82Ä
\82È
\82¢
\82Æ
\93®
\82©
\82È
\82¢
\82Æ
\82«
\82ª
\82 \82é
3642 if GikoForm.TreeView.Visible then begin
3643 GikoForm.TreeView.SetFocus;
3644 if(GikoForm.TreeView.Items.Count > 0) and ( GikoForm.TreeView.Selected = nil ) then
3645 GikoForm.TreeView.Items.Item[0].Selected := true;
3646 end else if GikoForm.FavoriteTreeView.Visible then begin
3647 GikoForm.FavoriteTreeView.SetFocus;
3648 if(GikoForm.FavoriteTreeView.Items.Count > 0) and (GikoForm.FavoriteTreeView.Selected = nil) then
3649 GikoForm.FavoriteTreeView.Items.Item[0].Selected := true;
3652 // *************************************************************************
3653 //!
\83L
\83\83\83r
\83l
\83b
\83g
\82É
\83t
\83H
\81[
\83J
\83X
\82ð
\93\96\82Ä
\82éUpdate
\83C
\83x
\83\93\83g
3654 // *************************************************************************
3655 procedure TGikoDM.SetFocusForCabinetActionUpdate(Sender: TObject);
3657 SetFocusForCabinetAction.Enabled := GikoForm.CabinetPanel.Visible;
3659 // *************************************************************************
3660 //!
\83X
\83\8c\83b
\83h
\88ê
\97\97\82ð
\8dÅ
\91å
\89»
\82µ
\82Ä
\83t
\83H
\81[
\83J
\83X
\82ð
\93\96\82Ä
\82é
3661 // *************************************************************************
3662 procedure TGikoDM.ThreadlistMaxAndFocusActionExecute(Sender: TObject);
3664 BrowserMinAction.Execute;
3665 SetFocusForThreadListAction.Execute;
3667 // *************************************************************************
3668 //!
\83X
\83\8c\95\
\8e¦
\82ð
\8dÅ
\91å
\89»
\82µ
\82Ä
\83t
\83H
\81[
\83J
\83X
\82ð
\93\96\82Ä
\82é
3669 // *************************************************************************
3670 procedure TGikoDM.BrowserMaxAndFocusActionExecute(Sender: TObject);
3672 BrowserMaxAction.Execute;
3673 SetFocusForBrowserAction.Execute;
3675 // *************************************************************************
3676 //!
\83X
\83\8c\83b
\83h
\88ê
\97\97\82Ì
\91I
\91ð
\82ð
\8dí
\8f\9c\82·
\82é
3677 // *************************************************************************
3678 procedure TGikoDM.UnSelectedListViewActionExecute(Sender: TObject);
3680 if GikoForm.ListView.Selected <> nil then begin
3681 GikoForm.ListView.Selected.Focused := True;
3682 GikoForm.ListView.Selected := nil;
3685 ////////////////////////////////
\95\
\8e¦
\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
3686 // *************************************************************************
3687 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\8aù
\93Ç
\82É
\82·
\82é
3688 // *************************************************************************
3689 procedure TGikoDM.KidokuActionExecute(Sender: TObject);
3691 SetThreadReadProperty(true);
3693 // *************************************************************************
3694 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\96¢
\93Ç
\82É
\82·
\82é
3695 // *************************************************************************
3696 procedure TGikoDM.MidokuActionExecute(Sender: TObject);
3698 SetThreadReadProperty(false);
3700 // *************************************************************************
3701 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82Ì
\96¢
\93Ç
\81E
\8aù
\93Ç
\82ð
\90Ý
\92è
\82·
\82é true :
\8aù
\93Ç false :
\96¢
\93Ç
3702 // *************************************************************************
3703 procedure TGikoDM.SetThreadReadProperty(read: Boolean);
3708 List := TList.Create;
3710 GikoForm.SelectListItem(List);
3711 for i := 0 to List.Count - 1 do begin
3712 if TObject(List[i]) is TThreadItem then begin
3713 if (TThreadItem(List[i]).IsLogFile) then begin
3714 TThreadItem(List[i]).UnRead := not read;
3718 if GikoForm.TreeView.Visible then
3719 GikoForm.TreeView.Refresh;
3720 if GikoForm.ListView.Visible then
3721 GikoForm.ListView.Refresh;
3726 // *************************************************************************
3727 //!
\83\8a\83X
\83g
\82ð
\91S
\82Ä
\91I
\91ð
\82·
\82é
3728 // *************************************************************************
3729 procedure TGikoDM.AllSelectActionExecute(Sender: TObject);
3731 GikoForm.ListViewAllSelect;
3733 // *************************************************************************
3734 //!
\83\8a\83X
\83g
\82ð
\91S
\82Ä
\91I
\91ð
\82·
\82éUpdate
\83C
\83x
\83\93\83g
3735 // *************************************************************************
3736 procedure TGikoDM.AllSelectActionUpdate(Sender: TObject);
3738 AllSelectAction.Enabled := GikoForm.ListView.SelCount > 0;
3740 ////////////////////////////////
\95Ò
\8fW
\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
3741 //!
\83X
\83\8c\83b
\83h
\82Ì
\83T
\83C
\83Y
\82ð
\8dÄ
\8cv
\8eZ
\82·
\82é
3742 procedure TGikoDM.ThreadSizeCalcForFileActionExecute(Sender: TObject);
3744 RECALC_MES : String = '
\83X
\83\8c\83b
\83h
\82Ì
\97e
\97Ê
\82ð
\83t
\83@
\83C
\83\8b\82©
\82ç
\8dÄ
\8cv
\8eZ
\82µ
\82Ü
\82·
\81B'#13#10 +
3745 '
\82±
\82Ì
\91\80\8dì
\92\86\81A
\83M
\83R
\83i
\83r
\82Ì
\91¼
\82Ì
\91\80\8dì
\82ð
\82·
\82é
\82Æ
\83f
\81[
\83^
\82ª
\94j
\89ó
\82³
\82ê
\82é
\8b°
\82ê
\82ª
\82 \82è
\82Ü
\82·
\81B' +
3746 '
\82Ü
\82½
\82±
\82Ì
\91\80\8dì
\82Í
\81A
\94ñ
\8fí
\82É
\8e\9e\8aÔ
\82ª
\82©
\82©
\82é
\8fê
\8d\87\82ª
\82 \82è
\82Ü
\82·
\82ª
\81A
\82æ
\82ë
\82µ
\82¢
\82Å
\82·
\82©
\81H';
3747 RECALC_TITLE : String = '
\83X
\83\8c\83b
\83h
\82Ì
\97e
\97Ê
\82ð
\83t
\83@
\83C
\83\8b\82©
\82ç
\8dÄ
\8cv
\8eZ';
3750 limitSize : Integer;
3753 {
\82Ü
\82¸
\81A
\8e\9e\8aÔ
\82ª
\82©
\82©
\82é
\82±
\82Æ
\82ð
\8cx
\8d\90\82·
\82é
\83\81\83b
\83Z
\81[
\83W
\82ð
\8fo
\97Í
3754 \8dÄ
\8cv
\8eZ
\82·
\82é
\83X
\83\8c\83b
\83h
\82Ì
\83T
\83C
\83Y
\82Ìè
\87\92l
\81i
\83f
\83t
\83H
\83\8b\83g1024B)
\82ð
\8am
\94F
3755 \83v
\83\89\83O
\83C
\83\93\82ð
\97\98\97p
\82µ
\82È
\82¢
\82Æ
\82±
\82ë
\82Å
\91S
\82Ä
\82Ì
\83\8d\83O
\97L
\82è
\83X
\83\8c\83b
\83h
\82ð
\8c\9f\8dõ
3756 è
\87\92l
\88È
\89º
\82Ì
\83T
\83C
\83Y
\82Ì
\8fê
\8d\87\81ADAT
\82Ì
\83t
\83@
\83C
\83\8b\83T
\83C
\83Y
\82Æ
\94ä
\8ar
\81A
\82¸
\82ê
\82Ä
\82¢
\82ê
\82Î
\81A
3757 DAT
\82Ì
\83t
\83@
\83C
\83\8b\83T
\83C
\83Y
\82Å
\8dX
\90V
\82·
\82é
3759 if MsgBox(GikoForm.Handle, RECALC_MES,
3760 RECALC_TITLE, MB_YESNO or MB_ICONWARNING) = ID_YES then begin
3761 //è
\87\92l
\82Ì
\8am
\94F
3762 limitSize := LIMIT_SIZE;
3763 limitStr := IntToStr(limitSize);
3764 if InputQuery('è
\87\92l
\93ü
\97Í', '
\8ew
\92è
\82µ
\82½
\90\94\92l B
\88È
\89º
\82Ì
\97e
\97Ê
\82Ì
\83X
\83\8c\83b
\83h
\82Ì
\82Ý
\8dÄ
\8cv
\8eZ
\82µ
\82Ü
\82·', limitStr) then begin
3765 limitSize := StrToInt(MojuUtils.ZenToHan(limitStr));
3766 if (limitSize < 0) then begin
3767 ShowMessage('è
\87\92l
\82É
\95\89\82Í
\8ew
\92è
\82Å
\82«
\82Ü
\82¹
\82ñ
\81I');
3768 ThreadSizeCalcForFileActionExecute(nil);
3770 RecalcThreadSize(limitSize);
3775 //! limit
\82æ
\82è
\82à
\83T
\83C
\83Y
\82Ì
\8f¬
\82³
\82¢
\83X
\83\8c\83b
\83h
\82Ì
\97e
\97Ê
\82ðDAT
\83t
\83@
\83C
\83\8b\82©
\82ç
\8cv
\8eZ
3776 procedure TGikoDM.RecalcThreadSize(limit : Integer);
3778 i, j, tmpSize : Integer;
3781 Thread: TThreadItem;
3784 //
\8dÄ
\8cv
\8eZ
\83X
\83^
\81[
\83g
\81@
\83v
\83\89\83O
\83C
\83\93\82ð
\97\98\97p
\82µ
\82È
\82¢
\82Æ
\82±
\82ë
\82ð
\91S
\95\94\8c©
\82é
\81I
3785 GikoForm.ScreenCursor := crHourGlass;
3787 GikoForm.ProgressBar.Max := BoardGroups[0].Count;
3788 for i := 0 to BoardGroups[0].Count - 1 do begin
3789 Obj := BoardGroups[0].Objects[i];
3790 if (Obj <> nil) then begin
3791 Board := TBoard(Obj);
3792 if not Board.IsThreadDatRead then begin
3793 GikoSys.ReadSubjectFile(Board);
3795 for j := 0 to Board.Count - 1 do begin
3796 Thread := Board.Items[j];
3797 if (Thread <> nil) and (Thread.IsLogFile)
3798 and (Thread.Size <= limit) then begin
3799 dat := TStringList.Create;
3801 tmpSize := Thread.Size;
3803 dat.LoadFromFile(Thread.GetThreadFileName);
3804 tmpSize := Length(dat.Text);
3805 tmpSize := tmpSize - dat.Count;
3808 Thread.Size := tmpSize;
3815 GikoForm.ProgressBar.StepBy(1);
3818 GikoForm.ScreenCursor := crDefault;
3820 GikoForm.ProgressBar.Position := 0;
3821 ShowMessage('
\8cv
\8eZ
\8fI
\97¹
\82µ
\82Ü
\82µ
\82½
\81B');
3823 //!
\93ü
\97Í
\83A
\83V
\83X
\83g
\82Ì
\90Ý
\92è
\83t
\83H
\81[
\83\80\82ð
\8cÄ
\82Ñ
\8fo
\82·
3824 procedure TGikoDM.SetInputAssistActionExecute(Sender: TObject);
3826 form : TInputAssistForm;
3828 form := TInputAssistForm.Create(GikoForm);
3836 // WebBrowser
\82Ì
\8c\9f\8dõ
\83_
\83C
\83A
\83\8d\83O
\82ð
\8cÄ
\82Ñ
\8fo
\82·
3837 procedure OpenFindDialog(Browser: TWebbrowser);
3839 CGID_WebBrowser: TGUID = '{ED016940-BD5B-11cf-BA4E-00C04FD70816}';
3842 CmdTarget : IOleCommandTarget;
3843 vaIn, vaOut: OleVariant;
3846 if Browser.Document <> nil then begin
3848 PtrGUID^ := CGID_WebBrowser;
3850 Browser.Document.QueryInterface(IOleCommandTarget, CmdTarget);
3851 if CmdTarget <> nil then begin
3853 CmdTarget.Exec(PtrGUID, HTMLID_FIND, 0, vaIn, vaOut);
3863 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82Ì
\8c\9f\8dõ
\83_
\83C
\83A
\83\8d\83O
\82ð
\95\
\8e¦
\82·
\82é
3864 procedure TGikoDM.OpenFindDialogActionExecute(Sender: TObject);
3866 if( GikoForm.ActiveContent <> nil) and (GikoForm.ActiveContent.Browser <> nil) then begin
3867 OpenFindDialog(GikoForm.ActiveContent.Browser);
3871 // *************************************************************************
3872 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\95\
\8e¦
\96¼
\82ð
\83R
\83s
\81[
\82·
\82é
3873 // *************************************************************************
3874 procedure TGikoDM.FavoriteTreeViewItemNameCopyActionExecute(
3877 if GikoForm.ClickNode = nil then Exit;
3880 GikoForm.ClickNode.Text + #13#10;