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
36 //!
\83M
\83R
\83i
\83r
\83T
\83C
\83g
\82ÌURL
37 URL_GIKONAVI: string = 'http://gikonavi.sourceforge.jp/';
38 //! Monazilla
\83T
\83C
\83g
\82ÌURL
39 URL_MONAZILLA: string = 'http://www.monazilla.org/';
40 //! 2
\82¿
\82á
\82ñ
\82Ë
\82é
\82ÌURL
41 URL_2ch: string = 'http://www.2ch.net/';
42 //!
\83M
\83R
\83i
\83rWiki
\82ÌURL
43 URL_Wiki: string = 'http://gikowiki.dyndns.info/index.php?FAQ';
45 SELECTCOMBOBOX_NAME: string = ''; // '
\83X
\83\8c\83b
\83h
\8di
\8d\9e\8c\9f\8dõ';
46 SELECTCOMBOBOX_COLOR: TColor = clWindow;
50 TGikoDM = class(TDataModule)
51 GikoFormActionList: TActionList;
52 OnlyAHundredResAction: TAction;
53 OnlyKokoResAction: TAction;
55 NewBoardAction: TAction;
56 LogDeleteAction: TAction;
57 KidokuAction: TAction;
58 StdToolBarVisibleAction: TAction;
59 AddressBarVisibleAction: TAction;
60 LinkBarVisibleAction: TAction;
61 ListToolBarVisibleAction: TAction;
62 SearchAction: TAction;
63 GikoNaviWebPageAction: TAction;
64 MonazillaWebPageAction: TAction;
65 BBS2chWebPageAction: TAction;
66 GikoFolderOpenAction: TAction;
68 SelectTextClearAction: TAction;
69 NameTextClearAction: TAction;
70 MailTextClearAction: TAction;
72 ListNameBarVisibleAction: TAction;
73 BrowserToolBarVisibleAction: TAction;
74 BrowserNameBarVisibleAction: TAction;
75 MsgBarVisibleAction: TAction;
76 MsgBarCloseAction: TAction;
77 StatusBarVisibleAction: TAction;
78 CabinetBBSAction: TAction;
79 CabinetHistoryAction: TAction;
80 OnlyNewResAction: TAction;
81 CabinetFavoriteAction: TAction;
82 CabinetVisibleAction: TAction;
83 ListNumberVisibleAction: TAction;
84 UpFolderAction: TAction;
85 CabinetCloseAction: TAction;
87 LargeIconAction: TAction;
88 SmallIconAction: TAction;
89 ListIconAction: TAction;
90 DetailIconAction: TAction;
91 MidokuAction: TAction;
92 AllSelectAction: TAction;
93 AllItemAction: TAction;
94 LogItemAction: TAction;
95 NewItemAction: TAction;
96 ThreadRangeAction: TAction;
97 SelectItemAction: TAction;
99 OptionAction: TAction;
100 RoundAction: TAction;
101 BrowserMaxAction: TAction;
102 BrowserMinAction: TAction;
103 ScrollTopAction: TAction;
104 ScrollLastAction: TAction;
105 ScrollNewAction: TAction;
106 ScrollKokoAction: TAction;
107 EditorAction: TAction;
109 ShowThreadAction: TAction;
110 ShowBoardAction: TAction;
111 URLCopyAction: TAction;
112 NameCopyAction: TAction;
113 NameURLCopyAction: TAction;
114 ItemReloadAction: TAction;
115 ThreadEditorAction: TAction;
116 BoardIEAction: TAction;
117 SelectItemURLCopyAction: TAction;
118 SelectItemNameCopyAction: TAction;
119 SelectItemNameURLCopyAction: TAction;
120 SelectListReloadAction: TAction;
121 SelectThreadReloadAction: TAction;
122 BrowserTabCloseAction: TAction;
123 NotSelectTabCloseAction: TAction;
124 AllTabCloseAction: TAction;
125 KokomadeAction: TAction;
126 ZenbuAction: TAction;
127 KokoResAction: TAction;
128 TreeSelectBoradReload: TAction;
129 TreeSelectThreadReload: TAction;
130 TreeSelectURLCopy: TAction;
131 SelectReservAction: TAction;
132 SelectNewRoundName: TAction;
133 SelectDeleteRound: TAction;
134 KeySettingAction: TAction;
135 ArrangeAction: TAction;
136 ActiveLogDeleteAction: TAction;
137 TreeSelectNameURLCopy: TAction;
138 PaneInitAction: TAction;
139 LeftmostTabSelectAction: TAction;
140 LeftTabSelectAction: TAction;
141 RightTabSelectAction: TAction;
142 RightmostTabSelectAction: TAction;
143 FavoriteAddAction: TAction;
144 BoardFavoriteAddAction: TAction;
145 ThreadFavoriteAddAction: TAction;
146 TreeSelectFavoriteAddAction: TAction;
147 FavoriteArrangeAction: TAction;
148 MoveToAction: TAction;
149 BrowserTabVisibleAction: TAction;
150 BrowserTabTopAction: TAction;
151 BrowserTabBottomAction: TAction;
152 BrowserTabTabStyleAction: TAction;
153 BrowserTabButtonStyleAction: TAction;
154 BrowserTabFlatStyleAction: TAction;
155 GikoHelpAction: TAction;
156 KotehanAction: TAction;
157 ToolBarSettingAction: TAction;
158 SelectResAction: TAction;
159 AllResAction: TAction;
160 EditNGAction: TAction;
161 ReloadAction: TAction;
162 GoFowardAction: TAction;
163 GoBackAction: TAction;
164 TreeSelectSearchBoardName: TAction;
165 FavoriteTreeViewRenameAction: TAction;
166 FavoriteTreeViewNewFolderAction: TAction;
167 FavoriteTreeViewDeleteAction: TAction;
168 FavoriteTreeViewBrowseFolderAction: TAction;
169 FavoriteTreeViewReloadAction: TAction;
170 FavoriteTreeViewURLCopyAction: TAction;
171 FavoriteTreeViewNameCopyAction: TAction;
172 FavoriteTreeViewNameURLCopyAction: TAction;
173 FavoriteTreeViewLogDeleteAction: TAction;
174 ResRangeAction: TAction;
175 ExportFavoriteFile: TFileSaveAs;
176 FavoriteTreeViewBrowseBoardAction: TAction;
177 FavoriteTreeViewBrowseThreadAction: TAction;
178 UpBoardAction: TAction;
180 TreeSelectNameCopy: TAction;
181 SetFocusForBrowserAction: TAction;
182 SetFocusForThreadListAction: TAction;
183 SetFocusForCabinetAction: TAction;
185 ThreadlistMaxAndFocusAction: TAction;
186 BrowserMaxAndFocusAction: TAction;
187 SelectItemSaveForHTML: TAction;
188 SelectItemSaveForDat: TAction;
189 LogFolderOpenAction: TAction;
190 TabsSaveAction: TAction;
191 TabsOpenAction: TAction;
192 BrowsBoradHeadAction: TAction;
193 TabAutoSaveAction: TAction;
194 TabAutoLoadAction: TAction;
195 JumpToNumOfResAction: TAction;
196 FavoriteTreeViewCollapseAction: TAction;
197 RightTabCloseAction: TAction;
198 LeftTabCloseAction: TAction;
199 SameIDResAnchorAction: TAction;
200 IndividualAbon1Action: TAction;
201 IndividualAbon0Action: TAction;
202 AntiIndividualAbonAction: TAction;
203 AntiIndividualAbonDlgAction: TAction;
204 IndividualAbonID1Action: TAction;
205 IndividualAbonID0Action: TAction;
207 SortActiveColumnAction: TAction;
208 SortNextColumnAction: TAction;
209 SortPrevColumnAction: TAction;
210 BeLogInOutAction: TAction;
211 UnSelectedListViewAction: TAction;
212 WikiFAQWebPageAction: TAction;
213 ToobarImageList: TImageList;
214 SaveDialog: TSaveDialog;
215 ThreadSizeCalcForFileAction: TAction;
216 SetInputAssistAction: TAction;
217 OpenFindDialogAction: TAction;
218 ArchiveItemAction: TAction;
219 LiveItemAction: TAction;
220 FavoriteTreeViewItemNameCopyAction: TAction;
221 procedure EditNGActionExecute(Sender: TObject);
222 procedure ReloadActionExecute(Sender: TObject);
223 procedure GoFowardActionExecute(Sender: TObject);
224 procedure GoBackActionExecute(Sender: TObject);
225 procedure MoveToActionExecute(Sender: TObject);
226 procedure FavoriteAddActionExecute(Sender: TObject);
227 procedure FavoriteArrangeActionExecute(Sender: TObject);
228 procedure FavoriteTreeViewCollapseActionExecute(Sender: TObject);
229 procedure FavoriteTreeViewRenameActionExecute(Sender: TObject);
230 procedure FavoriteTreeViewNewFolderActionExecute(Sender: TObject);
231 procedure FavoriteTreeViewDeleteActionExecute(Sender: TObject);
232 procedure FavoriteTreeViewBrowseFolderActionExecute(Sender: TObject);
233 procedure FavoriteTreeViewReloadActionExecute(Sender: TObject);
234 procedure FavoriteTreeViewURLCopyActionExecute(Sender: TObject);
235 procedure FavoriteTreeViewNameCopyActionExecute(Sender: TObject);
236 procedure FavoriteTreeViewNameURLCopyActionExecute(Sender: TObject);
237 procedure FavoriteTreeViewLogDeleteActionExecute(Sender: TObject);
238 procedure FavoriteTreeViewBrowseThreadActionExecute(Sender: TObject);
239 procedure OnlyAHundredResActionExecute(Sender: TObject);
240 procedure OnlyKokoResActionExecute(Sender: TObject);
241 procedure OnlyNewResActionExecute(Sender: TObject);
242 procedure BrowserMaxActionExecute(Sender: TObject);
243 procedure BrowserMinActionExecute(Sender: TObject);
244 procedure ScrollTopActionExecute(Sender: TObject);
245 procedure ScrollLastActionExecute(Sender: TObject);
246 procedure ScrollNewActionExecute(Sender: TObject);
247 procedure ScrollKokoActionExecute(Sender: TObject);
248 procedure ScrollKokoActionUpdate(Sender: TObject);
249 procedure EditorActionExecute(Sender: TObject);
250 procedure IEActionExecute(Sender: TObject);
251 procedure ShowThreadActionExecute(Sender: TObject);
252 procedure ShowBoardActionExecute(Sender: TObject);
253 procedure URLCopyActionExecute(Sender: TObject);
254 procedure NameCopyActionExecute(Sender: TObject);
255 procedure NameURLCopyActionExecute(Sender: TObject);
256 procedure ItemReloadActionExecute(Sender: TObject);
257 procedure BrowserTabCloseActionExecute(Sender: TObject);
258 procedure BrowserTabCloseActionUpdate(Sender: TObject);
259 procedure NotSelectTabCloseActionExecute(Sender: TObject);
260 procedure NotSelectTabCloseActionUpdate(Sender: TObject);
261 procedure AllTabCloseActionExecute(Sender: TObject);
262 procedure ActiveLogDeleteActionExecute(Sender: TObject);
263 procedure LeftmostTabSelectActionExecute(Sender: TObject);
264 procedure LeftmostTabSelectActionUpdate(Sender: TObject);
265 procedure LeftTabSelectActionExecute(Sender: TObject);
266 procedure RightTabSelectActionExecute(Sender: TObject);
267 procedure RightTabSelectActionUpdate(Sender: TObject);
268 procedure RightmostTabSelectActionExecute(Sender: TObject);
269 procedure ThreadFavoriteAddActionExecute(Sender: TObject);
270 procedure ThreadFavoriteAddActionUpdate(Sender: TObject);
271 procedure SelectResActionExecute(Sender: TObject);
272 procedure AllResActionExecute(Sender: TObject);
273 procedure ResRangeActionExecute(Sender: TObject);
274 procedure UpBoardActionExecute(Sender: TObject);
275 procedure JumpToNumOfResActionExecute(Sender: TObject);
276 procedure RightTabCloseActionExecute(Sender: TObject);
277 procedure RightTabCloseActionUpdate(Sender: TObject);
278 procedure LeftTabCloseActionExecute(Sender: TObject);
279 procedure DataModuleCreate(Sender: TObject);
280 procedure SearchActionExecute(Sender: TObject);
281 procedure OptionActionExecute(Sender: TObject);
282 procedure RoundActionExecute(Sender: TObject);
283 procedure KeySettingActionExecute(Sender: TObject);
284 procedure KotehanActionExecute(Sender: TObject);
285 procedure ToolBarSettingActionExecute(Sender: TObject);
286 procedure MuteActionExecute(Sender: TObject);
287 procedure TreeSelectBoradReloadExecute(Sender: TObject);
288 procedure TreeSelectThreadReloadExecute(Sender: TObject);
289 procedure TreeSelectURLCopyExecute(Sender: TObject);
290 procedure TreeSelectNameURLCopyExecute(Sender: TObject);
291 procedure TreeSelectFavoriteAddActionExecute(Sender: TObject);
292 procedure TreeSelectSearchBoardNameExecute(Sender: TObject);
293 procedure TreeSelectNameCopyExecute(Sender: TObject);
294 procedure LoginActionExecute(Sender: TObject);
295 procedure NewBoardActionExecute(Sender: TObject);
296 procedure LogDeleteActionExecute(Sender: TObject);
297 procedure LogDeleteActionUpdate(Sender: TObject);
298 procedure SelectTextClearActionExecute(Sender: TObject);
299 procedure NameTextClearActionExecute(Sender: TObject);
300 procedure MailTextClearActionExecute(Sender: TObject);
301 procedure ExitActionExecute(Sender: TObject);
302 procedure ExportFavoriteFileBeforeExecute(Sender: TObject);
303 procedure ExportFavoriteFileAccept(Sender: TObject);
304 procedure SelectItemSaveForHTMLExecute(Sender: TObject);
305 procedure SelectItemSaveForDatExecute(Sender: TObject);
306 procedure TabsSaveActionExecute(Sender: TObject);
307 procedure TabsOpenActionExecute(Sender: TObject);
308 procedure TabAutoSaveActionExecute(Sender: TObject);
309 procedure TabAutoLoadActionExecute(Sender: TObject);
310 procedure BeLogInOutActionExecute(Sender: TObject);
311 procedure BeLogInOutActionUpdate(Sender: TObject);
312 procedure KokomadeActionExecute(Sender: TObject);
313 procedure ZenbuActionExecute(Sender: TObject);
314 procedure KokoResActionExecute(Sender: TObject);
315 procedure KoreCopyExecute(Sender: TObject);
316 procedure SameIDResAnchorActionExecute(Sender: TObject);
317 procedure IndividualAbon1ActionExecute(Sender: TObject);
318 procedure IndividualAbon0ActionExecute(Sender: TObject);
319 procedure AntiIndividualAbonActionExecute(Sender: TObject);
320 procedure AntiIndividualAbonDlgActionExecute(Sender: TObject);
321 procedure IndividualAbonID1ActionExecute(Sender: TObject);
322 procedure IndividualAbonID0ActionExecute(Sender: TObject);
323 procedure GikoNaviWebPageActionExecute(Sender: TObject);
324 procedure MonazillaWebPageActionExecute(Sender: TObject);
325 procedure BBS2chWebPageActionExecute(Sender: TObject);
326 procedure GikoFolderOpenActionExecute(Sender: TObject);
327 procedure AboutActionExecute(Sender: TObject);
328 procedure GikoHelpActionExecute(Sender: TObject);
329 procedure WikiFAQWebPageActionExecute(Sender: TObject);
330 procedure ListNumberVisibleActionExecute(Sender: TObject);
331 procedure UpFolderActionExecute(Sender: TObject);
332 procedure UpFolderActionUpdate(Sender: TObject);
333 procedure IconStyleExecute(Sender: TObject);
334 procedure AllItemActionExecute(Sender: TObject);
335 procedure LogItemActionExecute(Sender: TObject);
336 procedure NewItemActionExecute(Sender: TObject);
337 procedure ThreadRangeActionExecute(Sender: TObject);
338 procedure SelectItemActionExecute(Sender: TObject);
339 procedure ThreadEditorActionExecute(Sender: TObject);
340 procedure BoardIEActionExecute(Sender: TObject);
341 procedure SelectItemURLCopyActionExecute(Sender: TObject);
342 procedure SelectItemURLCopyActionUpdate(Sender: TObject);
343 procedure SelectItemNameCopyActionExecute(Sender: TObject);
344 procedure SelectItemNameCopyActionUpdate(Sender: TObject);
345 procedure SelectItemNameURLCopyActionExecute(Sender: TObject);
346 procedure SelectListReloadActionExecute(Sender: TObject);
347 procedure SelectListReloadActionUpdate(Sender: TObject);
348 procedure SelectThreadReloadActionExecute(Sender: TObject);
349 procedure SelectThreadReloadActionUpdate(Sender: TObject);
350 procedure SelectReservActionExecute(Sender: TObject);
351 procedure SelectReservActionUpdate(Sender: TObject);
352 procedure SelectNewRoundNameExecute(Sender: TObject);
353 procedure SelectDeleteRoundExecute(Sender: TObject);
354 procedure BoardFavoriteAddActionExecute(Sender: TObject);
355 procedure BoardFavoriteAddActionUpdate(Sender: TObject);
356 procedure LogFolderOpenActionExecute(Sender: TObject);
357 procedure LogFolderOpenActionUpdate(Sender: TObject);
358 procedure BrowsBoradHeadActionExecute(Sender: TObject);
359 procedure SortActiveColumnActionExecute(Sender: TObject);
360 procedure SortNextColumnActionExecute(Sender: TObject);
361 procedure SortPrevColumnActionExecute(Sender: TObject);
362 procedure StdToolBarVisibleActionExecute(Sender: TObject);
363 procedure AddressBarVisibleActionExecute(Sender: TObject);
364 procedure LinkBarVisibleActionExecute(Sender: TObject);
365 procedure ListToolBarVisibleActionExecute(Sender: TObject);
366 procedure ListNameBarVisibleActionExecute(Sender: TObject);
367 procedure BrowserToolBarVisibleActionExecute(Sender: TObject);
368 procedure BrowserNameBarVisibleActionExecute(Sender: TObject);
369 procedure MsgBarVisibleActionExecute(Sender: TObject);
370 procedure MsgBarCloseActionExecute(Sender: TObject);
371 procedure StatusBarVisibleActionExecute(Sender: TObject);
372 procedure CabinetBBSActionExecute(Sender: TObject);
373 procedure CabinetHistoryActionExecute(Sender: TObject);
374 procedure CabinetFavoriteActionExecute(Sender: TObject);
375 procedure CabinetVisibleActionExecute(Sender: TObject);
376 procedure CabinetCloseActionExecute(Sender: TObject);
377 procedure LargeIconActionExecute(Sender: TObject);
378 procedure SmallIconActionExecute(Sender: TObject);
379 procedure ListIconActionExecute(Sender: TObject);
380 procedure DetailIconActionExecute(Sender: TObject);
381 procedure StopActionExecute(Sender: TObject);
382 procedure ArrangeActionExecute(Sender: TObject);
383 procedure PaneInitActionExecute(Sender: TObject);
384 procedure BrowserTabVisibleActionExecute(Sender: TObject);
385 procedure BrowserTabTopActionExecute(Sender: TObject);
386 procedure BrowserTabBottomActionExecute(Sender: TObject);
387 procedure BrowserTabTabStyleActionExecute(Sender: TObject);
388 procedure BrowserTabButtonStyleActionExecute(Sender: TObject);
389 procedure BrowserTabFlatStyleActionExecute(Sender: TObject);
390 procedure SetFocusForBrowserActionExecute(Sender: TObject);
391 procedure SetFocusForBrowserActionUpdate(Sender: TObject);
392 procedure SetFocusForThreadListActionExecute(Sender: TObject);
393 procedure SetFocusForCabinetActionExecute(Sender: TObject);
394 procedure SetFocusForCabinetActionUpdate(Sender: TObject);
395 procedure ThreadlistMaxAndFocusActionExecute(Sender: TObject);
396 procedure BrowserMaxAndFocusActionExecute(Sender: TObject);
397 procedure UnSelectedListViewActionExecute(Sender: TObject);
398 procedure KidokuActionExecute(Sender: TObject);
399 procedure MidokuActionExecute(Sender: TObject);
400 procedure AllSelectActionExecute(Sender: TObject);
401 procedure AllSelectActionUpdate(Sender: TObject);
402 procedure ThreadSizeCalcForFileActionExecute(Sender: TObject);
403 procedure SetInputAssistActionExecute(Sender: TObject);
404 procedure OpenFindDialogActionExecute(Sender: TObject);
405 procedure ArchiveItemActionExecute(Sender: TObject);
406 procedure LiveItemActionExecute(Sender: TObject);
407 procedure FavoriteTreeViewItemNameCopyActionExecute(Sender: TObject);
410 procedure ClearResFilter;
411 procedure SetResRange(range: Integer);
412 procedure SetThreadAreaHorNormal;
413 procedure SetThreadAreaHorizontal(gls : TGikoListState);
414 procedure SetThreadAreaVerNormal;
415 procedure SetThreadAreaVertical(gls : TGikoListState);
416 procedure SetThreadReadProperty(read: Boolean);
417 procedure SelectThreadSaveToFile(dat: Boolean);
418 function GetSortProperties(List: TObject;var vSortOrder: Boolean): Boolean;
419 procedure RecalcThreadSize(limit : Integer);
420 procedure ClearSelectComboBox;
423 procedure RepaintStatusBar;
425 { Published
\90é
\8c¾ }
426 //! TAction
\82ÅGetActiveContent
\82ªnil
\88È
\8aO
\82Å
\97L
\8cø
\82É
\82È
\82é
427 procedure DependActiveCntentActionUpdate(Sender: TObject);
428 //! 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é
429 procedure DependActiveCntentLogActionUpdate(Sender: TObject);
430 //! TAction
\82ÅActiveList
\82ªTBoard
\82Å
\97L
\8cø
\82É
\82È
\82é
431 procedure DependActiveListTBoardActionUpdate(Sender: TObject);
441 Windows, Math, Clipbrd,
442 Giko, GikoSystem, GikoUtil, BoardGroup,
443 FavoriteArrange, Favorite, MojuUtils,
444 Editor, ListSelect, Search, Option, Round,
445 KeySetting, Gesture, Kotehan, ToolBarSetting,
446 ToolBarUtil, NewBoard, HTMLCreate, IndividualAbon,
447 GikoBayesian, About, ShellAPI,
448 RoundName, RoundData, Menus, ListViewUtils,
449 ThreadControl, GikoMessage, InputAssist;
453 // *************************************************************************
454 //! TAction
\82ÅGetActiveContent
\82ªnil
\88È
\8aO
\82Å
\97L
\8cø
\82É
\82È
\82é
455 // *************************************************************************
456 procedure TGikoDM.DependActiveCntentActionUpdate(Sender: TObject);
458 TAction(Sender).Enabled := (GikoForm.GetActiveContent <> nil);
460 // *************************************************************************
461 //! TAction
\82ÅGetActiveContent
\82ªnil
\88È
\8aO
\82©
\82Â
\83\8d\83O
\82ð
\8e\9d\82Á
\82Ä
\82¢
\82é
462 // *************************************************************************
463 procedure TGikoDM.DependActiveCntentLogActionUpdate(Sender: TObject);
465 TAction(Sender).Enabled := (GikoForm.GetActiveContent <> nil)
466 and (GikoForm.GetActiveContent.IsLogFile);
468 // *************************************************************************
469 //! TAction
\82ÅActiveList
\82ªTBoard
\82Å
\97L
\8cø
\82É
\82È
\82é
470 // *************************************************************************
471 procedure TGikoDM.DependActiveListTBoardActionUpdate(Sender: TObject);
473 TAction(Sender).Enabled := (GikoForm.GetActiveList is TBoard);
475 // *************************************************************************
476 //! NG
\83\8f\81[
\83h
\95Ò
\8fW
477 // *************************************************************************
478 procedure TGikoDM.EditNGActionExecute(Sender: TObject);
480 //
\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
481 GikoSys.FAbon.EditNGwords;
483 // *************************************************************************
484 //! NG
\83\8f\81[
\83h
\93Ç
\82Ý
\8d\9e\82Ý
\81i
\8dÄ
\93Ç
\82Ý
\8d\9e\82Ý
\81j
485 // *************************************************************************
486 procedure TGikoDM.ReloadActionExecute(Sender: TObject);
488 //
\83\8a\83\8d\81[
\83h
\82ð
\8eÀ
\8ds
\81@
\8e¸
\94s
\82µ
\82½
\82ç
\83\81\83b
\83Z
\81[
\83W
\8fo
\97Í
489 if GikoSys.FAbon.ReLoadFromNGwordFile =false then begin
490 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½', '
\83G
\83\89\81[', MB_OK or MB_ICONEXCLAMATION);
492 //
\91S
\82Ä
\82Ì
\83^
\83u
\82É
\8dÄ
\95`
\89æ
\82ð
\90Ý
\92è
493 GikoForm.RepaintAllTabsBrowser();
496 // *************************************************************************
497 //! NG
\83\8f\81[
\83h
\93Ç
\82Ý
\8d\9e\82Ý
\81i
\88ê
\82Â
\8cã
\82ë
\81j
498 // *************************************************************************
499 procedure TGikoDM.GoFowardActionExecute(Sender: TObject);
501 //
\88ê
\82Â
\8cã
\82ë
\82Ì
\93Ç
\82Ý
\8d\9e\82Ý
\81@
\8e¸
\94s
\82µ
\82½
\82ç
\83\81\83b
\83Z
\81[
\83W
\8fo
\97Í
502 if GikoSys.FAbon.GoBack =false then begin
503 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½', '
\83G
\83\89\81[', MB_OK or MB_ICONEXCLAMATION);
505 //
\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
507 //
\91S
\82Ä
\82Ì
\83^
\83u
\82É
\8dÄ
\95`
\89æ
\82ð
\90Ý
\92è
508 GikoForm.RepaintAllTabsBrowser();
511 // *************************************************************************
512 //! NG
\83\8f\81[
\83h
\93Ç
\82Ý
\8d\9e\82Ý
\81i
\88ê
\82Â
\91O
\81j
513 // *************************************************************************
514 procedure TGikoDM.GoBackActionExecute(Sender: TObject);
516 //
\88ê
\82Â
\8cã
\82ë
\82Ì
\93Ç
\82Ý
\8d\9e\82Ý
\81@
\8e¸
\94s
\82µ
\82½
\82ç
\83\81\83b
\83Z
\81[
\83W
\8fo
\97Í
517 if GikoSys.FAbon.GoForward =false then begin
518 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½', '
\83G
\83\89\81[', MB_OK or MB_ICONEXCLAMATION);
520 //
\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
522 //
\91S
\82Ä
\82Ì
\83^
\83u
\82É
\8dÄ
\95`
\89æ
\82ð
\90Ý
\92è
523 GikoForm.RepaintAllTabsBrowser();
526 // *************************************************************************
527 //! 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
528 // *************************************************************************
529 procedure TGikoDM.RepaintStatusBar;
533 //
\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
534 s := GikoSys.FAbon.NGwordname;
535 GikoForm.StatusBar.Panels.Items[GiKo.NGWORDNAME_PANEL].Text := s;
536 //
\83X
\83e
\81[
\83^
\83X
\82Ì
\95\
\8e¦
\83T
\83C
\83Y
\82Ì
\83\8a\83T
\83C
\83Y
537 GikoForm.StatusBar.Panels[GiKo.NGWORDNAME_PANEL].Width
538 := Max(GikoForm.StatusBar.Canvas.TextWidth(s), 100);
539 GikoForm.StatusBarResize(nil);
541 // *************************************************************************
542 //!
\83A
\83h
\83\8c\83X
\83o
\81[
\82É
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83A
\83h
\83\8c\83X
\82Ö
\88Ú
\93®
\82·
\82é
543 // *************************************************************************
544 procedure TGikoDM.MoveToActionExecute(Sender: TObject);
549 //
\83A
\83h
\83\8c\83X
\83R
\83\93\83{
\83{
\83b
\83N
\83X
\82©
\82çURL
\82ð
\8eæ
\93¾
550 URL := Trim(GikoForm.AddressComboBox.Text);
552 GikoForm.MoveToURL(URL);
553 //
\88È
\89º
\81A
\97\9a\97ð
\82Ì
\8f\88\97\9d
554 idx := GikoForm.AddressComboBox.Items.IndexOf(URL);
555 if idx = -1 then begin
556 GikoForm.AddressComboBox.Items.Insert(0, URL);
557 if GikoForm.AddressComboBox.Items.Count > GikoSys.Setting.AddressHistoryCount then
558 GikoForm.AddressComboBox.Items.Delete(GikoForm.AddressComboBox.Items.Count - 1);
560 GikoForm.AddressComboBox.Items.Delete(idx);
561 GikoForm.AddressComboBox.Items.Insert(0, URL);
564 // *************************************************************************
565 //!
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\92Ç
\89Á
\83_
\83C
\83A
\83\8d\83O
\82ð
\8aJ
\82
566 // *************************************************************************
567 procedure TGikoDM.FavoriteAddActionExecute(Sender: TObject);
569 GikoForm.ShowFavoriteAddDialog(GikoForm.GetActiveContent);
571 // *************************************************************************
572 //!
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\90®
\97\9d\83_
\83C
\83A
\83\8d\83O
\82ð
\8aJ
\82
573 // *************************************************************************
574 procedure TGikoDM.FavoriteArrangeActionExecute(Sender: TObject);
576 Dlg: TFavoriteArrangeDialog;
578 Dlg := TFavoriteArrangeDialog.Create(GikoForm);
584 //
\83\8a\83\93\83N
\83o
\81[
\82É
\8dX
\90V
\82ð
\93`
\82¦
\82é
585 PostMessage( GikoForm.Handle, USER_SETLINKBAR, 0, 0 );
587 // *************************************************************************
588 //!
\83c
\83\8a\81[
\82ð
\91S
\82Ä
\95Â
\82¶
\82é
589 // *************************************************************************
590 procedure TGikoDM.FavoriteTreeViewCollapseActionExecute(Sender: TObject);
594 node := GikoForm.FavoriteTreeView.Items.GetFirstNode;
596 //
\83m
\81[
\83h
\82ª
\91±
\82
\8cÀ
\82è
\81@
\83m
\81[
\83h
\82ð
\8fk
\8f¬
\82³
\82¹
\82é
597 while node <> nil do begin
598 if node.HasChildren then
599 node.Expanded := False;
600 node := node.GetNext;
605 // *************************************************************************
606 //!
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\96¼
\91O
\82ð
\95Ò
\8fW
\82·
\82é
607 // *************************************************************************
608 procedure TGikoDM.FavoriteTreeViewRenameActionExecute(Sender: TObject);
613 if GikoForm.ClickNode = nil then
615 if GikoForm.ClickNode.IsFirstNode then
617 if GikoForm.ClickNode.Text = Favorite.FAVORITE_LINK_NAME then
619 GikoForm.FavoriteTreeView.ReadOnly := False;
620 if (GikoForm.TreeType = gttFavorite) and (GikoForm.CabinetPanel.Visible) then begin
621 node := GikoForm.ClickNode.Parent;
622 while node <> nil do begin
623 node.Expanded := True;
626 GikoForm.ClickNode.EditText;
628 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 );
630 //
\8dX
\90V
\82µ
\82½
\82±
\82Æ
\82ð
\8b³
\82¦
\82é
631 FavoriteDM.Modified := true;
634 // *************************************************************************
635 //!
\90V
\82µ
\82
\82¨
\8bC
\82É
\93ü
\82è
\82É
\83t
\83H
\83\8b\83_
\82ð
\8dì
\90¬
\82·
\82é
636 // *************************************************************************
637 procedure TGikoDM.FavoriteTreeViewNewFolderActionExecute(Sender: TObject);
639 NewFavFolder: TFavoriteFolder;
643 if GikoForm.ClickNode = nil then
647 if not (TObject(GikoForm.ClickNode.Data) is TFavoriteFolder) then begin
648 GikoForm.FavoriteTreeView.Selected := GikoForm.ClickNode.Parent;
649 GikoForm.ClickNode := GikoForm.ClickNode.Parent;
652 NewFavFolder := TFavoriteFolder.Create;
653 Node := GikoForm.FavoriteTreeView.Items.AddChildObject(GikoForm.ClickNode, '
\90V
\82µ
\82¢
\83t
\83H
\83\8b\83_', NewFavFolder);
654 Node.ImageIndex := 14;
655 Node.SelectedIndex := 14;
656 // FClickNode.Selected.Expanded := True;
657 GikoForm.FavoriteTreeView.Selected := Node;
658 GikoForm.ClickNode := Node;
659 //
\8dX
\90V
\82µ
\82½
\82±
\82Æ
\82ð
\8b³
\82¦
\82é
660 FavoriteDM.Modified := true;
661 FavoriteTreeViewRenameAction.Execute;
666 // *************************************************************************
667 //!
\82±
\82Ì
\82¨
\8bC
\82É
\93ü
\82è
\82ð
\8dí
\8f\9c\82·
\82é
668 // *************************************************************************
669 procedure TGikoDM.FavoriteTreeViewDeleteActionExecute(Sender: TObject);
671 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';
672 DEL_MSG = '
\81g^0
\81h
\82ð
\8dí
\8f\9c\82µ
\82Ü
\82·
\81B
\82æ
\82ë
\82µ
\82¢
\82Å
\82·
\82©
\81H';
673 DEL_TITLE = '
\8dí
\8f\9c\8am
\94F';
676 if GikoForm.ClickNode = nil then
678 if GikoForm.ClickNode.IsFirstNode then
680 if (GetKeyState( VK_SHIFT ) and $80000000) = 0 then begin
681 if GikoForm.ClickNode.Text = Favorite.FAVORITE_LINK_NAME then begin
682 if MsgBox(GikoForm.Handle, DEL_LINK_MSG, DEL_TITLE, MB_YESNO or MB_ICONWARNING or MB_DEFBUTTON2) <> ID_YES then
685 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
690 GikoForm.ClickNode.Delete;
691 //
\8dX
\90V
\82µ
\82½
\82±
\82Æ
\82ð
\8b³
\82¦
\82é
692 FavoriteDM.Modified := true;
697 // *************************************************************************
698 //!
\82±
\82Ì
\83t
\83H
\83\8b\83_
\82É
\93ü
\82Á
\82Ä
\82¢
\82é
\82¨
\8bC
\82É
\93ü
\82è
\82ð
\91S
\82Ä
\8aJ
\82
699 // *************************************************************************
700 procedure TGikoDM.FavoriteTreeViewBrowseFolderActionExecute(
703 GikoForm.FavoriteBrowseFolder( GikoForm.ClickNode );
705 // *************************************************************************
706 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\82¨
\8bC
\82É
\93ü
\82è
\82ð
\83_
\83E
\83\93\83\8d\81[
\83h
\82·
\82é
707 // *************************************************************************
708 procedure TGikoDM.FavoriteTreeViewReloadActionExecute(Sender: TObject);
710 FavThread: TFavoriteThreadItem;
711 FavBoard: TFavoriteBoardItem;
714 if (GikoForm.ClickNode = nil) then Exit;
716 shiftDown := GetAsyncKeyState(VK_SHIFT) = Smallint($8001);
718 if TObject( GikoForm.ClickNode.Data ) is TFavoriteThreadItem then begin
719 FavThread := TFavoriteThreadItem( GikoForm.ClickNode.Data );
720 if FavThread.Item <> nil then
721 GikoForm.DownloadContent(FavThread.Item, shiftDown);
722 end else if TObject( GikoForm.ClickNode.Data ) is TFavoriteBoardItem then begin
723 FavBoard := TFavoriteBoardItem( GikoForm.ClickNode.Data );
724 GikoForm.DownloadList(FavBoard.Item, shiftDown);
728 // *************************************************************************
729 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\82¨
\8bC
\82É
\93ü
\82è
\82ÌURL
\82ð
\83R
\83s
\81[
\82·
\82é
730 // *************************************************************************
731 procedure TGikoDM.FavoriteTreeViewURLCopyActionExecute(Sender: TObject);
734 if GikoForm.ClickNode = nil then Exit;
736 if (TObject(GikoForm.ClickNode.Data) is TFavoriteItem) then begin
737 Clipboard.AsText := TFavoriteItem( GikoForm.ClickNode.Data ).URL + #13#10;
740 // *************************************************************************
741 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\96¼
\91O
\82ð
\83R
\83s
\81[
\82·
\82é
742 // *************************************************************************
743 procedure TGikoDM.FavoriteTreeViewNameCopyActionExecute(Sender: TObject);
746 if GikoForm.ClickNode = nil then Exit;
748 if (TObject(GikoForm.ClickNode.Data) is TFavoriteItem) then begin
750 TFavoriteItem(GikoForm.ClickNode.Data).GetItemTitle + #13#10;
753 GikoForm.ClickNode.Text + #13#10;
757 // *************************************************************************
758 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\96¼
\91O
\82ÆURL
\82ð
\83R
\83s
\81[
\82·
\82é
759 // *************************************************************************
760 procedure TGikoDM.FavoriteTreeViewNameURLCopyActionExecute(
763 favItem : TFavoriteItem;
766 if GikoForm.ClickNode = nil then Exit;
768 if (TObject(GikoForm.ClickNode.Data) is TFavoriteItem) then begin
769 favItem := TFavoriteItem(GikoForm.ClickNode.Data);
770 Clipboard.AsText := favItem.GetItemTitle + #13#10 +
771 favItem.URL + #13#10;
775 // *************************************************************************
776 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\82¨
\8bC
\82É
\93ü
\82è
\83X
\83\8c\83b
\83h
\82ð
\8dí
\8f\9c\82·
\82é
777 // *************************************************************************
778 procedure TGikoDM.FavoriteTreeViewLogDeleteActionExecute(Sender: TObject);
780 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';
781 DEL_TITLE = '
\8dí
\8f\9c\8am
\94F';
783 ThreadItem: TThreadItem;
784 FavThread: TFavoriteThreadItem;
787 if GikoForm.ClickNode = nil then Exit;
788 if not (TObject(GikoForm.ClickNode.Data) is TFavoriteThreadItem) then Exit;
790 FavThread := TFavoriteThreadItem( GikoForm.ClickNode.Data );
791 ThreadItem := FavThread.Item;
794 if GikoSys.Setting.DeleteMsg then begin
795 if (GetKeyState( VK_SHIFT ) and $80000000) = 0 then
796 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
800 GikoForm.DeleteHistory(ThreadItem);
801 GikoForm.DeleteTab(ThreadItem);
802 ThreadItem.DeleteLogFile;
804 GikoForm.ListView.Refresh;
809 // *************************************************************************
810 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\83u
\83\89\83E
\83U
\82Å
\95\
\8e¦
\82·
\82é
811 // *************************************************************************
812 procedure TGikoDM.FavoriteTreeViewBrowseThreadActionExecute(
815 threadItem : TThreadItem;
818 if GikoForm.ClickNode = nil then Exit;
820 if (TObject(GikoForm.ClickNode.Data) is TFavoriteThreadItem) then begin
822 threadItem := TFavoriteThreadItem( GikoForm.ClickNode.Data ).Item;
823 if threadItem = nil then
825 GikoSys.OpenBrowser( threadItem.URL, gbtAuto );
829 //!
\83\8c\83X
\82Ì
\8di
\8d\9e\82Ý
\83t
\83B
\83\8b\83^
\81[
\82ð
\8bó
\82É
\82·
\82é
830 procedure TGikoDM.ClearResFilter;
832 FilterList : TStringList;
834 //
\83t
\83B
\83\8b\83^
\95¶
\8e\9a\97ñ
\82ð
\8bó
\82É
\82·
\82é
835 FilterList := TStringList.Create;
837 GikoSys.FSelectResFilter.LoadFromStringList( FilterList );
838 GikoSys.FSelectResFilter.Reverse := False;
842 GikoForm.SelectResWord := '';
844 // *************************************************************************
845 //!
\83\8c\83X
\82Ì
\95\
\8e¦
\94Í
\88Í
\82ð
\90Ý
\92è
\82·
\82é
846 // *************************************************************************
847 procedure TGikoDM.SetResRange(range: Integer);
849 if GikoSys.ResRange <> range then begin
850 GikoSys.ResRange := range;
851 //
\83t
\83B
\83\8b\83^
\95¶
\8e\9a\97ñ
\82ð
\8bó
\82É
\82·
\82é
853 GikoForm.RepaintAllTabsBrowser();
856 // *************************************************************************
857 //!
\8dÅ
\90V100
\83\8c\83X
\82Ì
\82Ý
\95\
\8e¦
858 // *************************************************************************
859 procedure TGikoDM.OnlyAHundredResActionExecute(Sender: TObject);
861 if (GikoForm.ActiveContent <> nil) and (GikoForm.ActiveContent.Browser <> nil)
862 and (GikoForm.ActiveContent.Browser.Busy) then Exit;
864 GikoForm.ResRangeMenuSelect := 100;
865 OnlyAHundredResAction.Checked := True;
866 //
\81@
\95\
\8e¦
\94Í
\88Í
\82ð
\90Ý
\92è
\82·
\82é
869 // *************************************************************************
870 //!
\96¢
\93Ç
\83\8c\83X
\82Ì
\82Ý
\95\
\8e¦
871 // *************************************************************************
872 procedure TGikoDM.OnlyKokoResActionExecute(Sender: TObject);
874 if (GikoForm.ActiveContent <> nil) and (GikoForm.ActiveContent.Browser <> nil)
875 and (GikoForm.ActiveContent.Browser.Busy) then Exit;
877 GikoForm.ResRangeMenuSelect := Ord( grrKoko );
878 OnlyKokoResAction.Checked := True;
880 //
\81@
\95\
\8e¦
\94Í
\88Í
\82ð
\90Ý
\92è
\82·
\82é
881 SetResRange(Ord( grrKoko ));
883 // *************************************************************************
884 //!
\90V
\92\85\83\8c\83X
\82Ì
\82Ý
\95\
\8e¦
885 // *************************************************************************
886 procedure TGikoDM.OnlyNewResActionExecute(Sender: TObject);
888 if (GikoForm.ActiveContent <> nil) and (GikoForm.ActiveContent.Browser <> nil)
889 and (GikoForm.ActiveContent.Browser.Busy) then Exit;
891 GikoForm.ResRangeMenuSelect := Ord( grrNew );
892 OnlyNewResAction.Checked := True;
894 //
\81@
\95\
\8e¦
\94Í
\88Í
\82ð
\90Ý
\92è
\82·
\82é
895 SetResRange(Ord( grrNew ));
897 // *************************************************************************
898 //!
\83X
\83\8c\83b
\83h
\95\
\8e¦
\83G
\83\8a\83A
\92Ê
\8fí
\95\
\8e¦
\82É
\82·
\82é
\92\8d)ListOrientation = gloHorizontal
\81@
899 // *************************************************************************
900 procedure TGikoDM.SetThreadAreaHorNormal;
902 //
\92Ê
\8fí
\95\
\8e¦
\82É
\82·
\82é
903 GikoForm.ViewPanel.Width := GikoForm.BrowserSizeWidth;
904 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_MAX;
905 BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_MIN;
906 GikoSys.Setting.ListWidthState := glsNormal;
908 // *************************************************************************
909 //!
\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@
910 // *************************************************************************
911 procedure TGikoDM.SetThreadAreaHorizontal(gls : TGikoListState);
913 if GikoSys.Setting.ListWidthState = glsNormal then
914 GikoForm.BrowserSizeWidth := GikoForm.ViewPanel.Width;
916 if (gls = glsMax) then begin
917 GikoForm.ViewPanel.Width := 1;
918 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_NORMAL;
919 BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_MIN;
920 GikoSys.Setting.ListWidthState := glsMax;
921 end else if (gls = glsMin) then begin
922 GikoForm.ViewPanel.Width := GikoForm.ThreadMainPanel.Width - 80;
923 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_MAX;
924 BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_NORMAL;
925 GikoSys.Setting.ListWidthState := glsMin;
928 // *************************************************************************
929 //!
\83X
\83\8c\83b
\83h
\95\
\8e¦
\83G
\83\8a\83A
\92Ê
\8fí
\95\
\8e¦
\82É
\82·
\82é
\92\8d)ListOrientation = gloVertical
930 // *************************************************************************
931 procedure TGikoDM.SetThreadAreaVerNormal;
933 //
\92Ê
\8fí
\95\
\8e¦
\82É
\82·
\82é
934 GikoForm.ViewPanel.Height := GikoForm.BrowserSizeHeight;
935 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_MAX;
936 BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_MIN;
937 GikoSys.Setting.ListHeightState := glsNormal;
939 // *************************************************************************
940 //!
\83X
\83\8c\83b
\83h
\95\
\8e¦
\83G
\83\8a\83A
\8dÅ
\91å/
\8dÅ
\8f¬
\95\
\8e¦
\82É
\82·
\82é
\92\8d)ListOrientation = gloVertical
941 // *************************************************************************
942 procedure TGikoDM.SetThreadAreaVertical(gls : TGikoListState);
944 if GikoSys.Setting.ListHeightState = glsNormal then
945 GikoForm.BrowserSizeHeight := GikoForm.ViewPanel.Height;
946 if (gls = glsMin) then begin
947 GikoForm.ViewPanel.Height := GikoForm.ThreadMainPanel.Height - GikoForm.BrowserCoolBar.Height - 7;
948 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_MAX;
949 BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_NORMAL;
950 GikoSys.Setting.ListHeightState := glsMin;
951 end else if (gls = glsMax) then begin
952 GikoForm.ViewPanel.Height := 1;
953 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_NORMAL;
954 BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_MIN;
955 GikoSys.Setting.ListHeightState := glsMax;
958 // *************************************************************************
959 //!
\83X
\83\8c\83b
\83h
\95\
\8e¦
\83G
\83\8a\83A
\82ð
\91å
\82«
\82
\95\
\8e¦
\82·
\82é
960 // *************************************************************************
961 procedure TGikoDM.BrowserMaxActionExecute(Sender: TObject);
963 if GikoSys.Setting.ListOrientation = gloHorizontal then begin
964 case GikoSys.Setting.ListWidthState of
966 //
\92Ê
\8fí
\95\
\8e¦
\82É
\82·
\82é
967 SetThreadAreaHorNormal;
969 glsMin, glsNormal: begin
970 //
\8dÅ
\91å
\95\
\8e¦
\82É
\82·
\82é
971 SetThreadAreaHorizontal(glsMax);
975 case GikoSys.Setting.ListHeightState of
977 //
\92Ê
\8fí
\95\
\8e¦
\82É
\82·
\82é
978 SetThreadAreaVerNormal;
980 glsMin, glsNormal: begin
981 //
\8dÅ
\91å
\95\
\8e¦
\82É
\82·
\82é
982 SetThreadAreaVertical(glsMax);
987 // *************************************************************************
988 //!
\83X
\83\8c\83b
\83h
\95\
\8e¦
\83G
\83\8a\83A
\82ð
\8f¬
\82³
\82
\95\
\8e¦
\82·
\82é
989 // *************************************************************************
990 procedure TGikoDM.BrowserMinActionExecute(Sender: TObject);
992 if GikoSys.Setting.ListOrientation = gloHorizontal then begin
993 case GikoSys.Setting.ListWidthState of
994 glsMax, glsNormal: begin
995 //
\8dÅ
\8f¬
\95\
\8e¦
\82É
\82·
\82é
996 SetThreadAreaHorizontal(glsMin);
999 //
\92Ê
\8fí
\95\
\8e¦
\82É
\82·
\82é
1000 SetThreadAreaHorNormal;
1004 case GikoSys.Setting.ListHeightState of
1005 glsMax, glsNormal: begin
1006 //
\8dÅ
\8f¬
\95\
\8e¦
\82É
\82·
\82é
1007 SetThreadAreaVertical(glsMin);
1010 //
\92Ê
\8fí
\95\
\8e¦
\82É
\82·
\82é
1011 SetThreadAreaVerNormal;
1016 // *************************************************************************
1017 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82Ì
\90æ
\93ª
\82Ö
\88Ú
\93®
\82·
\82é
1018 // *************************************************************************
1019 procedure TGikoDM.ScrollTopActionExecute(Sender: TObject);
1021 GikoForm.BrowserMovement('top');
1023 // *************************************************************************
1024 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82Ì
\8dÅ
\8cã
\82Ö
\88Ú
\93®
\82·
\82é
1025 // *************************************************************************
1026 procedure TGikoDM.ScrollLastActionExecute(Sender: TObject);
1028 GikoForm.BrowserMovement('bottom');
1030 // *************************************************************************
1031 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82Ì
\90V
\92\85\82Ö
\88Ú
\93®
\82·
\82é
1032 // *************************************************************************
1033 procedure TGikoDM.ScrollNewActionExecute(Sender: TObject);
1035 GikoForm.BrowserMovement('new');
1037 // *************************************************************************
1038 //!
\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é
1039 // *************************************************************************
1040 procedure TGikoDM.ScrollKokoActionExecute(Sender: TObject);
1042 GikoForm.BrowserMovement('koko');
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é
\82ÌUpdate
\83C
\83x
\83\93\83g
1046 // *************************************************************************
1047 procedure TGikoDM.ScrollKokoActionUpdate(Sender: TObject);
1049 ScrollKokoAction.Enabled := (GikoForm.GetActiveContent <> nil)
1050 and (GikoForm.GetActiveContent.IsLogFile)
1051 and (GikoForm.GetActiveContent.Kokomade <> -1);
1053 // *************************************************************************
1054 //!
\83\8c\83X
\8f\91\82«
\8d\9e\82Ý
\83E
\83B
\83\93\83h
\83E
\82ð
\95\
\8e¦
\82·
\82é
1055 // *************************************************************************
1056 procedure TGikoDM.EditorActionExecute(Sender: TObject);
1058 Editor: TEditorForm;
1061 Item := GikoForm.GetActiveContent;
1062 if Item = nil then Exit;
1063 Editor := TEditorForm.Create(GikoForm.GetMainForm);
1064 Editor.SetThreadItem(Item);
1066 Editor.BodyEdit.SetFocus;
1068 // *************************************************************************
1069 //!
\83X
\83\8c\82ð
\83u
\83\89\83E
\83U
\82Å
\95\
\8e¦
\82·
\82é
1070 // *************************************************************************
1071 procedure TGikoDM.IEActionExecute(Sender: TObject);
1073 ShowThreadAction.Execute;
1075 // *************************************************************************
1076 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\83u
\83\89\83E
\83U
\82Å
\95\
\8e¦
\82·
\82é
1077 // *************************************************************************
1078 procedure TGikoDM.ShowThreadActionExecute(Sender: TObject);
1080 ThreadItem: TThreadItem;
1082 ThreadItem := GikoForm.GetActiveContent;
1083 if ThreadItem = nil then Exit;
1084 GikoSys.OpenBrowser(ThreadItem.URL, gbtAuto);
1086 // *************************************************************************
1087 //!
\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é
1088 // *************************************************************************
1089 procedure TGikoDM.ShowBoardActionExecute(Sender: TObject);
1091 ThreadItem: TThreadItem;
1093 ThreadItem := GikoForm.GetActiveContent;
1094 if ThreadItem = nil then Exit;
1095 GikoSys.OpenBrowser(ThreadItem.ParentBoard.URL, gbtAuto);
1097 // *************************************************************************
1098 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ÌURL
\82ð
\83R
\83s
\81[
\82·
\82é
1099 // *************************************************************************
1100 procedure TGikoDM.URLCopyActionExecute(Sender: TObject);
1105 if TObject(GikoForm.GetActiveContent) is TBoard then
1106 s := s + TBoard(GikoForm.GetActiveContent).URL + #13#10
1107 else if TObject(GikoForm.GetActiveContent) is TThreadItem then
1108 s := s + TThreadItem(GikoForm.GetActiveContent).URL + #13#10;
1110 Clipboard.AsText := s;
1112 // *************************************************************************
1113 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\96¼
\82ð
\83R
\83s
\81[
\82·
\82é
1114 // *************************************************************************
1115 procedure TGikoDM.NameCopyActionExecute(Sender: TObject);
1120 if TObject(GikoForm.GetActiveContent) is TBoard then
1121 s := s + TBoard(GikoForm.GetActiveContent).Title + #13#10
1122 else if TObject(GikoForm.GetActiveContent) is TThreadItem then
1123 s := s + TThreadItem(GikoForm.GetActiveContent).Title + #13#10;
1125 Clipboard.AsText := s;
1127 // *************************************************************************
1128 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\96¼
\82ÆURL
\82ð
\83R
\83s
\81[
\82·
\82é
1129 // *************************************************************************
1130 procedure TGikoDM.NameURLCopyActionExecute(Sender: TObject);
1135 if TObject(GikoForm.GetActiveContent) is TBoard then
1136 s := s + TBoard(GikoForm.GetActiveContent).Title + #13#10 + TBoard(GikoForm.GetActiveContent).URL + #13#10
1137 else if TObject(GikoForm.GetActiveContent) is TThreadItem then
1138 s := s + TThreadItem(GikoForm.GetActiveContent).Title + #13#10 + TThreadItem(GikoForm.GetActiveContent).URL + #13#10;
1140 Clipboard.AsText := s;
1142 // *************************************************************************
1143 //!
\95\
\8e¦
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\83_
\83E
\83\93\83\8d\81[
\83h
\82·
\82é
1144 // *************************************************************************
1145 procedure TGikoDM.ItemReloadActionExecute(Sender: TObject);
1147 ThreadItem: TThreadItem;
1150 ThreadItem := GikoForm.GetActiveContent;
1151 shiftDown := GetAsyncKeyState(VK_SHIFT) = Smallint($8001);
1152 if ThreadItem <> nil then
1153 GikoForm.DownloadContent(ThreadItem, shiftDown);
1155 // *************************************************************************
1156 //!
\8c»
\8dÝ
\8aJ
\82¢
\82Ä
\82¢
\82é
\83^
\83u
\82ð
\95Â
\82¶
\82é
1157 // *************************************************************************
1158 procedure TGikoDM.BrowserTabCloseActionExecute(Sender: TObject);
1162 idx := GikoForm.BrowserTab.TabIndex;
1163 if idx <> -1 then begin
1164 if GikoForm.BrowserTab.Tabs.Objects[idx] <> nil then begin
1165 GikoForm.DeleteTab(TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[idx]));
1169 // *************************************************************************
1170 //!
\83^
\83u
\82ª
\82P
\82Â
\88È
\8fã
\82 \82ê
\82ª
\97L
\8cø
\82É
\82·
\82éUpdate
\83C
\83x
\83\93\83g
1171 // *************************************************************************
1172 procedure TGikoDM.BrowserTabCloseActionUpdate(Sender: TObject);
1174 TAction(Sender).Enabled := (GikoForm.BrowserTab.Tabs.Count > 0);
1176 // *************************************************************************
1177 //!
\8c»
\8dÝ
\8aJ
\82¢
\82Ä
\82¢
\82é
\83^
\83u
\88È
\8aO
\82ð
\95Â
\82¶
\82é
1178 // *************************************************************************
1179 procedure TGikoDM.NotSelectTabCloseActionExecute(Sender: TObject);
1184 idx := GikoForm.BrowserTab.TabIndex;
1185 if idx = -1 then Exit;
1186 GikoForm.BrowserTab.Tabs.BeginUpdate;
1187 for i := GikoForm.BrowserTab.Tabs.Count - 1 downto GikoForm.BrowserTab.TabIndex + 1 do begin
1188 TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[i]).Free;
1189 GikoForm.BrowserTab.Tabs.Delete(i);
1191 if idx > 0 then begin
1192 for i := GikoForm.BrowserTab.TabIndex - 1 downto 0 do begin
1193 TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[i]).Free;
1194 GikoForm.BrowserTab.Tabs.Delete(i);
1197 GikoForm.BrowserTab.Tabs.EndUpdate;
1199 // *************************************************************************
1200 //!
\83^
\83u
\82ª
\82Q
\82Â
\88È
\8fã
\82 \82ê
\82ª
\97L
\8cø
\82É
\82·
\82éUpdate
\83C
\83x
\83\93\83g
1201 // *************************************************************************
1202 procedure TGikoDM.NotSelectTabCloseActionUpdate(Sender: TObject);
1204 TAction(Sender).Enabled := (GikoForm.BrowserTab.Tabs.Count > 1);
1206 // *************************************************************************
1207 //!
\91S
\82Ä
\82Ì
\83^
\83u
\82ð
\95Â
\82¶
\82é
1208 // *************************************************************************
1209 procedure TGikoDM.AllTabCloseActionExecute(Sender: TObject);
1213 if GikoSys.Setting.ShowDialogForAllTabClose then
1214 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
1217 GikoForm.ActiveContent := nil;
1218 GikoForm.BrowserNullTab.Thread := nil;
1219 GikoForm.BrowserTab.OnChange := nil;
1220 GikoForm.BrowserTab.Tabs.BeginUpdate;
1221 for i := GikoForm.BrowserTab.Tabs.Count - 1 downto 0 do begin
1222 TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[i]).Free;
1224 GikoForm.BrowserTab.Tabs.Clear;
1225 GikoForm.BrowserTab.Tabs.EndUpdate;
1226 GikoForm.BrowserTab.OnChange := GikoForm.BrowserTabChange;
1227 GikoForm.SetContent(GikoForm.BrowserNullTab);
1228 GikoForm.Caption := CAPTION_NAME ;
1230 // *************************************************************************
1231 //!
\8c»
\8dÝ
\8aJ
\82¢
\82Ä
\82¢
\82é
\83^
\83u
\82Ì
\83X
\83\8c\83b
\83h
\82ð
\8dí
\8f\9c\82·
\82é
1232 // *************************************************************************
1233 procedure TGikoDM.ActiveLogDeleteActionExecute(Sender: TObject);
1235 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';
1236 DEL_TITLE = '
\8dí
\8f\9c\8am
\94F';
1239 ThreadItem: TThreadItem;
1241 idx := GikoForm.BrowserTab.TabIndex;
1242 if idx <> -1 then begin
1243 if GikoForm.BrowserTab.Tabs.Objects[idx] <> nil then begin
1244 ThreadItem := TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[idx]).Thread;
1245 if GikoSys.Setting.DeleteMsg then
1246 if (GetKeyState( VK_SHIFT ) and $80000000) = 0 then
1247 if MsgBox(GikoForm.Handle, StringReplace( DEL_MSG, '^0', ThreadItem.Title, [rfReplaceAll] ) , DEL_TITLE, MB_YESNO or MB_ICONWARNING or MB_DEFBUTTON2) <> ID_YES then
1249 GikoForm.DeleteTab(TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[idx]));
1250 ThreadItem.DeleteLogFile;
1251 if ThreadItem.ParentBoard = GikoForm.ActiveList then
1252 GikoForm.ListView.Refresh;
1256 // *************************************************************************
1257 //!
\88ê
\94Ô
\8d¶
\82Ì
\83^
\83u
\82ð
\91I
\91ð
\82·
\82é
1258 // *************************************************************************
1259 procedure TGikoDM.LeftmostTabSelectActionExecute(Sender: TObject);
1261 if GikoForm.BrowserTab.Tabs.Count > 0 then begin
1262 GikoForm.BrowserTab.TabIndex := 0;
1263 GikoForm.BrowserTab.OnChange(nil);
1266 // *************************************************************************
1267 //!
\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
1268 // *************************************************************************
1269 procedure TGikoDM.LeftmostTabSelectActionUpdate(Sender: TObject);
1271 TAction(Sender).Enabled := (GikoForm.BrowserTab.Tabs.Count > 0)
1272 and (GikoForm.BrowserTab.TabIndex <> 0);
1274 // *************************************************************************
1275 //!
\8d¶
\82Ì
\83^
\83u
\82ð
\91I
\91ð
\82·
\82é
1276 // *************************************************************************
1277 procedure TGikoDM.LeftTabSelectActionExecute(Sender: TObject);
1279 if GikoForm.BrowserTab.Tabs.Count > 0 then begin
1280 if GikoForm.BrowserTab.TabIndex = -1 then begin
1281 GikoForm.BrowserTab.TabIndex := 0;
1282 GikoForm.BrowserTab.OnChange(nil);
1283 end else if GikoForm.BrowserTab.TabIndex > 0 then begin
1284 GikoForm.BrowserTab.TabIndex := GikoForm.BrowserTab.TabIndex - 1;
1285 GikoForm.BrowserTab.OnChange(nil);
1289 // *************************************************************************
1290 //!
\89E
\82Ì
\83^
\83u
\82ð
\91I
\91ð
\82·
\82é
1291 // *************************************************************************
1292 procedure TGikoDM.RightTabSelectActionExecute(Sender: TObject);
1294 if GikoForm.BrowserTab.Tabs.Count > 0 then begin
1295 if GikoForm.BrowserTab.TabIndex = -1 then begin
1296 GikoForm.BrowserTab.TabIndex := GikoForm.BrowserTab.Tabs.Count - 1;
1297 GikoForm.BrowserTab.OnChange(nil);
1298 end else if GikoForm.BrowserTab.TabIndex < (GikoForm.BrowserTab.Tabs.Count - 1) then begin
1299 GikoForm.BrowserTab.TabIndex := GikoForm.BrowserTab.TabIndex + 1;
1300 GikoForm.BrowserTab.OnChange(nil);
1304 // *************************************************************************
1305 //!
\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
1306 // *************************************************************************
1307 procedure TGikoDM.RightTabSelectActionUpdate(Sender: TObject);
1309 TAction(Sender).Enabled := (GikoForm.BrowserTab.Tabs.Count > 0)
1310 and (GikoForm.BrowserTab.TabIndex <> GikoForm.BrowserTab.Tabs.Count - 1);
1312 // *************************************************************************
1313 //!
\88ê
\94Ô
\89E
\82Ì
\83^
\83u
\82ð
\91I
\91ð
\82·
\82é
1314 // *************************************************************************
1315 procedure TGikoDM.RightmostTabSelectActionExecute(Sender: TObject);
1317 if GikoForm.BrowserTab.Tabs.Count > 0 then begin
1318 GikoForm.BrowserTab.TabIndex := GikoForm.BrowserTab.Tabs.Count - 1;
1319 GikoForm.BrowserTab.OnChange(nil);
1322 // *************************************************************************
1323 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\82¨
\8bC
\82É
\93ü
\82è
\82É
\92Ç
\89Á
1324 // *************************************************************************
1325 procedure TGikoDM.ThreadFavoriteAddActionExecute(Sender: TObject);
1327 if TObject(GikoForm.ListView.Selected.Data) is TThreadItem then
1328 GikoForm.ShowFavoriteAddDialog(TObject(GikoForm.ListView.Selected.Data));
1330 // *************************************************************************
1331 //!
\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
1332 // *************************************************************************
1333 procedure TGikoDM.ThreadFavoriteAddActionUpdate(Sender: TObject);
1335 TAction(Sender).Enabled := (GikoForm.GetActiveList is TBoard)
1336 and (GikoForm.ListView.SelCount > 0);
1338 // *************************************************************************
1339 //!
\83\8c\83X
\82Ì
\93à
\97e
\82ð
\8di
\82è
\8d\9e\82Þ
1340 // *************************************************************************
1341 procedure TGikoDM.SelectResActionExecute(Sender: TObject);
1343 Dlg: TListSelectDialog;
1344 FilterList : TStringList;
1347 Dlg := TListSelectDialog.Create(GikoForm);
1349 Dlg.SelectComboBox.Items.Assign(GikoSys.Setting.SelectTextList);
1350 Dlg.SelectComboBox.Text := GikoForm.SelectResWord;
1352 if Dlg.ModalResult = mrOK then begin
1353 SelectResAction.Checked := True;
1354 if Length( Dlg.SelectComboBox.Text ) = 0 then begin
1355 //
\8bó
\93ü
\97Í
\82Å OK
\82Í
\8di
\82è
\8d\9e\82Ý
\89ð
\8f\9c\82Æ
\93¯
\88Ó
\8b`
1356 ResRangeAction.Execute;
1358 GikoSys.ResRange := Ord( grrSelect );
1360 //
\8dÅ
\8cã
\82É
\90Ý
\92è
\82µ
\82½
\82à
\82Ì
\82ð
\8ao
\82¦
\82Ä
\82¨
\82
1361 GikoForm.SelectResWord := Dlg.SelectComboBox.Text;
1363 //
\8c\9f\8dõ
\97\9a\97ð
\82Ì
\8dX
\90V
1364 idx := GikoSys.Setting.SelectTextList.IndexOf(Dlg.SelectComboBox.Text);
1366 GikoSys.Setting.SelectTextList.Delete(idx);
1367 GikoSys.Setting.SelectTextList.Insert(0, Dlg.SelectComboBox.Text);
1368 while Dlg.SelectComboBox.Items.Count > 100 do begin
1369 Dlg.SelectComboBox.Items.Delete(Dlg.SelectComboBox.Items.Count - 1);
1373 if GikoForm.SelectComboBoxPanel.Visible then
1374 GikoForm.SelectComboBox.Items.Assign( GikoSys.Setting.SelectTextList );
1378 //
\83t
\83B
\83\8b\83^
\82Ì
\90Ý
\92è
1379 FilterList := TStringList.Create;
1381 GikoSys.FSelectResFilter.Reverse := True;
1382 FilterList.Delimiter := ' '; //
\8bæ
\90Ø
\82è
\8eq
\82ð
\94¼
\8ap
\83X
\83y
\81[
\83X
\82É
\90Ý
\92è
1383 FilterList.DelimitedText := Dlg.SelectComboBox.Text;
1385 GikoSys.FSelectResFilter.LoadFromStringList( FilterList );
1389 GikoForm.RepaintAllTabsBrowser();
1392 //
\83L
\83\83\83\93\83Z
\83\8b
1393 if GikoSys.ResRange <> Ord( grrSelect ) then
1394 ResRangeAction.Execute;
1401 // *************************************************************************
1402 //!
\91S
\82Ä
\82Ì
\83\8c\83X
\82ð
\95\
\8e¦
\82·
\82é
1403 // *************************************************************************
1404 procedure TGikoDM.AllResActionExecute(Sender: TObject);
1406 if(GikoForm.ActiveContent <> nil) and (GikoForm.ActiveContent.Browser <> nil )
1407 and (GikoForm.ActiveContent.Browser.Busy) then Exit;
1409 GikoForm.ResRangeMenuSelect := Ord( grrAll );
1410 AllResAction.Checked := True;
1412 //
\81@
\95\
\8e¦
\94Í
\88Í
\82ð
\90Ý
\92è
\82·
\82é
1413 SetResRange(Ord( grrAll ));
1415 // *************************************************************************
1416 //!
\83\8c\83X
\82Ì
\95\
\8e¦
\94Í
\88Í
\82ð
\90Ý
\92è
1417 // *************************************************************************
1418 procedure TGikoDM.ResRangeActionExecute(Sender: TObject);
1420 case GikoForm.ResRangeMenuSelect of
1421 Ord( grrAll ): AllResAction.Execute;
1422 Ord( grrKoko ): OnlyKokoResAction.Execute;
1423 Ord( grrNew ): OnlyNewResAction.Execute;
1424 100: OnlyAHundredResAction.Execute;
1428 // *************************************************************************
1429 //!
\82±
\82Ì
\83X
\83\8c\83b
\83h
\82ð
\8aÜ
\82Þ
\83X
\83\8c\83b
\83h
\88ê
\97\97\82ð
\95\
\8e¦
1430 // *************************************************************************
1431 procedure TGikoDM.UpBoardActionExecute(Sender: TObject);
1433 GikoForm.SelectTreeNode( GikoForm.GetActiveContent.ParentBoard, True );
1435 // *************************************************************************
1436 //!
\8ew
\92è
\82µ
\82½
\94Ô
\8d\86\82Ì
\83\8c\83X
\82É
\94ò
\82Ô
1437 // *************************************************************************
1438 procedure TGikoDM.JumpToNumOfResActionExecute(Sender: TObject);
1444 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
1445 str := ZenToHan(str);
1446 res := StrToIntDef(str, -1);
1447 if (res > 0) and (res <= GikoForm.GetActiveContent.Count) then begin
1448 GikoForm.ActiveContent.Move(IntToStr(res));
1449 SetFocusForBrowserAction.Execute;
1450 end else if res > GikoForm.GetActiveContent.Count then begin
1451 GikoForm.ActiveContent.Move(IntToStr(GikoForm.GetActiveContent.Count));
1452 SetFocusForBrowserAction.Execute;
1456 // *************************************************************************
1457 //!
\83A
\83N
\83e
\83B
\83u
\82È
\83^
\83u
\82æ
\82è
\89E
\82ð
\95Â
\82¶
\82é
1458 // *************************************************************************
1459 procedure TGikoDM.RightTabCloseActionExecute(Sender: TObject);
1464 idx := GikoForm.BrowserTab.TabIndex;
1465 if idx = -1 then Exit;
1466 GikoForm.BrowserTab.Tabs.BeginUpdate;
1467 for i := GikoForm.BrowserTab.Tabs.Count - 1 downto idx + 1 do begin
1468 TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[i]).Free;
1469 GikoForm.BrowserTab.Tabs.Delete(i);
1471 GikoForm.BrowserTab.Tabs.EndUpdate;
1473 // *************************************************************************
1474 //!
\83^
\83u
\82Ì
\90\94\82ª
\82Q
\88È
\8fã
\82Å
\97L
\8cø
\82ÈUpdate
\83C
\83x
\83\93\83g
1475 // *************************************************************************
1476 procedure TGikoDM.RightTabCloseActionUpdate(Sender: TObject);
1478 TAction(Sender).Enabled := (GikoForm.BrowserTab.Tabs.Count > 1);
1480 // *************************************************************************
1481 //!
\83A
\83N
\83e
\83B
\83u
\82È
\83^
\83u
\82æ
\82è
\8d¶
\82ð
\95Â
\82¶
\82é
1482 // *************************************************************************
1483 procedure TGikoDM.LeftTabCloseActionExecute(Sender: TObject);
1488 idx := GikoForm.BrowserTab.TabIndex;
1489 if idx = -1 then Exit;
1490 GikoForm.BrowserTab.Tabs.BeginUpdate;
1491 if idx > 0 then begin
1492 for i := idx - 1 downto 0 do begin
1493 TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[i]).Free;
1494 GikoForm.BrowserTab.Tabs.Delete(i);
1497 GikoForm.BrowserTab.Tabs.EndUpdate;
1499 ////////////////////////////////
\83X
\83\8c\83b
\83h
\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
1500 procedure TGikoDM.DataModuleCreate(Sender: TObject);
1503 // *************************************************************************
1504 //!
\83\8d\83O
\8c\9f\8dõ
\83_
\83C
\83A
\83\8d\83O
\82ð
\95\
\8e¦
\82·
\82é
1505 // *************************************************************************
1506 procedure TGikoDM.SearchActionExecute(Sender: TObject);
1511 if GikoForm.SearchDialog = nil then begin
1512 if (GikoForm.GetActiveList is TCategory) or (GikoForm.GetActiveList is TBoard) then
1513 chk := GikoForm.GetActiveList
1517 GikoForm.SearchDialog := TSearchDialog.Create(GikoForm, chk);
1518 GikoForm.SearchDialog.SearchComboBox.Items.Assign( GikoSys.Setting.SelectTextList );
1522 GikoForm.SearchDialog.Show;
1526 // *************************************************************************
1527 //!
\83I
\83v
\83V
\83\87\83\93\83_
\83C
\83A
\83\8d\83O
\82ð
\95\
\8e¦
\82·
\82é
1528 // *************************************************************************
1529 procedure TGikoDM.OptionActionExecute(Sender: TObject);
1533 Dlg := TOptionDialog.Create(GikoForm);
1540 // *************************************************************************
1541 //!
\8f\84\89ñ
\83_
\83C
\83A
\83\8d\83O
\82ð
\95\
\8e¦
\82·
\82é
1542 // *************************************************************************
1543 procedure TGikoDM.RoundActionExecute(Sender: TObject);
1547 Dlg := TRoundDialog.Create(GikoForm);
1554 // *************************************************************************
1555 //!
\83L
\81[
\90Ý
\92è
\83_
\83C
\83A
\83\8d\83O
\82ð
\8aJ
\82
1556 // *************************************************************************
1557 procedure TGikoDM.KeySettingActionExecute(Sender: TObject);
1559 Dlg: TKeySettingForm;
1561 Dlg := TKeySettingForm.Create(GikoForm);
1563 if Dlg.ShowModal = mrOk then begin
1564 GikoSys.SaveKeySetting(GikoFormActionList, Setting.KEY_SETTING_FILE_NAME);
1565 GikoSys.SaveKeySetting(Dlg.EditorForm.ActionList, Setting.EKEY_SETTING_FILE_NAME);
1566 GikoSys.Setting.Gestures.SaveGesture( GikoSys.Setting.GetGestureFileName );
1571 MouseGesture.UnHook;
1572 MouseGesture.OnGestureStart := GikoForm.OnGestureStart;
1573 MouseGesture.OnGestureMove := GikoForm.OnGestureMove;
1574 MouseGesture.OnGestureEnd := GikoForm.OnGestureEnd;
1575 if GikoSys.Setting.GestureEnabled then begin
1576 GikoSys.Setting.Gestures.ClearGesture;
1577 GikoSys.Setting.Gestures.LoadGesture(
1578 GikoSys.Setting.GetGestureFileName, GikoFormActionList );
1579 MouseGesture.SetHook( GikoForm.Handle );
1583 // *************************************************************************
1584 //!
\83L
\81[
\90Ý
\92è
\83_
\83C
\83A
\83\8d\83O
\82ð
\8aJ
\82
1585 // *************************************************************************
1586 procedure TGikoDM.KotehanActionExecute(Sender: TObject);
1588 Dlg: TKotehanDialog;
1590 Dlg := TKotehanDialog.Create(GikoForm);
1597 // *************************************************************************
1598 //!
\83c
\81[
\83\8b\83o
\81[
\90Ý
\92è
\83_
\83C
\83A
\83\8d\83O
\82ð
\8aJ
\82
1599 // *************************************************************************
1600 procedure TGikoDM.ToolBarSettingActionExecute(Sender: TObject);
1602 Dlg: TToolBarSettingDialog;
1605 Dlg := TToolBarSettingDialog.Create(GikoForm, GikoFormActionList);
1607 Dlg.AddToolBar(GikoForm.StdToolBar, gttStandard);
1608 Dlg.AddToolBar(GikoForm.ListToolBar, gttList);
1609 Dlg.AddToolBar(GikoForm.BrowserToolBar, gttBrowser);
1610 case GikoForm.ToolBarSettingSender of
1611 tssMain: Dlg.ToolBarIndex := 0;
1612 tssList: Dlg.ToolBarIndex := 1;
1613 tssBrowser: Dlg.ToolBarIndex := 2;
1615 if Dlg.ShowModal = mrOK then begin
1616 GikoForm.SetToolBarPopup;
1618 //
\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é
1619 for i := 0 to GikoForm.MainCoolBar.Bands.Count - 1 do begin
1620 GikoForm.MainCoolBar.Bands[i].MinWidth :=
1621 GikoForm.MainCoolBar.Bands[i].MinWidth + 1;
1622 GikoForm.MainCoolBar.Bands[i].MinWidth :=
1623 GikoForm.MainCoolBar.Bands[i].MinWidth - 1;
1625 for i := 0 to GikoForm.ListCoolBar.Bands.Count - 1 do begin
1626 GikoForm.ListCoolBar.Bands[i].MinWidth :=
1627 GikoForm.ListCoolBar.Bands[i].MinWidth + 1;
1628 GikoForm.ListCoolBar.Bands[i].MinWidth :=
1629 GikoForm.ListCoolBar.Bands[i].MinWidth - 1;
1631 for i := 0 to GikoForm.BrowserCoolBar.Bands.Count - 1 do begin
1632 GikoForm.BrowserCoolBar.Bands[i].MinWidth :=
1633 GikoForm.BrowserCoolBar.Bands[i].MinWidth + 1;
1634 GikoForm.BrowserCoolBar.Bands[i].MinWidth :=
1635 GikoForm.BrowserCoolBar.Bands[i].MinWidth - 1;
1638 SaveToolBarSetting(GikoForm.StdToolBar);
1639 SaveToolBarSetting(GikoForm.ListToolBar);
1640 //ListToolBar
\82É
\82¢
\82é
\82©
\82à
\82µ
\82ê
\82È
\82¢
\8di
\8d\9e\82ÝComboBox
\82ð
\94z
\92u
1641 GikoForm.SetSelectComboBox;
1642 GikoForm.ResetBandInfo( GikoForm.ListCoolBar, GikoForm.ListToolBar );
1643 SaveToolBarSetting(GikoForm.BrowserToolBar);
1647 GikoForm.ToolBarSettingSender := tssNone;
1650 // *************************************************************************
1651 //!
\83~
\83\85\81[
\83g
1652 // *************************************************************************
1653 procedure TGikoDM.MuteActionExecute(Sender: TObject);
1655 GikoSys.Setting.Mute := not GikoSys.Setting.Mute;
1657 ////////////////////////////////
\83c
\81[
\83\8b\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
1658 // *************************************************************************
1659 //!
\83X
\83\8c\83b
\83h
\88ê
\97\97\82ð
\83_
\83E
\83\93\83\8d\81[
\83h
\82·
\82é
1660 // *************************************************************************
1661 procedure TGikoDM.TreeSelectBoradReloadExecute(Sender: TObject);
1664 TmpTreeNode: TTreeNode;
1666 TmpTreeNode := GikoForm.ClickNode;
1667 GikoForm.TreeView.Selected := GikoForm.ClickNode;
1670 if TObject(TmpTreeNode.Data) is TBoard then
1671 Board := TBoard(TmpTreeNode.Data)
1672 else if TObject(TmpTreeNode.Data) is TFavoriteBoardItem then
1673 Board := TFavoriteBoardItem(TmpTreeNode.Data).Item;
1675 if Board <> nil then
1676 GikoForm.DownloadList(Board);
1678 // *************************************************************************
1679 //!
\91I
\91ð
\82³
\82ê
\82½
\83X
\83\8c\83b
\83h
\82ð
\83_
\83E
\83\93\83\8d\81[
\83h
\82·
\82é
1680 // *************************************************************************
1681 procedure TGikoDM.TreeSelectThreadReloadExecute(Sender: TObject);
1683 ThreadItem: TThreadItem;
1684 TmpTreeNode: TTreeNode;
1686 TmpTreeNode := GikoForm.ClickNode;
1687 GikoForm.TreeView.Selected := GikoForm.ClickNode;
1690 if TObject(TmpTreeNode.Data) is TThreadItem then
1691 ThreadItem := TThreadItem(TmpTreeNode.Data)
1692 else if TObject(TmpTreeNode.Data) is TFavoriteThreadItem then
1693 ThreadItem := TFavoriteThreadItem(TmpTreeNode.Data).Item;
1695 if ThreadItem <> nil then
1696 GikoForm.DownloadContent(ThreadItem);
1698 // *************************************************************************
1699 //!
\91I
\91ð
\82³
\82ê
\82½
\94Â
\82ÌURL
\82ð
\83R
\83s
\81[
\82·
\82é
1700 // *************************************************************************
1701 procedure TGikoDM.TreeSelectURLCopyExecute(Sender: TObject);
1703 TmpTreeNode: TTreeNode;
1706 TmpTreeNode := GikoForm.ClickNode;
1707 GikoForm.TreeView.Selected := GikoForm.ClickNode;
1708 if TObject(TmpTreeNode.Data) is TBoard then begin
1709 s := TBoard(TmpTreeNode.Data).URL + #13#10;
1710 end else if TObject(TmpTreeNode.Data) is TFavoriteBoardItem then begin
1711 s := TFavoriteBoardItem(TmpTreeNode.Data).URL + #13#10;
1712 end else if (TObject(TmpTreeNode.Data) is TThreadItem) then begin
1713 s := TThreadItem(TmpTreeNode.Data).URL + #13#10;
1714 end else if TObject(TmpTreeNode.Data) is TFavoriteThreadItem then begin
1715 s := TFavoriteThreadItem(TmpTreeNode.Data).URL + #13#10;
1717 Clipboard.AsText := s;
1719 // *************************************************************************
1720 //!
\91I
\91ð
\82³
\82ê
\82½
\94Â
\82Ì
\96¼
\91O
\82ÆURL
\82ð
\83R
\83s
\81[
\82·
\82é
1721 // *************************************************************************
1722 procedure TGikoDM.TreeSelectNameURLCopyExecute(Sender: TObject);
1724 TmpTreeNode: TTreeNode;
1727 TmpTreeNode := GikoForm.ClickNode;
1728 GikoForm.TreeView.Selected := GikoForm.ClickNode;
1729 if TObject(TmpTreeNode.Data) is TBoard then begin
1730 s := TBoard(TmpTreeNode.Data).Title + #13#10 + TBoard(TmpTreeNode.Data).URL + #13#10;
1731 end else if TObject(TmpTreeNode.Data) is TFavoriteBoardItem then begin
1732 s := TFavoriteBoardItem(TmpTreeNode.Data).Item.Title + #13#10 + TFavoriteBoardItem(TmpTreeNode.Data).URL + #13#10;
1733 end else if (TObject(TmpTreeNode.Data) is TThreadItem) then begin
1734 s := TThreadItem(TmpTreeNode.Data).Title + #13#10 + TThreadItem(TmpTreeNode.Data).URL + #13#10;
1735 end else if TObject(TmpTreeNode.Data) is TFavoriteThreadItem then begin
1736 s := TFavoriteThreadItem(TmpTreeNode.Data).Item.Title + #13#10 + TFavoriteThreadItem(TmpTreeNode.Data).URL + #13#10;
1738 Clipboard.AsText := s;
1740 // *************************************************************************
1741 //!
\82¨
\8bC
\82É
\93ü
\82è
\82É
\92Ç
\89Á
\82·
\82é
1742 // *************************************************************************
1743 procedure TGikoDM.TreeSelectFavoriteAddActionExecute(Sender: TObject);
1745 GikoForm.ShowFavoriteAddDialog(TObject(GikoForm.ClickNode.Data));
1747 // *************************************************************************
1748 //!
\94Â
\96¼
\8c\9f\8dõ
1749 // *************************************************************************
1750 procedure TGikoDM.TreeSelectSearchBoardNameExecute(Sender: TObject);
1754 CurItem : TTreeNode;
1757 if InputQuery('
\94Â
\96¼
\8c\9f\8dõ','
\94Â
\96¼
\82Ì
\93ü
\97Í',s) then begin
1760 if GikoForm.TreeView.Selected = nil then
1761 CurItem := GikoForm.TreeView.Items.GetFirstNode
1763 CurItem := GikoForm.TreeView.Selected.GetNext;
1764 if CurItem = nil then
1765 CurItem := GikoForm.TreeView.Items.GetFirstNode;
1767 while CurItem <> nil do begin
1768 if (CurItem.ImageIndex <> 2) and (VaguePos(s,CurItem.Text) <> 0) then begin
1771 CurItem := CurItem.GetNext;
1774 if CurItem = nil then begin
1775 msg := '
\90æ
\93ª
\82É
\96ß
\82è
\82Ü
\82·
\82©
\81H';
1776 if MsgBox(GikoForm.Handle, msg, '', MB_YESNO or MB_ICONEXCLAMATION) = mrYes then begin
1777 CurItem := GikoForm.TreeView.Items.GetFirstNode;
1781 GikoForm.TreeView.Select(CurItem);
1782 GikoForm.TreeView.SetFocus;
1784 GikoForm.TreeView.Select(CurItem);
1785 GikoForm.TreeView.SetFocus;
1786 msg := '
\8e\9f\82É
\8ds
\82«
\82Ü
\82·
\82©
\81H';
1787 if MsgBox(GikoForm.Handle, msg, '', MB_YESNO or MB_ICONEXCLAMATION) = mrYes then begin
1800 // *************************************************************************
1801 //!
\91I
\91ð
\82³
\82ê
\82½
\94Â
\82Ì
\96¼
\91O
\82ð
\83R
\83s
\81[
\82·
\82é
1802 // *************************************************************************
1803 procedure TGikoDM.TreeSelectNameCopyExecute(Sender: TObject);
1807 GikoForm.TreeView.Selected := GikoForm.ClickNode;
1808 s := GikoForm.ClickNode.Text;
1809 Clipboard.AsText := s;
1811 ////////////////////////////////
\83c
\83\8a\81[
\83|
\83b
\83v
\83A
\83b
\83v
\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
1812 // *************************************************************************
1813 //!
\83\8d\83O
\83C
\83\93\81^
\83\8d\83O
\83A
\83E
\83g
\82ð
\82·
\82é
1814 // *************************************************************************
1815 procedure TGikoDM.LoginActionExecute(Sender: TObject);
1820 if GikoSys.Dolib.Connected then begin
1821 //
\83\8d\83O
\83A
\83E
\83g
1822 GikoSys.Dolib.Disconnect;
1823 LoginAction.Checked := False;
1824 GikoForm.AddMessageList(GikoSys.GetGikoMessage(gmLogout), nil, gmiOK);
1825 LoginAction.Caption := '
\83\8d\83O
\83C
\83\93(&L)';
1827 TmpCursor := GikoForm.ScreenCursor;
1828 GikoForm.ScreenCursor := crHourGlass;
1830 //
\92Ê
\8fí
\83\8d\83O
\83C
\83\93
1831 if not GikoSys.Setting.ForcedLogin then begin
1832 GikoSys.Dolib.ClientUA := 'gikoNavi/1.00';
1833 GikoSys.Dolib.UserName := GikoSys.Setting.UserID;
1834 GikoSys.Dolib.Password := GikoSys.Setting.Password;
1835 if GikoSys.Setting.ReadProxy then begin
1836 GikoSys.Dolib.ProxyAddress := GikoSys.Setting.ReadProxyAddress;
1837 GikoSys.Dolib.ProxyPort := GikoSys.Setting.ReadProxyPort;
1839 GikoSys.Dolib.ProxyAddress := '';
1840 GikoSys.Dolib.ProxyPort := 0;
1842 if GikoSys.Dolib.Connect then begin
1843 LoginAction.Checked := True;
1844 GikoForm.AddMessageList(GikoSys.GetGikoMessage(gmLogin) + GikoSys.Setting.UserID, nil, gmiOK);
1845 LoginAction.Caption := '
\83\8d\83O
\83A
\83E
\83g(&L)';
1846 //LoginToolButton.Style := tbsCheck;
1848 // 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);
1849 GikoForm.AddMessageList(GikoSys.Dolib.ErrorMsg, nil, gmiNG);
1850 GikoForm.PlaySound('Error');
1851 LoginAction.Checked := False;
1852 //LoginToolButton.Down := False;
1853 ///LoginToolButton.Style := tbsButton;
1856 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
1857 + '
\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
1858 + '
\82±
\82Ì
\83\82\81[
\83h
\82Å
\83\8d\83O
\83C
\83\93\82ð
\8e\8e\82Ý
\82Ü
\82·
\82©
\81H' + #13#10;
1859 if MsgBox(GikoForm.Handle, msg, '
\8cx
\8d\90', MB_YESNO or MB_ICONEXCLAMATION) = IDYES then begin
1860 GikoSys.Dolib.ClientUA := 'gikoNavi/1.00';
1861 GikoSys.Dolib.UserName := GikoSys.Setting.UserID;
1862 GikoSys.Dolib.Password := GikoSys.Setting.Password;
1863 if GikoSys.Setting.ReadProxy then begin
1864 GikoSys.Dolib.ProxyAddress := GikoSys.Setting.ReadProxyAddress;
1865 GikoSys.Dolib.ProxyPort := GikoSys.Setting.ReadProxyPort;
1867 GikoSys.Dolib.ProxyAddress := '';
1868 GikoSys.Dolib.ProxyPort := 0;
1870 //SSL
\8fá
\8aQ
\97p
\8b
\90§
\83\8d\83O
\83C
\83\93
1871 GikoSys.Dolib.ForcedConnect;
1872 if GikoSys.Dolib.Connect then begin
1873 LoginAction.Checked := True;
1874 GikoForm.AddMessageList(GikoSys.GetGikoMessage(gmForceLogin) + GikoSys.Setting.UserID, nil, gmiOK);
1875 LoginAction.Caption := '
\83\8d\83O
\83A
\83E
\83g(&L)';
1876 //LoginToolButton.Style := tbsCheck;
1878 // 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);
1879 GikoForm.AddMessageList(GikoSys.Dolib.ErrorMsg, nil, gmiNG);
1880 GikoForm.PlaySound('Error');
1881 LoginAction.Checked := False;
1882 //LoginToolButton.Down := False;
1883 //LoginToolButton.Style := tbsButton;
1886 LoginAction.Checked := False;
1887 //LoginToolButton.Down := False;
1888 //LoginToolButton.Style := tbsButton;
1892 GikoForm.ScreenCursor := TmpCursor;
1896 // *************************************************************************
1897 //!
\83{
\81[
\83h
\8dX
\90V
\83_
\83C
\83A
\83\8d\83O
\82ð
\95\
\8e¦
\82·
\82é
1898 // *************************************************************************
1899 procedure TGikoDM.NewBoardActionExecute(Sender: TObject);
1901 Dlg: TNewBoardDialog;
1904 if GikoForm.EditorFormExists then begin
1905 Msg := '
\83\8c\83X
\83G
\83f
\83B
\83^
\82ð
\91S
\82Ä
\95Â
\82¶
\82Ä
\82
\82¾
\82³
\82¢';
1906 MsgBox(GikoForm.Handle, Msg, '
\83G
\83\89\81[', MB_OK or MB_ICONSTOP);
1909 Dlg := TNewBoardDialog.Create(GikoForm);
1916 // *************************************************************************
1917 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\8dí
\8f\9c\82·
\82é
1918 // *************************************************************************
1919 procedure TGikoDM.LogDeleteActionExecute(Sender: TObject);
1921 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';
1922 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';
1923 DEL_TITLE = '
\8dí
\8f\9c\8am
\94F';
1925 ThreadItem: TThreadItem;
1926 TmpListItem: TListItem;
1930 List := TList.Create;
1932 TmpListItem := GikoForm.ListView.Selected;
1933 while TmpListItem <> nil do begin
1934 if TObject(TmpListItem.Data) is TThreadItem then begin
1935 ThreadItem := TThreadItem(TmpListItem.Data);
1936 if ThreadItem.IsLogFile then
1937 List.Add(ThreadItem);
1939 TmpListItem := GikoForm.ListView.GetNextItem(TmpListItem, sdAll, [isSelected]);
1942 if GikoSys.Setting.DeleteMsg and (List.Count > 0) then begin
1943 if (GetKeyState( VK_SHIFT ) and $80000000) = 0 then begin
1944 if List.Count = 1 then begin
1945 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
1948 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
1954 for i := 0 to List.Count - 1 do begin
1955 ThreadItem := TThreadItem(List[i]);
1956 GikoForm.DeleteHistory(ThreadItem);
1957 GikoForm.DeleteTab(ThreadItem);
1958 ThreadItem.DeleteLogFile;
1960 GikoForm.TreeView.Refresh; // UnRead
\82Ì
\95\
\8e¦
\82ð
\8dX
\90V
1962 GikoForm.ListView.Refresh;
1967 // *************************************************************************
1968 //! 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Ê
1969 // *************************************************************************
1970 procedure TGikoDM.LogDeleteActionUpdate(Sender: TObject);
1972 TAction(Sender).Enabled := (GikoForm.GetActiveList is TBoard)
1973 and (GikoForm.ListView.SelCount > 0);
1975 // *************************************************************************
1976 //!
\8di
\8d\9e\82Ý
\97\9a\97ð
\82ð
\8fÁ
\8b\8e\82·
\82é
1977 // *************************************************************************
1978 procedure TGikoDM.SelectTextClearActionExecute(Sender: TObject);
1980 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';
1981 DEL_TITLE = '
\8dí
\8f\9c\8am
\94F';
1983 if (GetKeyState( VK_SHIFT ) and $80000000) = 0 then
1984 if MsgBox(GikoForm.Handle, DEL_MSG, DEL_TITLE, MB_YESNO or MB_ICONWARNING or MB_DEFBUTTON2) <> ID_YES then
1986 GikoSys.Setting.SelectTextList.Clear;
1987 GikoForm.SelectComboBox.Items.Clear;
1988 GikoForm.SelectComboBox.Text := '';
1989 GikoForm.SetListViewType( gvtAll );
1991 // *************************************************************************
1992 //!
\83\8c\83X
\83G
\83f
\83B
\83^
\82Ì
\96¼
\91O
\97\9a\97ð
\82ð
\8fÁ
\8b\8e\82·
\82é
1993 // *************************************************************************
1994 procedure TGikoDM.NameTextClearActionExecute(Sender: TObject);
1996 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';
1997 DEL_TITLE = '
\8dí
\8f\9c\8am
\94F';
1999 if (GetKeyState( VK_SHIFT ) and $80000000) = 0 then
2000 if MsgBox(GikoForm.Handle, DEL_MSG, DEL_TITLE, MB_YESNO or MB_ICONWARNING or MB_DEFBUTTON2) <> ID_YES then
2002 GikoSys.Setting.NameList.Clear;
2003 GikoForm.AllEditroFormNameTextClearClear;
2005 // *************************************************************************
2006 //!
\83\8c\83X
\83G
\83f
\83B
\83^
\82Ì
\83\81\81[
\83\8b\97\9a\97ð
\82ð
\8fÁ
\8b\8e\82·
\82é
2007 // *************************************************************************
2008 procedure TGikoDM.MailTextClearActionExecute(Sender: TObject);
2010 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';
2011 DEL_TITLE = '
\8dí
\8f\9c\8am
\94F';
2013 if (GetKeyState( VK_SHIFT ) and $80000000) = 0 then
2014 if MsgBox(GikoForm.Handle, DEL_MSG, DEL_TITLE, MB_YESNO or MB_ICONWARNING or MB_DEFBUTTON2) <> ID_YES then
2016 GikoSys.Setting.MailList.Clear;
2017 GikoForm.AllEditroFormMailTextClearClear;
2019 // *************************************************************************
2020 //!
\83M
\83R
\83i
\83r
\82ð
\8fI
\97¹
\82·
\82é
2021 // *************************************************************************
2022 procedure TGikoDM.ExitActionExecute(Sender: TObject);
2026 // *************************************************************************
2027 //!
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\83G
\83N
\83X
\83|
\81[
\83g
\81@
\8eÀ
\8ds
\91O
\8f\88\97\9d
2028 // *************************************************************************
2029 procedure TGikoDM.ExportFavoriteFileBeforeExecute(Sender: TObject);
2031 ExportFavoriteFile.Dialog.FileName := FavoriteDM.GetFavoriteFilePath;
2033 // *************************************************************************
2034 //!
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\83G
\83N
\83X
\83|
\81[
\83g
\81@
\8eÀ
\8ds
\8f\88\97\9d
2035 // *************************************************************************
2036 procedure TGikoDM.ExportFavoriteFileAccept(Sender: TObject);
2038 if FavoriteDM.SaveFavoriteFile( ExportFavoriteFile.Dialog.FileName ) Then begin
2039 ShowMessage('
\83t
\83@
\83C
\83\8b\82ð
\8fo
\97Í
\82µ
\82Ü
\82µ
\82½');
2041 ShowMessage('
\83t
\83@
\83C
\83\8b\82Ì
\8fo
\97Í
\82É
\8e¸
\94s
\82µ
\82Ü
\82µ
\82½');
2044 // *************************************************************************
2045 //!
\91I
\91ð
\83X
\83\8c\83b
\83h
\82ð
\83t
\83@
\83C
\83\8b\82É
\95Û
\91¶
\82·
\82é
2046 // *************************************************************************
2047 procedure TGikoDM.SelectThreadSaveToFile(dat: Boolean);
2054 List := TList.Create;
2056 GikoForm.ScreenCursor := crHourGlass;
2057 GikoForm.SelectListItem(List);
2058 if ((GikoSys.Setting.ListOrientation = gloVertical) and
2059 (GikoSys.Setting.ListHeightState = glsMax)) or
2060 ((GikoSys.Setting.ListOrientation = gloHorizontal) and
2061 (GikoSys.Setting.ListWidthState = glsMax)) then
2062 ShowMessage('
\83X
\83\8c\83b
\83h
\88ê
\97\97\82ð
\95\
\8e¦
\82µ
\82Ä
\82
\82¾
\82³
\82¢')
2063 else if(List.Count = 0) then
2064 ShowMessage('
\83X
\83\8c\83b
\83h
\82ð
\91I
\91ð
\82µ
\82Ä
\82
\82¾
\82³
\82¢')
2067 SaveDialog.Title := '
\91I
\91ð
\83X
\83\8c\83b
\83h
\82ðdat
\82Ì
\82Ü
\82Ü
\95Û
\91¶';
2068 SaveDialog.Filter := 'DAT
\83t
\83@
\83C
\83\8b(*.dat)|*.dat';
2070 SaveDialog.Title := '
\91I
\91ð
\83X
\83\8c\83b
\83h
\82ðHTML
\89»
\82µ
\82Ä
\95Û
\91¶';
2071 SaveDialog.Filter := 'HTML
\83t
\83@
\83C
\83\8b(*.html)|*.html';
2073 for i := 0 to List.Count - 1 do begin
2074 if (TObject(List[i]) is TThreadItem) and (TThreadItem(List[i]).IsLogFile) then begin
2076 SaveDialog.FileName := TThreadItem(List[i]).FileName;
2078 SaveDialog.FileName := ReplaseNoValidateChar(TThreadItem(List[i]).Title) + '.html';
2080 if SaveDialog.Execute then begin
2082 CopyFile(PChar(TThreadItem(List[i]).FilePath),
2083 PChar(SaveDialog.FileName), true);
2085 html := TStringList.Create;
2086 title := TThreadItem(List[i]).Title;
2088 HTMLCreater.CreateHTML3(html, TThreadItem(List[i]), title);
2089 html.SaveToFile(SaveDialog.FileName);
2090 THTMLCreate.SkinorCSSFilesCopy(ExtractFilePath(SaveDialog.FileName));
2100 GikoForm.ScreenCursor := crDefault;
2104 // *************************************************************************
2105 //!
\91I
\91ð
\83X
\83\8c\83b
\83h
\82ðHTML
\89»
\82µ
\82Ä
\95Û
\91¶
2106 // *************************************************************************
2107 procedure TGikoDM.SelectItemSaveForHTMLExecute(Sender: TObject);
2109 SelectThreadSaveToFile(false);
2111 // *************************************************************************
2112 //!
\91I
\91ð
\83X
\83\8c\83b
\83h
\82ðDAT
\8c`
\8e®
\82Ì
\82Ü
\82Ü
\95Û
\91¶
2113 // *************************************************************************
2114 procedure TGikoDM.SelectItemSaveForDatExecute(Sender: TObject);
2116 SelectThreadSaveToFile(true);
2118 // *************************************************************************
2119 //!
\83^
\83u
\82Ì
\8f\87\94Ô
\82ð
\95Û
\91¶
2120 // *************************************************************************
2121 procedure TGikoDM.TabsSaveActionExecute(Sender: TObject);
2123 if not GikoForm.SaveTabURLs then begin
2124 if TabsSaveAction.Tag = 0 then
2125 ShowMessage('
\95Û
\91¶
\82·
\82é
\83^
\83u
\82ª
\82 \82è
\82Ü
\82¹
\82ñ')
2126 else if TabsSaveAction.Tag = 1 then
2127 GikoDM.TabsOpenAction.Tag := -1;
2130 // *************************************************************************
2131 //!
\83^
\83u
\82Ì
\8f\87\94Ô
\82ð
\95\9c\8c³
2132 // *************************************************************************
2133 procedure TGikoDM.TabsOpenActionExecute(Sender: TObject);
2135 if TabsOpenAction.Tag <> -1 then begin
2136 if not GikoForm.LoadTabURLs then begin
2137 if TabsOpenAction.Tag = 0 then
2138 ShowMessage('
\95\
\8e¦
\82·
\82é
\83^
\83u
\82ª
\82 \82è
\82Ü
\82¹
\82ñ
\81B');
2142 // *************************************************************************
2143 //!
\83^
\83u
\82Ì
\8f\87\94Ô
\82ð
\8e©
\93®
\95Û
\91¶
2144 // *************************************************************************
2145 procedure TGikoDM.TabAutoSaveActionExecute(Sender: TObject);
2147 GikoForm.SaveTabURLs;
2149 // *************************************************************************
2150 //!
\83^
\83u
\82Ì
\8f\87\94Ô
\82ð
\8e©
\93®
\95\9c\8c³
2151 // *************************************************************************
2152 procedure TGikoDM.TabAutoLoadActionExecute(Sender: TObject);
2154 GikoForm.LoadTabURLs;
2156 // *************************************************************************
2157 //! Be2ch
\82É
\83\8d\83O
\83C
\83\93/
\83\8d\83O
\83A
\83E
\83g
\82·
\82é
2158 // *************************************************************************
2159 procedure TGikoDM.BeLogInOutActionExecute(Sender: TObject);
2161 GikoSys.Setting.BeLogin := not GikoSys.Setting.BeLogin;
2163 // *************************************************************************
2164 //! Be2ch
\82É
\83\8d\83O
\83C
\83\93/
\83\8d\83O
\83A
\83E
\83g
\82·
\82é
\82ÌUpdate
\83C
\83x
\83\93\83g
2165 // *************************************************************************
2166 procedure TGikoDM.BeLogInOutActionUpdate(Sender: TObject);
2168 if (GikoSys.Setting.BeUserID <> '') and (GikoSys.Setting.BeCode <> '') then begin
2169 if (GikoSys.Setting.BeLogin) then BeLogInOutAction.Checked := true
2170 else BeLogInOutAction.Checked := false;
2171 BeLogInOutAction.Enabled := true
2173 BeLogInOutAction.Enabled := false;
2175 ////////////////////////////////
\83t
\83@
\83C
\83\8b\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
2176 // *************************************************************************
2177 //!
\83R
\83R
\82Ü
\82Å
\93Ç
\82ñ
\82¾
2178 // *************************************************************************
2179 procedure TGikoDM.KokomadeActionExecute(Sender: TObject);
2182 ThreadItem: TThreadItem;
2184 No := GikoForm.KokoPopupMenu.Tag;
2185 if No = 0 then Exit;
2186 ThreadItem := GikoForm.GetActiveContent;
2187 if ThreadItem = nil then Exit;
2188 ThreadItem.Kokomade := No;
2189 GikoForm.ActiveContent.Thread.ScrollTop :=
2190 OleVariant(IHTMLDocument2(GikoForm.ActiveContent.Browser.Document)).Body.ScrollTop;
2191 GikoForm.ActiveContent.Repaint := true;
2192 GikoForm.InsertBrowserTab(GikoForm.ActiveContent.Thread, true);
2193 //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é
2194 //Application.ProcessMessages;
2196 // *************************************************************************
2197 //!
\91S
\95\94\93Ç
\82ñ
\82¾
2198 // *************************************************************************
2199 procedure TGikoDM.ZenbuActionExecute(Sender: TObject);
2201 ThreadItem: TThreadItem;
2203 ThreadItem := GikoForm.GetActiveContent;
2204 if ThreadItem = nil then Exit;
2205 ThreadItem.Kokomade := -1;
2206 GikoForm.ActiveContent.Thread.ScrollTop :=
2207 OleVariant(IHTMLDocument2(GikoForm.ActiveContent.Browser.Document)).Body.ScrollTop;
2208 GikoForm.ActiveContent.Repaint := true;
2209 GikoForm.InsertBrowserTab(GikoForm.ActiveContent.Thread, true);
2210 //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é
2211 //Application.ProcessMessages;
2213 // *************************************************************************
2214 //!
\83R
\83R
\82É
\83\8c\83X
2215 // *************************************************************************
2216 procedure TGikoDM.KokoResActionExecute(Sender: TObject);
2218 Editor: TEditorForm;
2222 Number := GikoForm.KokoPopupMenu.Tag;
2223 if Number = 0 then Exit;
2224 Item := GikoForm.GetActiveContent;
2225 if Item = nil then Exit;
2227 Editor := TEditorForm.Create(GikoForm);
2228 Editor.SetThreadItem(Item);
2229 Editor.BodyEdit.Text := '>>' + IntToStr(Number) + #13#10;
2231 Editor.BodyEdit.SetFocus;
2233 // *************************************************************************
2234 //!
\91I
\91ð
\82µ
\82½
\83\8c\83X
\82ð
\83R
\83s
\81[
\82·
\82é
2235 // *************************************************************************
2236 procedure TGikoDM.KoreCopyExecute(Sender: TObject);
2238 GikoForm.KonoresCopy(GikoForm.KokoPopupMenu.Tag, true);
2240 // *************************************************************************
2241 //!
\91I
\91ð
\82µ
\82½
\83\8c\83X
\82ð
\83R
\83s
\81[
\82·
\82é
2242 // *************************************************************************
2243 procedure TGikoDM.SameIDResAnchorActionExecute(Sender: TObject);
2245 ThreadItem : TThreadItem;
2246 No, count, rc : Integer;
2250 No := GikoForm.KokoPopupMenu.Tag;
2251 if No = 0 then Exit;
2252 ThreadItem := GikoForm.GetActiveContent;
2253 if ThreadItem = nil then Exit;
2254 count := GikoSys.GetSameIDResCount(No, GikoForm.ActiveContent.Thread);
2256 if count > 20 then begin
2257 rc := GikoUtil.MsgBox(GikoForm.Handle,
2258 '20
\8cÂ
\88È
\8fã
\82 \82è
\82Ü
\82·
\82ª
\81A
\82·
\82×
\82Ä
\95\
\8e¦
\82µ
\82Ü
\82·
\82©
\81H',
2259 'ID
\83|
\83b
\83v
\83A
\83b
\83v
\8cx
\8d\90',
2260 MB_YESNO or MB_ICONQUESTION);
2261 limited := rc <> ID_YES;
2263 body := GikoSys.GetSameIDResAnchor(No, ThreadItem, limited);
2264 GikoForm.ActiveContent.IDAnchorPopup(body);
2266 // *************************************************************************
2267 //!
\82±
\82Ì
\83\8c\83X
\82 \82Ú
\81`
\82ñ
\81@
\81i
\92Ê
\8fí
\81j
2268 // *************************************************************************
2269 procedure TGikoDM.IndividualAbon1ActionExecute(Sender: TObject);
2271 GikoForm.IndividualAbon(GikoForm.KokoPopupMenu.Tag, 1);
2273 // *************************************************************************
2274 //!
\82±
\82Ì
\83\8c\83X
\82 \82Ú
\81`
\82ñ
\81@
\81i
\93§
\96¾
\81j
2275 // *************************************************************************
2276 procedure TGikoDM.IndividualAbon0ActionExecute(Sender: TObject);
2278 GikoForm.IndividualAbon(GikoForm.KokoPopupMenu.Tag, 0);
2280 // *************************************************************************
2281 //!
\82±
\82Ì
\83\8c\83X
\82 \82Ú
\81`
\82ñ
\89ð
\8f\9c
2282 // *************************************************************************
2283 procedure TGikoDM.AntiIndividualAbonActionExecute(Sender: TObject);
2285 IndividualForm :TIndividualAbonForm;
2286 ThreadItem : TThreadItem;
2288 ReadList : TStringList;
2289 wordCount : TWordCount;
2291 IndividualForm := TIndividualAbonForm.Create(GikoForm);
2293 ThreadItem := GikoForm.GetActiveContent;
2294 ThreadItem.ScrollTop :=
2295 OleVariant(IHTMLDocument2(GikoForm.ActiveContent.Browser.Document)).Body.ScrollTop;
2296 if (ThreadItem <> nil) and (ThreadItem.IsLogFile) then begin
2297 if IndividualForm.SetThreadLogFileName(ThreadItem.GetThreadFileName) then begin
2298 ReadList := TStringList.Create;
2299 wordCount := TWordCount.Create;
2301 {$IFDEF SPAM_FILTER_ENABLED}
2302 //
\83X
\83p
\83\80\82ð
\89ð
\8f\9c
2303 ReadList.LoadFromFile( ThreadItem.GetThreadFileName );
2304 GikoSys.SpamCountWord( ReadList[ KokoPopupMenu.Tag - 1 ], wordCount );
2305 GikoSys.SpamForget( wordCount, True ); //
\83X
\83p
\83\80\82ð
\89ð
\8f\9c
2306 GikoSys.SpamLearn( wordCount, False ); //
\83n
\83\80\82É
\90Ý
\92è
2308 if IndividualForm.DeleteNG(GikoForm.KokoPopupMenu.Tag) then begin
2309 GikoForm.ActiveContent.Repaint := true;
2310 GikoForm.InsertBrowserTab( ThreadItem, True );
2317 msg := '
\82±
\82Ì
\83X
\83\8c\83b
\83h
\82Å
\82Í
\8cÂ
\95Ê
\82 \82Ú
\81`
\82ñ
\82ð
\8ds
\82Á
\82Ä
\82Ü
\82¹
\82ñ';
2318 MsgBox(GikoForm.Handle, msg, '
\83\81\83b
\83Z
\81[
\83W', MB_OK);
2322 IndividualForm.Release;
2325 // *************************************************************************
2326 //!
\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
2327 // *************************************************************************
2328 procedure TGikoDM.AntiIndividualAbonDlgActionExecute(Sender: TObject);
2330 IndividualForm :TIndividualAbonForm;
2331 ThreadItem : TThreadItem;
2333 ReadList : TStringList;
2334 wordCount : TWordCount;
2335 {$IFDEF SPAM_FILTER_ENABLED}
2339 IndividualForm := TIndividualAbonForm.Create(GikoForm);
2341 ThreadItem := GikoForm.GetActiveContent;
2342 ThreadItem.ScrollTop :=
2343 OleVariant(IHTMLDocument2(GikoForm.ActiveContent.Browser.Document)).Body.ScrollTop;
2344 if (ThreadItem <> nil) and (ThreadItem.IsLogFile) then begin
2345 if IndividualForm.SetThreadLogFileName(ThreadItem.GetThreadFileName) then begin
2346 if (IndividualForm.ShowModal = mrOK) then begin
2347 ReadList := TStringList.Create;
2348 wordCount := TWordCount.Create;
2350 {$IFDEF SPAM_FILTER_ENABLED}
2351 //
\83X
\83p
\83\80\82ð
\89ð
\8f\9c
2352 ReadList.LoadFromFile( ThreadItem.GetThreadFileName );
2353 for i := 0 to IndividualForm.DeleteList.Count - 1 do begin
2354 GikoSys.SpamCountWord( ReadList[ StrToInt(IndividualForm.DeleteList[i]) - 1 ], wordCount );
2355 GikoSys.SpamForget( wordCount, True ); //
\83X
\83p
\83\80\82ð
\89ð
\8f\9c
2356 GikoSys.SpamLearn( wordCount, False ); //
\83n
\83\80\82É
\90Ý
\92è
2359 if IndividualForm.FRepaint then begin
2360 GikoForm.ActiveContent.Repaint := true;
2361 GikoForm.InsertBrowserTab( ThreadItem, True );
2369 msg := '
\82±
\82Ì
\83X
\83\8c\83b
\83h
\82Å
\82Í
\8cÂ
\95Ê
\82 \82Ú
\81`
\82ñ
\82ð
\8ds
\82Á
\82Ä
\82Ü
\82¹
\82ñ';
2370 MsgBox(GikoForm.Handle, msg, '
\83\81\83b
\83Z
\81[
\83W', MB_OK);
2374 IndividualForm.Release;
2377 // *************************************************************************
2378 //!
\82±
\82ÌID
\82 \82Ú
\81`
\82ñ
\81@
\92Ê
\8fí
2379 // *************************************************************************
2380 procedure TGikoDM.IndividualAbonID1ActionExecute(Sender: TObject);
2382 GikoForm.IndividualAbonID(1);
2384 // *************************************************************************
2385 //!
\82±
\82ÌID
\82 \82Ú
\81`
\82ñ
\81@
\93§
\96¾
2386 // *************************************************************************
2387 procedure TGikoDM.IndividualAbonID0ActionExecute(Sender: TObject);
2389 GikoForm.IndividualAbonID(0);
2391 ////////////////////////////////
\83u
\83\89\83E
\83U
\83|
\83b
\83v
\83A
\83b
\83v
\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
2392 // *************************************************************************
2393 //!
\83M
\83R
\83i
\83r
\82Ì
\83E
\83F
\83u
\83T
\83C
\83g
\82ð
\95\
\8e¦
\82·
\82é
2394 // *************************************************************************
2395 procedure TGikoDM.GikoNaviWebPageActionExecute(Sender: TObject);
2397 GikoSys.OpenBrowser(URL_GIKONAVI, gbtAuto);
2399 // *************************************************************************
2400 //!
\83\82\83i
\83W
\83\89\82Ì
\83E
\83F
\83u
\83T
\83C
\83g
\82ð
\95\
\8e¦
\82·
\82é
2401 // *************************************************************************
2402 procedure TGikoDM.MonazillaWebPageActionExecute(Sender: TObject);
2404 GikoSys.OpenBrowser(URL_MONAZILLA, gbtAuto);
2406 // *************************************************************************
2407 //!
\82Q
\82¿
\82á
\82ñ
\82Ë
\82é
\83g
\83b
\83v
\83y
\81[
\83W
\82ð
\95\
\8e¦
\82·
\82é
2408 // *************************************************************************
2409 procedure TGikoDM.BBS2chWebPageActionExecute(Sender: TObject);
2411 GikoSys.OpenBrowser(URL_2ch, gbtAuto);
2413 // *************************************************************************
2414 //!
\83M
\83R
\83i
\83r
\82Ì
\83t
\83H
\83\8b\83_
\82ð
\8aJ
\82
2415 // *************************************************************************
2416 procedure TGikoDM.GikoFolderOpenActionExecute(Sender: TObject);
2418 GikoSys.CreateProcess('explorer.exe', '/e,"' + GikoSys.GetAppDir + '"');
2420 // *************************************************************************
2421 //!
\83o
\81[
\83W
\83\87\83\93\8fî
\95ñ
\82ð
\95\
\8e¦
\82·
\82é
2422 // *************************************************************************
2423 procedure TGikoDM.AboutActionExecute(Sender: TObject);
2427 Dlg := TAboutDialog.Create(GikoForm);
2434 // *************************************************************************
2435 //!
\83M
\83R
\83i
\83r
\82Ì
\83w
\83\8b\83v
\82ð
\95\
\8e¦
\82·
\82é
2436 // *************************************************************************
2437 procedure TGikoDM.GikoHelpActionExecute(Sender: TObject);
2441 FileName := GikoSys.GetAppDir + 'batahlp.chm';
2442 if not FileExists(FileName) then begin
2445 '
\83w
\83\8b\83v
\82ª
\8c©
\82Â
\82©
\82è
\82Ü
\82¹
\82ñ
\82Å
\82µ
\82½' + #13#10 +
2446 '
\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 +
2447 '
\83w
\83\8b\83v
\82Í
\83M
\83R
\83i
\83r
\82Ì
\83T
\83C
\83g
\82É
\92u
\82¢
\82Ä
\82 \82è
\82Ü
\82·',
2452 ShellExecute(GikoForm.Handle, 'open', PChar(FileName), '', PChar(GikoSys.GetAppDir), SW_SHOW);
2454 // *************************************************************************
2455 //!
\83M
\83R
\83i
\83rWiki
\82Ì
\83E
\83F
\83u
\83T
\83C
\83g
\82ð
\95\
\8e¦
\82·
\82é
2456 // *************************************************************************
2457 procedure TGikoDM.WikiFAQWebPageActionExecute(Sender: TObject);
2459 GikoSys.OpenBrowser(URL_Wiki, gbtAuto);
2461 ////////////////////////////////
\83w
\83\8b\83v
\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
2462 // *************************************************************************
2463 //!
\83\8a\83X
\83g
\94Ô
\8d\86\95\
\8e¦
\82ð
\95Ï
\8dX
\82·
\82é
2464 // *************************************************************************
2465 procedure TGikoDM.ListNumberVisibleActionExecute(Sender: TObject);
2467 GikoSys.Setting.ListViewNo := ListNumberVisibleAction.Checked;
2468 GikoForm.ListView.Refresh;
2470 // *************************************************************************
2471 //!
\8fã
\88Ê
\83t
\83H
\83\8b\83_
\82É
\88Ú
\93®
\82·
\82é
2472 // *************************************************************************
2473 procedure TGikoDM.UpFolderActionExecute(Sender: TObject);
2475 if GikoForm.GetActiveList is TBoard then begin
2476 if TBoard(GikoForm.GetActiveList).ParentCategory <> nil then
2477 GikoForm.SelectTreeNode(TBoard(GikoForm.GetActiveList).ParentCategory, True);
2478 end else if GikoForm.GetActiveList is TCategory then begin
2479 GikoForm.SelectTreeNode(TCategory(GikoForm.GetActiveList).ParenTBBS, True);
2482 // *************************************************************************
2483 //!
\8fã
\88Ê
\83t
\83H
\83\8b\83_
\82É
\88Ú
\93®
\82·
\82éUpDate
\83C
\83x
\83\93\83g
2484 // *************************************************************************
2485 procedure TGikoDM.UpFolderActionUpdate(Sender: TObject);
2487 UpFolderAction.Enabled := not (GikoForm.GetActiveList is TBBS);
2489 // *************************************************************************
2490 //!
\95\
\8e¦
\81@
\95\
\8e¦
\83\8a\83X
\83g
\82Ì
\83\82\81[
\83h
\95Ï
\8dX
2491 // *************************************************************************
2492 procedure TGikoDM.IconStyleExecute(Sender: TObject);
2494 case GikoForm.ListView.ViewStyle of
2495 vsIcon: SmallIconAction.Execute;
2496 vsSmallIcon: ListIconAction.Execute;
2497 vsList: DetailIconAction.Execute;
2498 vsReport: LargeIconAction.Execute;
2501 // *************************************************************************
2502 //! SelectComboBox
\82Ì
\92l
\82ð
\83N
\83\8a\83A
\82·
\82é
2503 // *************************************************************************
2504 procedure TGikoDM.ClearSelectComboBox;
2506 if GikoForm.SelectComboBoxPanel.Visible then begin
2507 GikoForm.SelectComboBox.Text := SELECTCOMBOBOX_NAME;
2508 GikoForm.SelectComboBox.Color := SELECTCOMBOBOX_COLOR;
2509 GikoForm.ListView.SetFocus;
2512 // *************************************************************************
2513 //!
\83X
\83\8c\83b
\83h
\82ð
\82·
\82×
\82Ä
\95\
\8e¦
\82·
\82é
2514 // *************************************************************************
2515 procedure TGikoDM.AllItemActionExecute(Sender: TObject);
2518 if GikoForm.ViewType <> gvtAll then
2519 GikoForm.SetListViewType(gvtAll);
2520 GikoSys.Setting.ThreadRange := gtrAll;
2521 AllItemAction.Checked := True;
2522 // SelectComboBox
\82Ì
\97\9a\97ð
\82ð
\8dX
\90V
\82µ
\82Ä
\82¨
\82
2523 GikoForm.ModifySelectList;
2524 // SelectComboBox
\82Ì
\92l
\82ð
\83N
\83\8a\83A
2525 ClearSelectComboBox;
2529 // *************************************************************************
2530 //!
\83\8d\83O
\97L
\82è
\83X
\83\8c\83b
\83h
\82Ì
\82Ý
\82ð
\95\
\8e¦
\82·
\82é
2531 // *************************************************************************
2532 procedure TGikoDM.LogItemActionExecute(Sender: TObject);
2535 if GikoForm.ViewType <> gvtLog then
2536 GikoForm.SetListViewType(gvtLog);
2537 GikoSys.Setting.ThreadRange := gtrLog;
2538 LogItemAction.Checked := True;
2539 // SelectComboBox
\82Ì
\97\9a\97ð
\82ð
\8dX
\90V
\82µ
\82Ä
\82¨
\82
2540 GikoForm.ModifySelectList;
2541 // SelectComboBox
\82Ì
\92l
\82ð
\83N
\83\8a\83A
2542 ClearSelectComboBox;
2546 // *************************************************************************
2547 //!
\90V
\92\85\83X
\83\8c\83b
\83h
\82Ì
\82Ý
\95\
\8e¦
\82·
\82é
2548 // *************************************************************************
2549 procedure TGikoDM.NewItemActionExecute(Sender: TObject);
2553 if GikoForm.ViewType <> gvtNew then
2554 GikoForm.SetListViewType(gvtNew);
2555 GikoSys.Setting.ThreadRange := gtrNew;
2556 NewItemAction.Checked := True;
2557 // SelectComboBox
\82Ì
\97\9a\97ð
\82ð
\8dX
\90V
\82µ
\82Ä
\82¨
\82
2558 GikoForm.ModifySelectList;
2559 // SelectComboBox
\82Ì
\92l
\82ð
\83N
\83\8a\83A
2560 ClearSelectComboBox;
2564 // *************************************************************************
2565 //! DAT
\97\8e\82¿
\83X
\83\8c\83b
\83h
\82Ì
\82Ý
\95\
\8e¦
\82·
\82é
2566 // *************************************************************************
2567 procedure TGikoDM.ArchiveItemActionExecute(Sender: TObject);
2570 if GikoForm.ViewType <> gvtArch then
2571 GikoForm.SetListViewType(gvtArch);
2572 GikoSys.Setting.ThreadRange := gtrArch;
2573 ArchiveItemAction.Checked := True;
2574 // SelectComboBox
\82Ì
\97\9a\97ð
\82ð
\8dX
\90V
\82µ
\82Ä
\82¨
\82
2575 GikoForm.ModifySelectList;
2576 // SelectComboBox
\82Ì
\92l
\82ð
\83N
\83\8a\83A
2577 ClearSelectComboBox;
2581 // *************************************************************************
2582 //!
\90¶
\91¶
\83X
\83\8c\83b
\83h
\82Ì
\82Ý
\95\
\8e¦
\82·
\82é
2583 // *************************************************************************
2584 procedure TGikoDM.LiveItemActionExecute(Sender: TObject);
2587 if GikoForm.ViewType <> gvtLive then
2588 GikoForm.SetListViewType(gvtLive);
2589 GikoSys.Setting.ThreadRange := gtrLive;
2590 LiveItemAction.Checked := True;
2591 // SelectComboBox
\82Ì
\97\9a\97ð
\82ð
\8dX
\90V
\82µ
\82Ä
\82¨
\82
2592 GikoForm.ModifySelectList;
2593 // SelectComboBox
\82Ì
\92l
\82ð
\83N
\83\8a\83A
2594 ClearSelectComboBox;
2599 // *************************************************************************
2600 //!
\83X
\83\8c\83b
\83h
\82Ì
\95\
\8e¦
\94Í
\88Í
\82ð
\90Ý
\92è
2601 // *************************************************************************
2602 procedure TGikoDM.ThreadRangeActionExecute(Sender: TObject);
2604 case GikoSys.Setting.ThreadRange of
2605 gtrAll: AllItemAction.Execute;
2606 gtrLog: LogItemAction.Execute;
2607 gtrNew: NewItemAction.Execute;
2608 gtrArch: ArchiveItemAction.Execute;
2609 gtrLive: LiveItemAction.Execute;
2612 // *************************************************************************
2613 //!
\83X
\83\8c\83b
\83h
\8di
\8d\9e\82Ý
\83_
\83C
\83A
\83\8d\83O
\82ð
\95\
\8e¦
\82·
\82é
2614 // *************************************************************************
2615 procedure TGikoDM.SelectItemActionExecute(Sender: TObject);
2618 Dlg: TListSelectDialog;
2621 if GikoForm.SelectComboBoxPanel.Visible then begin
2622 if GikoForm.SelectComboBoxPanel.Left + GikoForm.SelectComboBoxPanel.Width < GikoForm.ListToolBar.Width then begin
2623 // SelectComboBox
\82ª
\82 \82é
\8fê
\8d\87\82Í
\83t
\83H
\81[
\83J
\83X
\82ð
\88Ú
\82·
2624 if GikoSys.Setting.ListOrientation = gloHorizontal then begin
2625 if GikoSys.Setting.ListWidthState = glsMax then
2626 BrowserMinAction.Execute;
2628 if GikoSys.Setting.ListHeightState = glsMax then
2629 BrowserMinAction.Execute;
2631 GikoForm.SelectComboBox.SetFocus;
2638 if GikoForm.SelectComboBox.Text = SELECTCOMBOBOX_NAME then begin
2639 GikoForm.SelectComboBox.Text := '';
2640 GikoForm.SelectComboBox.Color := clWindow;
2643 AllItemAction.Checked := False;
2644 LogItemAction.Checked := False;
2645 NewItemAction.Checked := False;
2646 //SelectItemAction.Checked := True;
2647 GikoForm.ModifySelectList;
2648 Dlg := TListSelectDialog.Create(GikoForm);
2650 Dlg.SelectComboBox.Items.Assign(GikoSys.Setting.SelectTextList);
2651 Dlg.SelectComboBox.Text := GikoForm.SelectComboBox.Text;
2653 if Dlg.ModalResult = mrCancel then begin
2654 if Length( GikoForm.SelectComboBox.Text ) = 0 then begin
2655 AllItemAction.Checked := True;
2656 GikoForm.SelectComboBox.Text := SELECTCOMBOBOX_NAME;
2657 GikoForm.SelectComboBox.Color := SELECTCOMBOBOX_COLOR;
2660 if GikoForm.GetActiveList is TBoard then
2661 GikoForm.SetListViewType(gvtUser, TBoard(GikoForm.GetActiveList).ParentCategory.ParenTBBS.SelectText , Dlg.KubetsuCheckBox.Checked);
2663 idx := GikoSys.Setting.SelectTextList.IndexOf(Dlg.SelectComboBox.Text);
2665 GikoSys.Setting.SelectTextList.Delete(idx);
2666 GikoSys.Setting.SelectTextList.Insert(0, Dlg.SelectComboBox.Text);
2667 while Dlg.SelectComboBox.Items.Count > 100 do begin
2668 Dlg.SelectComboBox.Items.Delete(Dlg.SelectComboBox.Items.Count - 1);
2671 if Length( Dlg.SelectComboBox.Text ) = 0 then begin
2672 GikoForm.SelectComboBox.Text := SELECTCOMBOBOX_NAME;
2673 GikoForm.SelectComboBox.Color := SELECTCOMBOBOX_COLOR;
2675 GikoForm.SelectComboBox.Text := Dlg.SelectComboBox.Text;
2676 GikoForm.SelectComboBox.Color := clWindow;
2678 GikoForm.SetListViewType(gvtUser, Dlg.SelectComboBox.Text, Dlg.KubetsuCheckBox.Checked);
2684 // *************************************************************************
2685 //!
\90V
\83X
\83\8c\8f\91\82«
\8d\9e\82Ý
\83E
\83B
\83\93\83h
\83E
\82ð
\95\
\8e¦
\82·
\82é
2686 // *************************************************************************
2687 procedure TGikoDM.ThreadEditorActionExecute(Sender: TObject);
2689 Editor: TEditorForm;
2691 if not (GikoForm.GetActiveList is TBoard) then
2693 Editor := TEditorForm.Create(GikoForm);
2694 Editor.SetBoard(TBoard(GikoForm.GetActiveList));
2696 Editor.BodyEdit.SetFocus;
2698 // *************************************************************************
2699 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\94Â
\82ð
\83u
\83\89\83E
\83U
\82Å
\95\
\8e¦
\82·
\82é
2700 // *************************************************************************
2701 procedure TGikoDM.BoardIEActionExecute(Sender: TObject);
2705 if GikoForm.GetActiveList is TBoard then begin
2706 URL := TBoard(GikoForm.GetActiveList).URL;
2707 GikoSys.OpenBrowser(URL, gbtAuto);
2710 // *************************************************************************
2711 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ÌURL
\82ð
\83R
\83s
\81[
\82·
\82é
2712 // *************************************************************************
2713 procedure TGikoDM.SelectItemURLCopyActionExecute(Sender: TObject);
2720 List := TList.Create;
2722 GikoForm.SelectListItem(List);
2723 for i := 0 to List.Count - 1 do begin
2724 if TObject(List[i]) is TBoard then
2725 s := s + TBoard(List[i]).URL + #13#10
2726 else if TObject(List[i]) is TThreadItem then
2727 s := s + TThreadItem(List[i]).URL + #13#10;
2730 Clipboard.AsText := s;
2735 // *************************************************************************
2736 //!
\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
2737 // *************************************************************************
2738 procedure TGikoDM.SelectItemURLCopyActionUpdate(Sender: TObject);
2740 if ((GikoForm.GetActiveList is TBoard) or
2741 (GikoForm.GetActiveList is TCategory))and (GikoForm.ListView.SelCount > 0) then
2742 TAction(Sender).Enabled := True
2744 TAction(Sender).Enabled := False;
2746 // *************************************************************************
2747 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\94Â
\82Ì
\96¼
\91O
\82ð
\83R
\83s
\81[
\82·
\82é
2748 // *************************************************************************
2749 procedure TGikoDM.SelectItemNameCopyActionExecute(Sender: TObject);
2756 List := TList.Create;
2758 GikoForm.SelectListItem(List);
2759 for i := 0 to List.Count - 1 do begin
2760 if TObject(List[i]) is TBoard then
2761 s := s + TBoard(List[i]).Title + #13#10
2762 else if TObject(List[i]) is TThreadItem then
2763 s := s + TThreadItem(List[i]).Title + #13#10;
2766 Clipboard.AsText := s;
2771 // *************************************************************************
2772 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\94Â
\82Ì
\96¼
\91O
\82ð
\83R
\83s
\81[
\82·
\82éUpdate
\83C
\83x
\83\93\83g
2773 // *************************************************************************
2774 procedure TGikoDM.SelectItemNameCopyActionUpdate(Sender: TObject);
2776 if ((GikoForm.GetActiveList is TBoard) or
2777 (GikoForm.GetActiveList is TCategory))and (GikoForm.ListView.SelCount > 0) then
2778 TAction(Sender).Enabled := True
2780 TAction(Sender).Enabled := False;
2782 // *************************************************************************
2783 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82Ì
\96¼
\91O
\82ÆURL
\82ð
\83R
\83s
\81[
\82·
\82é
2784 // *************************************************************************
2785 procedure TGikoDM.SelectItemNameURLCopyActionExecute(Sender: TObject);
2792 List := TList.Create;
2794 GikoForm.SelectListItem(List);
2795 for i := 0 to List.Count - 1 do begin
2796 if TObject(List[i]) is TBoard then
2797 s := s + TBoard(List[i]).Title + #13#10 + TBoard(List[i]).URL + #13#10
2798 else if TObject(List[i]) is TThreadItem then
2799 s := s + TThreadItem(List[i]).Title + #13#10 + TThreadItem(List[i]).URL + #13#10;
2802 Clipboard.AsText := s;
2807 // *************************************************************************
2808 //!
\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é
2809 // *************************************************************************
2810 procedure TGikoDM.SelectListReloadActionExecute(Sender: TObject);
2817 shiftDown := GetAsyncKeyState(VK_SHIFT) = Smallint($8001);
2818 GikoForm.ActiveListColumnSave;
2819 if GikoForm.GetActiveList is TCategory then begin
2820 List := TList.Create;
2822 GikoForm.SelectListItem(List);
2823 if List.Count > 5 then begin
2824 msg := '5
\8cÂ
\88È
\8fã
\82Í
\8ew
\92è
\82Å
\82«
\82Ü
\82¹
\82ñ' + #13#10
2825 + '
\82Q
\82¿
\82á
\82ñ
\82Ë
\82é
\95\89\89×
\8cy
\8c¸
\82É
\82²
\8b¦
\97Í
\82
\82¾
\82³
\82¢';
2826 MsgBox(GikoForm.Handle, msg, '
\8cx
\8d\90', MB_ICONEXCLAMATION);
2829 for i := 0 to List.Count - 1 do begin
2830 if TObject(List[i]) is TBoard then
2831 GikoForm.DownloadList(TBoard(List[i]), shiftDown);
2836 end else if GikoForm.GetActiveList is TBoard then begin
2837 GikoForm.DownloadList(TBoard(GikoForm.GetActiveList), shiftDown);
2840 // *************************************************************************
2841 //!
\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
2842 // *************************************************************************
2843 procedure TGikoDM.SelectListReloadActionUpdate(Sender: TObject);
2845 if (GikoForm.GetActiveList is TCategory) and (GikoForm.ListView.SelCount > 0) then
2846 TAction(Sender).Enabled := True
2847 else if GikoForm.GetActiveList is TBoard then
2848 TAction(Sender).Enabled := True
2850 TAction(Sender).Enabled := False;
2852 // *************************************************************************
2853 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\83_
\83E
\83\93\83\8d\81[
\83h
\82·
\82é
2854 // *************************************************************************
2855 procedure TGikoDM.SelectThreadReloadActionExecute(Sender: TObject);
2862 shiftDown := GetAsyncKeyState(VK_SHIFT) = Smallint($8001);
2863 List := TList.Create;
2865 GikoForm.SelectListItem(List);
2866 if List.Count > 10 then begin
2867 msg := '10
\8cÂ
\88È
\8fã
\82Í
\8ew
\92è
\82Å
\82«
\82Ü
\82¹
\82ñ' + #13#10
2868 + '
\82Q
\82¿
\82á
\82ñ
\82Ë
\82é
\95\89\89×
\8cy
\8c¸
\82É
\82²
\8b¦
\97Í
\82
\82¾
\82³
\82¢';
2869 MsgBox(GikoForm.Handle, msg, '
\8cx
\8d\90', MB_ICONEXCLAMATION);
2872 for i := 0 to List.Count - 1 do begin
2873 if TObject(List[i]) is TThreadItem then
2874 GikoForm.DownloadContent(TThreadItem(List[i]), shiftDown);
2880 // *************************************************************************
2881 //!
\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
2882 // *************************************************************************
2883 procedure TGikoDM.SelectThreadReloadActionUpdate(Sender: TObject);
2885 TAction(Sender).Enabled :=
2886 (GikoForm.GetActiveList is TBoard) and (GikoForm.ListView.SelCount > 0);
2888 // *************************************************************************
2889 //!
\83X
\83\8c\83b
\83h
\8f\84\89ñ
\97\
\96ñ
2890 // *************************************************************************
2891 procedure TGikoDM.SelectReservActionExecute(Sender: TObject);
2893 //INFO 2005/11/19
\83_
\83~
\81[
\81H
\81@by
\82à
\82¶
\82ã
2894 //
\82±
\82Ì
\83R
\83\81\83\93\83g
\8dí
\8f\9c\82µ
\82Ä
\82Í
\91Ê
\96Ú
2896 // *************************************************************************
2897 //!
\83X
\83\8c\83b
\83h
\8f\84\89ñ
\97\
\96ñUpdate
\83C
\83x
\83\93\83g
2898 // *************************************************************************
2899 procedure TGikoDM.SelectReservActionUpdate(Sender: TObject);
2904 if (GikoForm.GetActiveList is TBoard) and (GikoForm.ListView.SelCount > 0) then begin
2905 List := TList.Create;
2907 GikoForm.SelectListItem(List);
2908 for i := 0 to List.Count - 1 do begin
2909 if TObject(List[i]) is TThreadItem then begin
2910 if TThreadItem(List[i]).IsLogFile then begin
2911 SelectReservAction.Enabled := True;
2916 SelectReservAction.Enabled := False;
2920 end else if (GikoForm.GetActiveList is TCategory) and (GikoForm.ListView.SelCount > 0) then
2921 SelectReservAction.Enabled := True
2923 SelectReservAction.Enabled := False;
2925 // *************************************************************************
2926 //!
\91I
\91ð
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82É
\90V
\82µ
\82¢
\96¼
\91O
\82Å
\8f\84\89ñ
\97\
\96ñ
2927 // *************************************************************************
2928 procedure TGikoDM.SelectNewRoundNameExecute(Sender: TObject);
2931 Dlg: TRoundNameDialog;
2935 //
\8cÄ
\82Ñ
\8fo
\82µ
\8c³
\82ª
\81ATAction
\82ÅListView
\82É
\91I
\91ð
\82ª
\82¢
\82È
\82¯
\82ê
\82Î
\81AEXIT
\82·
\82é
2936 if (Sender is TAction) and (GikoForm.ListView.Selected = nil) then
2939 //
\93o
\98^
\8fã
\8cÀ
\83`
\83F
\83b
\83N
2940 cnt := RoundList.Count[grtBoard];
2941 cnt := cnt + RoundList.Count[grtItem];
2942 if cnt > 500 then begin
2943 MsgBox(GikoForm.Handle, '
\8f\84\89ñ
\82Í500
\88È
\8fã
\93o
\98^
\82Å
\82«
\82Ü
\82¹
\82ñ', '
\83G
\83\89\81[', MB_OK or MB_ICONSTOP);
2947 Dlg := TRoundNameDialog.Create(GikoForm);
2950 if Dlg.ModalResult <> mrCancel then begin
2951 s := Trim(Dlg.RoundNameEdit.Text);
2952 if (Sender is TMenuItem) then begin
2953 GikoForm.SetSelectItemRound(True, s, TMenuItem(Sender).Parent.Name);
2954 end else if (Sender is TAction) then begin
2955 if (GikoForm.ListView.Selected <> nil) then begin
2956 if (TObject(GikoForm.ListView.Selected.Data) is TThreadItem) then begin
2957 GikoForm.SetSelectItemRound(True, s,
2958 TThreadItem(GikoForm.ListView.Selected.Data).Title);
2959 end else if (TObject(GikoForm.ListView.Selected.Data) is TBoard) then begin
2960 GikoForm.SetSelectItemRound(True, s,
2961 TBoard(GikoForm.ListView.Selected.Data).Title);
2965 GikoForm.ListView.Refresh;
2971 // *************************************************************************
2972 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\83X
\83\8c\83b
\83h
\82Ì
\8f\84\89ñ
\82ð
\8dí
\8f\9c\82·
\82é
2973 // *************************************************************************
2974 procedure TGikoDM.SelectDeleteRoundExecute(Sender: TObject);
2978 if (Sender is TMenuItem) then begin
2980 GikoForm.SetSelectItemRound(False, '', TMenuItem(Sender).Parent.Name);
2983 end else if (Sender is TAction) then begin
2985 if GikoForm.ListView.Selected <> nil then begin
2986 if (TObject(GikoForm.ListView.Selected.Data) is TThreadItem) then begin
2987 s := TThreadItem(GikoForm.ListView.Selected.Data).Title;
2988 end else if (TObject(GikoForm.ListView.Selected.Data) is TBoard) then begin
2989 s := TBoard(GikoForm.ListView.Selected.Data).Title;
2991 GikoForm.SetSelectItemRound(False, '', s);
2997 GikoForm.ListView.Refresh;
2999 // *************************************************************************
3000 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\94Â
\82ð
\82¨
\8bC
\82É
\93ü
\82è
\82É
\92Ç
\89Á
\82·
\82é
3001 // *************************************************************************
3002 procedure TGikoDM.BoardFavoriteAddActionExecute(Sender: TObject);
3004 if TObject(GikoForm.ListView.Selected.Data) is TBoard then
3005 GikoForm.ShowFavoriteAddDialog(TObject(GikoForm.ListView.Selected.Data));
3007 // *************************************************************************
3008 //!
\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
3009 // *************************************************************************
3010 procedure TGikoDM.BoardFavoriteAddActionUpdate(Sender: TObject);
3012 BoardFavoriteAddAction.Enabled :=
3013 (GikoForm.GetActiveList is TCategory) and (GikoForm.ListView.SelCount > 0);
3015 // *************************************************************************
3016 //! Explorer
\82ÅLog
\83t
\83H
\83\8b\83_
\82ð
\8aJ
\82
3017 // *************************************************************************
3018 procedure TGikoDM.LogFolderOpenActionExecute(Sender: TObject);
3022 if ((GikoSys.Setting.ListOrientation = gloVertical) and
3023 (GikoSys.Setting.ListHeightState = glsMax)) or
3024 ((GikoSys.Setting.ListOrientation = gloHorizontal) and
3025 (GikoSys.Setting.ListWidthState = glsMax)) then begin
3026 if(GikoForm.GetActiveContent <> nil) then begin
3027 GikoSys.CreateProcess('explorer.exe', '/e,"' + ExtractFilePath(GikoForm.GetActiveContent.FilePath) + '"');
3029 end else if GikoForm.GetActiveList is TCategory then begin
3030 List := TList.Create;
3032 GikoForm.SelectListItem(List);
3033 GikoSys.CreateProcess('explorer.exe', '/e,"' + ExtractFilePath(TBoard(List[0]).FilePath) + '"');
3037 end else if GikoForm.GetActiveList is TBoard then begin
3038 GikoSys.CreateProcess('explorer.exe', '/e,"' + ExtractFilePath(TBoard(GikoForm.GetActiveList).FilePath) + '"');
3042 // *************************************************************************
3043 //! 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Ê
3044 // *************************************************************************
3045 procedure TGikoDM.LogFolderOpenActionUpdate(Sender: TObject);
3047 if ((GikoForm.GetActiveList is TBoard) or (GikoForm.GetActiveList is TCategory))
3048 and (GikoForm.ListView.SelCount > 0) then
3049 TAction(Sender).Enabled := True
3051 TAction(Sender).Enabled := False;
3053 // *************************************************************************
3054 //! Header.txt
\82ð
\83u
\83\89\83E
\83U
\82Å
\95\
\8e¦
\82·
\82é
3055 // *************************************************************************
3056 procedure TGikoDM.BrowsBoradHeadActionExecute(Sender: TObject);
3058 RefURL, URL : string;
3062 if GikoForm.GetActiveList is TCategory then begin
3063 List := TList.Create;
3065 GikoForm.SelectListItem(List);
3066 RefURL := TBoard(List[0]).URL;
3070 end else if GikoForm.GetActiveList is TBoard then begin
3071 RefURL := TBoard(GikoForm.GetActiveList).URL
3073 if RefURL <> '' then begin
3074 if RefURL[Length(RefURL)] <> '/' then
3075 URL := RefURL + '/' + 'head.txt'
3077 URL := RefURL + 'head.txt';
3079 GikoForm.MoveToURL(URL);
3081 ShowMessage('
\94Â
\82ð
\93Á
\92è
\82Å
\82«
\82Ü
\82¹
\82ñ
\82Å
\82µ
\82½
\81B');
3085 // *************************************************************************
3086 //!
\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é
3087 // *************************************************************************
3088 function TGikoDM.GetSortProperties(List: TObject;
3089 var vSortOrder: Boolean): Boolean;
3092 if (List <> nil) then begin
3093 if (List is TBBS) then begin
3094 vSortOrder := GikoSys.Setting.BBSSortOrder;
3095 end else if (List is TCategory) then begin
3096 vSortOrder := GikoSys.Setting.CategorySortOrder;
3097 end else if (List is TBoard) then begin
3098 vSortOrder := GikoSys.Setting.BoardSortOrder;
3106 // *************************************************************************
3107 //!
\8c»
\8dÝ
\82Ì
\83J
\83\89\83\80\82ð
\83\
\81[
\83g
\82·
\82é
3108 // *************************************************************************
3109 procedure TGikoDM.SortActiveColumnActionExecute(Sender: TObject);
3114 if GetSortProperties(GikoForm.GetActiveList, so) then begin
3115 for i := 0 to GikoForm.ListView.Columns.Count - 1 do begin
3116 if (GikoForm.ListView.Column[ i ].ImageIndex = ITEM_ICON_SORT1) or
3117 (GikoForm.ListView.Column[ i ].ImageIndex = ITEM_ICON_SORT2) then begin
3119 TListViewUtils.ListViewSort(nil, GikoForm.ListView,
3120 GikoForm.ListView.Column[ i ], ListNumberVisibleAction.Checked,
3127 // *************************************************************************
3128 //!
\89E
\97×
\82Ì
\83J
\83\89\83\80\82ð
\83\
\81[
\83g
3129 // *************************************************************************
3130 procedure TGikoDM.SortNextColumnActionExecute(Sender: TObject);
3134 for i := 0 to GikoForm.ListView.Columns.Count - 1 do begin
3135 if (GikoForm.ListView.Column[ i ].ImageIndex = ITEM_ICON_SORT1) or
3136 (GikoForm.ListView.Column[ i ].ImageIndex = ITEM_ICON_SORT2) then begin
3138 if id > GikoForm.ListView.Columns.Count - 1 then
3140 TListViewUtils.ListViewSort( nil, GikoForm.ListView,
3141 GikoForm.ListView.Column[ id ], ListNumberVisibleAction.Checked,
3147 // *************************************************************************
3148 //!
\8d¶
\97×
\82Ì
\83J
\83\89\83\80\82ð
\83\
\81[
\83g
3149 // *************************************************************************
3150 procedure TGikoDM.SortPrevColumnActionExecute(Sender: TObject);
3154 for i := 0 to GikoForm.ListView.Columns.Count - 1 do begin
3155 if (GikoForm.ListView.Column[ i ].ImageIndex = ITEM_ICON_SORT1) or
3156 (GikoForm.ListView.Column[ i ].ImageIndex = ITEM_ICON_SORT2) then begin
3159 id := GikoForm.ListView.Columns.Count - 1;
3160 TListViewUtils.ListViewSort( nil, GikoForm.ListView,
3161 GikoForm.ListView.Column[ id ], ListNumberVisibleAction.Checked,
3167 ////////////////////////////////
\94Â
\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
3168 // *************************************************************************
3169 //!
\95W
\8f\80\83c
\81[
\83\8b\83o
\81[
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3170 // *************************************************************************
3171 procedure TGikoDM.StdToolBarVisibleActionExecute(Sender: TObject);
3173 CoolBand: TCoolBand;
3175 CoolBand := GikoForm.GetCoolBand(GikoForm.MainCoolBar, GikoForm.StdToolBar);
3176 if CoolBand = nil then
3178 GikoSys.Setting.StdToolBarVisible := StdToolBarVisibleAction.Checked;
3179 CoolBand.Visible := GikoSys.Setting.StdToolBarVisible;
3180 GikoForm.StdToolBarVisiblePMenu.Checked := GikoSys.Setting.StdToolBarVisible;
3182 // *************************************************************************
3183 //!
\83A
\83h
\83\8c\83X
\83o
\81[
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3184 // *************************************************************************
3185 procedure TGikoDM.AddressBarVisibleActionExecute(Sender: TObject);
3187 CoolBand: TCoolBand;
3189 CoolBand := GikoForm.GetCoolBand(GikoForm.MainCoolBar, GikoForm.AddressToolBar);
3190 if CoolBand = nil then
3192 GikoSys.Setting.AddressBarVisible := AddressBarVisibleAction.Checked;
3193 CoolBand.Visible := GikoSys.Setting.AddressBarVisible;
3194 GikoForm.AddressToolBarVisiblePMenu.Checked := GikoSys.Setting.AddressBarVisible;
3196 // *************************************************************************
3197 //!
\83\8a\83\93\83N
\83o
\81[
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3198 // *************************************************************************
3199 procedure TGikoDM.LinkBarVisibleActionExecute(Sender: TObject);
3201 CoolBand: TCoolBand;
3203 CoolBand := GikoForm.GetCoolBand(GikoForm.MainCoolBar, GikoForm.LinkToolBar);
3204 if CoolBand = nil then
3206 GikoSys.Setting.LinkBarVisible := LinkBarVisibleAction.Checked;
3207 CoolBand.Visible := GikoSys.Setting.LinkBarVisible;
3208 GikoForm.LinkToolBarVisiblePMenu.Checked := GikoSys.Setting.LinkBarVisible;
3210 // *************************************************************************
3211 //!
\83\8a\83X
\83g
\83c
\81[
\83\8b\83o
\81[
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3212 // *************************************************************************
3213 procedure TGikoDM.ListToolBarVisibleActionExecute(Sender: TObject);
3215 CoolBand: TCoolBand;
3217 CoolBand := GikoForm.GetCoolBand(GikoForm.ListCoolBar, GikoForm.ListToolBar);
3218 if CoolBand = nil then
3220 CoolBand.Visible := ListToolBarVisibleAction.Checked;
3221 GikoSys.Setting.ListToolBarVisible := ListToolBarVisibleAction.Checked;
3223 // *************************************************************************
3224 //!
\83\8a\83X
\83g
\96¼
\8fÌ
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3225 // *************************************************************************
3226 procedure TGikoDM.ListNameBarVisibleActionExecute(Sender: TObject);
3228 CoolBand: TCoolBand;
3230 CoolBand := GikoForm.GetCoolBand(GikoForm.ListCoolBar, GikoForm.ListNameToolBar);
3231 if CoolBand = nil then
3233 CoolBand.Visible := ListNameBarVisibleAction.Checked;
3234 GikoSys.Setting.ListNameBarVisible := ListNameBarVisibleAction.Checked;
3236 // *************************************************************************
3237 //!
\83u
\83\89\83E
\83U
\83c
\81[
\83\8b\83o
\81[
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3238 // *************************************************************************
3239 procedure TGikoDM.BrowserToolBarVisibleActionExecute(Sender: TObject);
3241 CoolBand: TCoolBand;
3243 CoolBand := GikoForm.GetCoolBand(GikoForm.BrowserCoolBar, GikoForm.BrowserToolBar);
3244 if CoolBand = nil then
3246 CoolBand.Visible := BrowserToolBarVisibleAction.Checked;
3247 GikoSys.Setting.BrowserToolBarVisible := BrowserToolBarVisibleAction.Checked;
3249 // *************************************************************************
3250 //!
\83u
\83\89\83E
\83U
\96¼
\8fÌ
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3251 // *************************************************************************
3252 procedure TGikoDM.BrowserNameBarVisibleActionExecute(Sender: TObject);
3254 CoolBand: TCoolBand;
3256 CoolBand := GikoForm.GetCoolBand(GikoForm.BrowserCoolBar, GikoForm.BrowserNameToolBar);
3257 if CoolBand = nil then
3259 CoolBand.Visible := BrowserNameBarVisibleAction.Checked;
3260 GikoSys.Setting.BrowserNameBarVisible := BrowserNameBarVisibleAction.Checked;
3262 // *************************************************************************
3263 //!
\83\81\83b
\83Z
\81[
\83W
\83o
\81[
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3264 // *************************************************************************
3265 procedure TGikoDM.MsgBarVisibleActionExecute(Sender: TObject);
3267 GikoForm.MessageSplitter.Visible := MsgBarVisibleAction.Checked;
3268 GikoForm.MessagePanel.Top :=
3269 GikoForm.MessageSplitter.Top + GikoForm.MessageSplitter.Height;
3270 GikoForm.MessageSplitter.Top := GikoForm.MessagePanel.Top + 1;
3271 GikoForm.MessagePanel.Visible := MsgBarVisibleAction.Checked;
3272 GikoSys.Setting.MessageBarVisible := MsgBarVisibleAction.Checked;
3274 // *************************************************************************
3275 //!
\83\81\83b
\83Z
\81[
\83W
\83o
\81[
\82ð
\95Â
\82¶
\82é
3276 // *************************************************************************
3277 procedure TGikoDM.MsgBarCloseActionExecute(Sender: TObject);
3279 MsgBarVisibleAction.Execute;
3281 // *************************************************************************
3282 //!
\83X
\83e
\81[
\83^
\83X
\83o
\81[
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3283 // *************************************************************************
3284 procedure TGikoDM.StatusBarVisibleActionExecute(Sender: TObject);
3286 GikoForm.StatusBar.Visible := StatusBarVisibleAction.Checked;
3287 GikoSys.Setting.StatusBarVisible := StatusBarVisibleAction.Checked;
3289 // *************************************************************************
3290 //!
\83L
\83\83\83r
\83l
\83b
\83g
\82Ì
\95\
\8e¦
\82ð
\8cf
\8e¦
\94Â
\82É
\82·
\82é
3291 // *************************************************************************
3292 procedure TGikoDM.CabinetBBSActionExecute(Sender: TObject);
3295 if GikoForm.CabinetPanel.Visible then begin
3296 if GikoForm.TreeType = gtt2ch then begin
3297 GikoForm.CabinetVisible( False );
3299 CabinetBBSAction.Checked := False;
3301 CabinetBBSAction.Checked := True;
3304 GikoForm.CabinetVisible( True );
3305 CabinetBBSAction.Checked := True;
3308 if GikoForm.ActiveBBS = nil then
3309 GikoForm.ShowBBSTree( BBSs[ 0 ] )
3311 GikoForm.ShowBBSTree( GikoForm.ActiveBBS );
3314 // *************************************************************************
3315 //!
\83L
\83\83\83r
\83l
\83b
\83g
\82Ì
\95\
\8e¦
\82ð
\97\9a\97ð
\83\8a\83X
\83g
\82É
\82·
\82é
3316 // *************************************************************************
3317 procedure TGikoDM.CabinetHistoryActionExecute(Sender: TObject);
3319 GikoForm.ShowHistoryTree;
3321 // *************************************************************************
3322 //!
\83L
\83\83\83r
\83l
\83b
\83g
\82Ì
\95\
\8e¦
\82ð
\82¨
\8bC
\82É
\93ü
\82è
\83\8a\83X
\83g
\82É
\82·
\82é
3323 // *************************************************************************
3324 procedure TGikoDM.CabinetFavoriteActionExecute(Sender: TObject);
3330 if GikoForm.CabinetPanel.Visible then begin
3331 if GikoForm.TreeType = gttFavorite then begin
3332 GikoForm.CabinetVisible( False );
3333 CabinetFavoriteAction.Checked := False;
3335 CabinetFavoriteAction.Checked := True;
3338 GikoForm.CabinetVisible( True );
3339 CabinetFavoriteAction.Checked := True;
3342 // BBS...BBS, History, Favorite
3343 GikoSys.Setting.CabinetIndex := GikoForm.CabinetSelectPopupMenu.Items.Count - 1;
3345 b := GikoForm.CabinetSelectPopupMenu.Items.Count - 1;
3346 for i := 0 to b do begin
3347 item := GikoForm.CabinetSelectPopupMenu.Items[ i ];
3348 if item is TBBSMenuItem then begin
3349 item.Checked := False;
3350 // CabinetMenu
\82Í CabinetSelectPopupMenu
\82Æ
\93¯
\82¶
\82Æ
\8c\88\82ß
\82¤
\82¿
\82µ
\82¿
\82á
\82¤
3351 GikoForm.CabinetMenu.Items[ i ].Checked := False;
3355 //
\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Ö
3356 GikoForm.HistoryToolBar.Hide;
3357 GikoForm.FavoriteToolBar.Show;
3358 GikoForm.TreeView.Visible := False;
3359 GikoForm.FavoriteTreeView.Visible := True;
3361 GikoForm.CabinetSelectToolButton.Caption := '
\82¨
\8bC
\82É
\93ü
\82è';
3362 GikoForm.TreeType := gttFavorite;
3364 //
\83\81\83j
\83\85\81[
\8by
\82Ñ
\83{
\83^
\83\93\82Ì
\83`
\83F
\83b
\83N
\82ð
\90Ý
\92è
3365 CabinetBBSAction.Checked := False;
3366 CabinetHistoryAction.Checked := False;
3368 //
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\83c
\83\8a\81[
\82ð
\93W
\8aJ
3369 GikoForm.FavoriteTreeView.Items.GetFirstNode.Expanded := True;
3372 // *************************************************************************
3373 //!
\83L
\83\83\83r
\83l
\83b
\83g
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3374 // *************************************************************************
3375 procedure TGikoDM.CabinetVisibleActionExecute(Sender: TObject);
3377 case GikoForm.TreeType of
3378 gttHistory: CabinetHistoryAction.Execute;
3379 gttFavorite: CabinetFavoriteAction.Execute;
3381 CabinetBBSAction.Execute;
3384 // *************************************************************************
3385 //!
\83L
\83\83\83r
\83l
\83b
\83g
\82ð
\95Â
\82¶
\82é
3386 // *************************************************************************
3387 procedure TGikoDM.CabinetCloseActionExecute(Sender: TObject);
3389 //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ã
3391 // *************************************************************************
3392 //!
\83\8a\83X
\83g
\82ð
\91å
\82«
\82¢
\83A
\83C
\83R
\83\93\95\
\8e¦
\82É
\82·
\82é
3393 // *************************************************************************
3394 procedure TGikoDM.LargeIconActionExecute(Sender: TObject);
3396 GikoForm.ListView.ViewStyle := vsIcon;
3397 LargeIconAction.Checked := True;
3399 // *************************************************************************
3400 //!
\83\8a\83X
\83g
\82ð
\8f¬
\82³
\82¢
\83A
\83C
\83R
\83\93\95\
\8e¦
\82É
\82·
\82é
3401 // *************************************************************************
3402 procedure TGikoDM.SmallIconActionExecute(Sender: TObject);
3404 GikoForm.ListView.ViewStyle := vsSmallIcon;
3405 SmallIconAction.Checked := True;
3407 // *************************************************************************
3408 //!
\83\8a\83X
\83g
\82ð
\88ê
\97\97\95\
\8e¦
\82É
\82·
\82é
3409 // *************************************************************************
3410 procedure TGikoDM.ListIconActionExecute(Sender: TObject);
3412 GikoForm.ListView.ViewStyle := vsList;
3413 ListIconAction.Checked := True;
3415 // *************************************************************************
3416 //!
\83\8a\83X
\83g
\82ð
\8fÚ
\8d×
\95\
\8e¦
\82É
\82·
\82é
3417 // *************************************************************************
3418 procedure TGikoDM.DetailIconActionExecute(Sender: TObject);
3420 GikoForm.ListView.ViewStyle := vsReport;
3421 DetailIconAction.Checked := True;
3423 // *************************************************************************
3424 //!
\83_
\83E
\83\93\83\8d\81[
\83h
\82ð
\92\86\8e~
\82·
\82é
3425 // *************************************************************************
3426 procedure TGikoDM.StopActionExecute(Sender: TObject);
3428 GikoForm.FControlThread.DownloadAbort;
3429 if GikoForm.WorkCount <> 0 then GikoForm.WorkCount := 0;
3431 GikoForm.Animate.Active := False;
3434 GikoForm.ScreenCursor := crDefault;
3436 // *************************************************************************
3437 //!
\83\8a\83X
\83g
\82Æ
\83u
\83\89\83E
\83U
\82Ì
\8fc
\89¡
\94z
\92u
\82ð
\95Ï
\8dX
\82·
\82é
3438 // *************************************************************************
3439 procedure TGikoDM.ArrangeActionExecute(Sender: TObject);
3441 if ArrangeAction.Checked then begin
3443 GikoForm.ViewPanel.Align := alNone;
3444 GikoForm.ListSplitter.Align := alNone;
3445 GikoForm.ThreadPanel.Align := alNone;
3447 GikoForm.ViewPanel.Width := GikoForm.BrowserSizeWidth;
3448 GikoForm.ViewPanel.Align := alLeft;
3450 GikoForm.ListSplitter.Width := 5;
3451 GikoForm.ListSplitter.Align := alLeft;
3453 GikoForm.ViewPanel.Left := -10;
3455 GikoForm.ThreadPanel.Align := alClient;
3457 GikoSys.Setting.ListOrientation := gloHorizontal;
3458 case GikoSys.Setting.ListWidthState of
3460 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_NORMAL;
3461 BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_MIN;
3462 GikoForm.ViewPanel.Width := 1;
3465 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_MAX;
3466 BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_MIN;
3469 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_MAX;
3470 BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_NORMAL;
3471 GikoForm.ViewPanel.Width := GikoForm.ThreadMainPanel.Width - 80;
3476 GikoForm.ViewPanel.Align := alNone;
3477 GikoForm.ListSplitter.Align := alNone;
3478 GikoForm.ThreadPanel.Align := alNone;
3480 GikoForm.ViewPanel.Height := GikoForm.BrowserSizeHeight;
3481 GikoForm.ViewPanel.Align := alTop;
3483 GikoForm.ListSplitter.Height := 5;
3484 GikoForm.ListSplitter.Align := alTop;
3486 GikoForm.ViewPanel.Top := -10;
3488 GikoForm.ThreadPanel.Align := alClient;
3489 GikoSys.Setting.ListOrientation := gloVertical;
3490 case GikoSys.Setting.ListHeightState of
3492 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_NORMAL;
3493 BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_MIN;
3494 GikoForm.ViewPanel.Height := 1;
3497 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_MAX;
3498 BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_MIN;
3501 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_MAX;
3502 BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_NORMAL;
3503 GikoForm.ViewPanel.Height :=
3504 GikoForm.ThreadMainPanel.Height - GikoForm.BrowserCoolBar.Height - 7;
3509 // *************************************************************************
3510 //!
\83y
\83C
\83\93\82Ì
\83T
\83C
\83Y
\82ð
\8f\89\8aú
\89»
\82·
\82é
3511 // *************************************************************************
3512 procedure TGikoDM.PaneInitActionExecute(Sender: TObject);
3514 GikoForm.CabinetPanel.Width := 150;
3515 GikoForm.MessagePanel.Height := 40;
3517 GikoForm.BrowserSizeWidth := 200;
3518 GikoForm.BrowserSizeHeight := 200;
3519 if ArrangeAction.Checked then begin
3520 GikoForm.ViewPanel.Width := GikoForm.BrowserSizeWidth;
3522 GikoForm.ViewPanel.Height := GikoForm.BrowserSizeHeight;
3524 if GikoSys.Setting.ListOrientation = gloHorizontal then begin
3525 if GikoSys.Setting.ListHeightState = glsMax then begin
3526 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_MAX;
3527 GikoSys.Setting.ListHeightState := glsNormal;
3530 if GikoSys.Setting.ListWidthState = glsMax then begin
3531 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_MAX;
3532 GikoSys.Setting.ListWidthState := glsNormal;
3536 // *************************************************************************
3537 //!
\83u
\83\89\83E
\83U
\83^
\83u
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3538 // *************************************************************************
3539 procedure TGikoDM.BrowserTabVisibleActionExecute(Sender: TObject);
3541 GikoSys.Setting.BrowserTabVisible := BrowserTabVisibleAction.Checked;
3542 GikoForm.SetBrowserTabState;
3544 // *************************************************************************
3545 //!
\83u
\83\89\83E
\83U
\83^
\83u
\82ð
\8fã
\82É
\95\
\8e¦
\82·
\82é
3546 // *************************************************************************
3547 procedure TGikoDM.BrowserTabTopActionExecute(Sender: TObject);
3549 BrowserTabBottomAction.Checked := False;
3550 BrowserTabTopAction.Checked := True;
3551 GikoSys.Setting.BrowserTabPosition := gtpTop;
3552 GikoForm.SetBrowserTabState;
3554 // *************************************************************************
3555 //!
\83u
\83\89\83E
\83U
\83^
\83u
\82ð
\89º
\82É
\95\
\8e¦
\82·
\82é
3556 // *************************************************************************
3557 procedure TGikoDM.BrowserTabBottomActionExecute(Sender: TObject);
3559 BrowserTabTopAction.Checked := False;
3560 BrowserTabBottomAction.Checked := True;
3561 GikoSys.Setting.BrowserTabPosition := gtpBottom;
3562 GikoForm.SetBrowserTabState;
3564 // *************************************************************************
3565 //!
\83u
\83\89\83E
\83U
\83^
\83u
\82Ì
\83X
\83^
\83C
\83\8b\82ð
\83^
\83u
\83X
\83^
\83C
\83\8b\82É
\82·
\82é
3566 // *************************************************************************
3567 procedure TGikoDM.BrowserTabTabStyleActionExecute(Sender: TObject);
3569 BrowserTabButtonStyleAction.Checked := False;
3570 BrowserTabFlatStyleAction.Checked := False;
3571 BrowserTabTabStyleAction.Checked := True;
3572 GikoSys.Setting.BrowserTabStyle := gtsTab;
3573 GikoForm.SetBrowserTabState;
3575 // *************************************************************************
3576 //!
\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é
3577 // *************************************************************************
3578 procedure TGikoDM.BrowserTabButtonStyleActionExecute(Sender: TObject);
3580 BrowserTabTabStyleAction.Checked := False;
3581 BrowserTabFlatStyleAction.Checked := False;
3582 BrowserTabButtonStyleAction.Checked := True;
3583 GikoSys.Setting.BrowserTabStyle := gtsButton;
3584 GikoForm.SetBrowserTabState;
3586 // *************************************************************************
3587 //!
\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é
3588 // *************************************************************************
3589 procedure TGikoDM.BrowserTabFlatStyleActionExecute(Sender: TObject);
3591 BrowserTabFlatStyleAction.Checked := True;
3592 BrowserTabTabStyleAction.Checked := False;
3593 BrowserTabButtonStyleAction.Checked := False;
3594 GikoSys.Setting.BrowserTabStyle := gtsFlat;
3595 GikoForm.SetBrowserTabState;
3597 // *************************************************************************
3598 //!
\83u
\83\89\83E
\83U
\82É
\83t
\83H
\81[
\83J
\83X
\82ð
\93\96\82Ä
\82é
3599 // *************************************************************************
3600 procedure TGikoDM.SetFocusForBrowserActionExecute(Sender: TObject);
3602 GikoForm.ActiveContent.Browser.SetFocus;
3604 // *************************************************************************
3605 //!
\83u
\83\89\83E
\83U
\82É
\83t
\83H
\81[
\83J
\83X
\82ð
\93\96\82Ä
\82éUpdate
\83C
\83x
\83\93\83g
3606 // *************************************************************************
3607 procedure TGikoDM.SetFocusForBrowserActionUpdate(Sender: TObject);
3609 if( GikoForm.ActiveContent <> nil) and (GikoForm.ActiveContent.Browser <> nil) and
3610 (GikoForm.ActiveContent.Browser <> GikoForm.BrowserNullTab.Browser) then
3611 TAction(Sender).Enabled := true
3613 TAction(Sender).Enabled := false;
3615 // *************************************************************************
3616 //!
\83X
\83\8c\83b
\83h
\88ê
\97\97\82É
\83t
\83H
\81[
\83J
\83X
\82ð
\93\96\82Ä
\82é
3617 // *************************************************************************
3618 procedure TGikoDM.SetFocusForThreadListActionExecute(Sender: TObject);
3620 if GikoForm.ActiveContent <> nil then
3621 GikoForm.WebBrowserClick(GikoForm.ActiveContent.Browser); //
\88ê
\89ñBrowser
\82É
\93\96\82Ä
\82È
\82¢
\82Æ
\93®
\82©
\82È
\82¢
\82Æ
\82«
\82ª
\82 \82é
3622 GikoForm.ListView.SetFocus;
3624 if( GikoForm.ListView.Items.Count > 0 ) and (GikoForm.ListView.ItemFocused = nil) then
3625 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é
3627 //
\83X
\83N
\83\8d\81[
\83\8b\82³
\82¹
\82é
3628 if (GikoForm.ListView.ItemFocused <> nil) then begin
3629 GikoForm.ListView.ItemFocused.MakeVisible(False);
3632 // *************************************************************************
3633 //!
\83L
\83\83\83r
\83l
\83b
\83g
\82É
\83t
\83H
\81[
\83J
\83X
\82ð
\93\96\82Ä
\82é
3634 // *************************************************************************
3635 procedure TGikoDM.SetFocusForCabinetActionExecute(Sender: TObject);
3637 if GikoForm.ActiveContent <> nil then
3638 GikoForm.WebBrowserClick(GikoForm.ActiveContent.Browser); //
\88ê
\89ñBrowser
\82É
\93\96\82Ä
\82È
\82¢
\82Æ
\93®
\82©
\82È
\82¢
\82Æ
\82«
\82ª
\82 \82é
3639 if GikoForm.TreeView.Visible then begin
3640 GikoForm.TreeView.SetFocus;
3641 if(GikoForm.TreeView.Items.Count > 0) and ( GikoForm.TreeView.Selected = nil ) then
3642 GikoForm.TreeView.Items.Item[0].Selected := true;
3643 end else if GikoForm.FavoriteTreeView.Visible then begin
3644 GikoForm.FavoriteTreeView.SetFocus;
3645 if(GikoForm.FavoriteTreeView.Items.Count > 0) and (GikoForm.FavoriteTreeView.Selected = nil) then
3646 GikoForm.FavoriteTreeView.Items.Item[0].Selected := true;
3649 // *************************************************************************
3650 //!
\83L
\83\83\83r
\83l
\83b
\83g
\82É
\83t
\83H
\81[
\83J
\83X
\82ð
\93\96\82Ä
\82éUpdate
\83C
\83x
\83\93\83g
3651 // *************************************************************************
3652 procedure TGikoDM.SetFocusForCabinetActionUpdate(Sender: TObject);
3654 SetFocusForCabinetAction.Enabled := GikoForm.CabinetPanel.Visible;
3656 // *************************************************************************
3657 //!
\83X
\83\8c\83b
\83h
\88ê
\97\97\82ð
\8dÅ
\91å
\89»
\82µ
\82Ä
\83t
\83H
\81[
\83J
\83X
\82ð
\93\96\82Ä
\82é
3658 // *************************************************************************
3659 procedure TGikoDM.ThreadlistMaxAndFocusActionExecute(Sender: TObject);
3661 BrowserMinAction.Execute;
3662 SetFocusForThreadListAction.Execute;
3664 // *************************************************************************
3665 //!
\83X
\83\8c\95\
\8e¦
\82ð
\8dÅ
\91å
\89»
\82µ
\82Ä
\83t
\83H
\81[
\83J
\83X
\82ð
\93\96\82Ä
\82é
3666 // *************************************************************************
3667 procedure TGikoDM.BrowserMaxAndFocusActionExecute(Sender: TObject);
3669 BrowserMaxAction.Execute;
3670 SetFocusForBrowserAction.Execute;
3672 // *************************************************************************
3673 //!
\83X
\83\8c\83b
\83h
\88ê
\97\97\82Ì
\91I
\91ð
\82ð
\8dí
\8f\9c\82·
\82é
3674 // *************************************************************************
3675 procedure TGikoDM.UnSelectedListViewActionExecute(Sender: TObject);
3677 if GikoForm.ListView.Selected <> nil then begin
3678 GikoForm.ListView.Selected.Focused := True;
3679 GikoForm.ListView.Selected := nil;
3682 ////////////////////////////////
\95\
\8e¦
\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
3683 // *************************************************************************
3684 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\8aù
\93Ç
\82É
\82·
\82é
3685 // *************************************************************************
3686 procedure TGikoDM.KidokuActionExecute(Sender: TObject);
3688 SetThreadReadProperty(true);
3690 // *************************************************************************
3691 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\96¢
\93Ç
\82É
\82·
\82é
3692 // *************************************************************************
3693 procedure TGikoDM.MidokuActionExecute(Sender: TObject);
3695 SetThreadReadProperty(false);
3697 // *************************************************************************
3698 //!
\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Ç
3699 // *************************************************************************
3700 procedure TGikoDM.SetThreadReadProperty(read: Boolean);
3705 List := TList.Create;
3707 GikoForm.SelectListItem(List);
3708 for i := 0 to List.Count - 1 do begin
3709 if TObject(List[i]) is TThreadItem then begin
3710 if (TThreadItem(List[i]).IsLogFile) then begin
3711 TThreadItem(List[i]).UnRead := not read;
3715 if GikoForm.TreeView.Visible then
3716 GikoForm.TreeView.Refresh;
3717 if GikoForm.ListView.Visible then
3718 GikoForm.ListView.Refresh;
3723 // *************************************************************************
3724 //!
\83\8a\83X
\83g
\82ð
\91S
\82Ä
\91I
\91ð
\82·
\82é
3725 // *************************************************************************
3726 procedure TGikoDM.AllSelectActionExecute(Sender: TObject);
3728 GikoForm.ListViewAllSelect;
3730 // *************************************************************************
3731 //!
\83\8a\83X
\83g
\82ð
\91S
\82Ä
\91I
\91ð
\82·
\82éUpdate
\83C
\83x
\83\93\83g
3732 // *************************************************************************
3733 procedure TGikoDM.AllSelectActionUpdate(Sender: TObject);
3735 AllSelectAction.Enabled := GikoForm.ListView.SelCount > 0;
3737 ////////////////////////////////
\95Ò
\8fW
\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
3738 //!
\83X
\83\8c\83b
\83h
\82Ì
\83T
\83C
\83Y
\82ð
\8dÄ
\8cv
\8eZ
\82·
\82é
3739 procedure TGikoDM.ThreadSizeCalcForFileActionExecute(Sender: TObject);
3741 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 +
3742 '
\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' +
3743 '
\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';
3744 RECALC_TITLE : String = '
\83X
\83\8c\83b
\83h
\82Ì
\97e
\97Ê
\82ð
\83t
\83@
\83C
\83\8b\82©
\82ç
\8dÄ
\8cv
\8eZ';
3747 limitSize : Integer;
3750 {
\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Í
3751 \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
3752 \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õ
3753 è
\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
3754 DAT
\82Ì
\83t
\83@
\83C
\83\8b\83T
\83C
\83Y
\82Å
\8dX
\90V
\82·
\82é
3756 if MsgBox(GikoForm.Handle, RECALC_MES,
3757 RECALC_TITLE, MB_YESNO or MB_ICONWARNING) = ID_YES then begin
3758 //è
\87\92l
\82Ì
\8am
\94F
3759 limitSize := LIMIT_SIZE;
3760 limitStr := IntToStr(limitSize);
3761 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
3762 limitSize := StrToInt(MojuUtils.ZenToHan(limitStr));
3763 if (limitSize < 0) then begin
3764 ShowMessage('è
\87\92l
\82É
\95\89\82Í
\8ew
\92è
\82Å
\82«
\82Ü
\82¹
\82ñ
\81I');
3765 ThreadSizeCalcForFileActionExecute(nil);
3767 RecalcThreadSize(limitSize);
3772 //! 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
3773 procedure TGikoDM.RecalcThreadSize(limit : Integer);
3775 i, j, tmpSize : Integer;
3778 Thread: TThreadItem;
3781 //
\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
3782 GikoForm.ScreenCursor := crHourGlass;
3784 GikoForm.ProgressBar.Max := BoardGroups[0].Count;
3785 for i := 0 to BoardGroups[0].Count - 1 do begin
3786 Obj := BoardGroups[0].Objects[i];
3787 if (Obj <> nil) then begin
3788 Board := TBoard(Obj);
3789 if not Board.IsThreadDatRead then begin
3790 GikoSys.ReadSubjectFile(Board);
3792 for j := 0 to Board.Count - 1 do begin
3793 Thread := Board.Items[j];
3794 if (Thread <> nil) and (Thread.IsLogFile)
3795 and (Thread.Size <= limit) then begin
3796 dat := TStringList.Create;
3798 tmpSize := Thread.Size;
3800 dat.LoadFromFile(Thread.GetThreadFileName);
3801 tmpSize := Length(dat.Text);
3802 tmpSize := tmpSize - dat.Count;
3805 Thread.Size := tmpSize;
3812 GikoForm.ProgressBar.StepBy(1);
3815 GikoForm.ScreenCursor := crDefault;
3817 GikoForm.ProgressBar.Position := 0;
3818 ShowMessage('
\8cv
\8eZ
\8fI
\97¹
\82µ
\82Ü
\82µ
\82½
\81B');
3820 //!
\93ü
\97Í
\83A
\83V
\83X
\83g
\82Ì
\90Ý
\92è
\83t
\83H
\81[
\83\80\82ð
\8cÄ
\82Ñ
\8fo
\82·
3821 procedure TGikoDM.SetInputAssistActionExecute(Sender: TObject);
3823 form : TInputAssistForm;
3825 form := TInputAssistForm.Create(GikoForm);
3833 // WebBrowser
\82Ì
\8c\9f\8dõ
\83_
\83C
\83A
\83\8d\83O
\82ð
\8cÄ
\82Ñ
\8fo
\82·
3834 procedure OpenFindDialog(Browser: TWebbrowser);
3836 CGID_WebBrowser: TGUID = '{ED016940-BD5B-11cf-BA4E-00C04FD70816}';
3839 CmdTarget : IOleCommandTarget;
3840 vaIn, vaOut: OleVariant;
3843 if Browser.Document <> nil then begin
3845 PtrGUID^ := CGID_WebBrowser;
3847 Browser.Document.QueryInterface(IOleCommandTarget, CmdTarget);
3848 if CmdTarget <> nil then begin
3850 CmdTarget.Exec(PtrGUID, HTMLID_FIND, 0, vaIn, vaOut);
3860 //!
\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é
3861 procedure TGikoDM.OpenFindDialogActionExecute(Sender: TObject);
3863 if( GikoForm.ActiveContent <> nil) and (GikoForm.ActiveContent.Browser <> nil) then begin
3864 OpenFindDialog(GikoForm.ActiveContent.Browser);
3868 // *************************************************************************
3869 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\95\
\8e¦
\96¼
\82ð
\83R
\83s
\81[
\82·
\82é
3870 // *************************************************************************
3871 procedure TGikoDM.FavoriteTreeViewItemNameCopyActionExecute(
3874 if GikoForm.ClickNode = nil then Exit;
3877 GikoForm.ClickNode.Text + #13#10;