6 SysUtils, Classes, ExtActns, StdActns, ActnList, ImgList, Controls,
14 ComCtrls, BrowserRecord, Graphics, Messages, Setting, Dialogs;
17 CAPTION_NAME: string = '
\83M
\83R
\83i
\83r';
18 USER_SETLINKBAR = WM_USER + 2003;
20 ITEM_ICON_SORT1 = 12; //!<
\83\
\81[
\83g
\83A
\83C
\83R
\83\93
21 ITEM_ICON_SORT2 = 13; //!<
\83\
\81[
\83g
\83A
\83C
\83R
\83\93
23 //
\83c
\81[
\83\8b\83o
\81[
\83A
\83C
\83R
\83\93
24 TOOL_ICON_HEIGHT_MAX = 16; //!<
\8d\82\82³
\8dÅ
\91å
\83A
\83C
\83R
\83\93
25 TOOL_ICON_HEIGHT_MIN = 17; //!<
\8d\82\82³
\8dÅ
\8f¬
\83A
\83C
\83R
\83\93
26 TOOL_ICON_HEIGHT_NORMAL = 18; //!<
\8d\82\82³
\95W
\8f\80\83A
\83C
\83R
\83\93
27 TOOL_ICON_WIDTH_MAX = 19; //!<
\95\9d\8dÅ
\91å
\83A
\83C
\83R
\83\93
28 TOOL_ICON_WIDTH_MIN = 20; //!<
\95\9d\8dÅ
\8f¬
\83A
\83C
\83R
\83\93
29 TOOL_ICON_WIDTH_NORMAL = 21; //!<
\95\9d\95W
\8f\80\83A
\83C
\83R
\83\93
31 TOOL_ICON_FAV_FOLDER = 30; //!<
\82¨
\8bC
\82É
\93ü
\82è
\83t
\83H
\83\8b\83_
\83A
\83C
\83R
\83\93
32 TOOL_ICON_FAV_BOARD = 31; //!<
\82¨
\8bC
\82É
\93ü
\82è
\94Â
\83A
\83C
\83R
\83\93
33 TOOL_ICON_FAV_THREAD = 32; //!<
\82¨
\8bC
\82É
\93ü
\82è
\83X
\83\8c\83A
\83C
\83R
\83\93
35 //!
\83M
\83R
\83i
\83r
\83T
\83C
\83g
\82ÌURL
36 URL_GIKONAVI: string = 'http://gikonavi.sourceforge.jp/';
37 //! Monazilla
\83T
\83C
\83g
\82ÌURL
38 URL_MONAZILLA: string = 'http://www.monazilla.org/';
39 //! 2
\82¿
\82á
\82ñ
\82Ë
\82é
\82ÌURL
40 URL_2ch: string = 'http://www.2ch.net/';
41 //!
\83M
\83R
\83i
\83rWiki
\82ÌURL
42 URL_Wiki: string = 'http://gikowiki.dyndns.info/index.php?FAQ';
44 SELECTCOMBOBOX_NAME: string = ''; // '
\83X
\83\8c\83b
\83h
\8di
\8d\9e\8c\9f\8dõ';
45 SELECTCOMBOBOX_COLOR: TColor = clWindow;
49 TGikoDM = class(TDataModule)
50 GikoFormActionList: TActionList;
51 OnlyAHundredResAction: TAction;
52 OnlyKokoResAction: TAction;
54 NewBoardAction: TAction;
55 LogDeleteAction: TAction;
56 KidokuAction: TAction;
57 StdToolBarVisibleAction: TAction;
58 AddressBarVisibleAction: TAction;
59 LinkBarVisibleAction: TAction;
60 ListToolBarVisibleAction: TAction;
61 SearchAction: TAction;
62 GikoNaviWebPageAction: TAction;
63 MonazillaWebPageAction: TAction;
64 BBS2chWebPageAction: TAction;
65 GikoFolderOpenAction: TAction;
67 SelectTextClearAction: TAction;
68 NameTextClearAction: TAction;
69 MailTextClearAction: TAction;
71 ListNameBarVisibleAction: TAction;
72 BrowserToolBarVisibleAction: TAction;
73 BrowserNameBarVisibleAction: TAction;
74 MsgBarVisibleAction: TAction;
75 MsgBarCloseAction: TAction;
76 StatusBarVisibleAction: TAction;
77 CabinetBBSAction: TAction;
78 CabinetHistoryAction: TAction;
79 OnlyNewResAction: TAction;
80 CabinetFavoriteAction: TAction;
81 CabinetVisibleAction: TAction;
82 ListNumberVisibleAction: TAction;
83 UpFolderAction: TAction;
84 CabinetCloseAction: TAction;
86 LargeIconAction: TAction;
87 SmallIconAction: TAction;
88 ListIconAction: TAction;
89 DetailIconAction: TAction;
90 MidokuAction: TAction;
91 AllSelectAction: TAction;
92 AllItemAction: TAction;
93 LogItemAction: TAction;
94 NewItemAction: TAction;
95 ThreadRangeAction: TAction;
96 SelectItemAction: TAction;
98 OptionAction: TAction;
100 BrowserMaxAction: TAction;
101 BrowserMinAction: TAction;
102 ScrollTopAction: TAction;
103 ScrollLastAction: TAction;
104 ScrollNewAction: TAction;
105 ScrollKokoAction: TAction;
106 EditorAction: TAction;
108 ShowThreadAction: TAction;
109 ShowBoardAction: TAction;
110 URLCopyAction: TAction;
111 NameCopyAction: TAction;
112 NameURLCopyAction: TAction;
113 ItemReloadAction: TAction;
114 ThreadEditorAction: TAction;
115 BoardIEAction: TAction;
116 SelectItemURLCopyAction: TAction;
117 SelectItemNameCopyAction: TAction;
118 SelectItemNameURLCopyAction: TAction;
119 SelectListReloadAction: TAction;
120 SelectThreadReloadAction: TAction;
121 BrowserTabCloseAction: TAction;
122 NotSelectTabCloseAction: TAction;
123 AllTabCloseAction: TAction;
124 KokomadeAction: TAction;
125 ZenbuAction: TAction;
126 KokoResAction: TAction;
127 TreeSelectBoradReload: TAction;
128 TreeSelectThreadReload: TAction;
129 TreeSelectURLCopy: TAction;
130 SelectReservAction: TAction;
131 SelectNewRoundName: TAction;
132 SelectDeleteRound: TAction;
133 KeySettingAction: TAction;
134 ArrangeAction: TAction;
135 ActiveLogDeleteAction: TAction;
136 TreeSelectNameURLCopy: TAction;
137 PaneInitAction: TAction;
138 LeftmostTabSelectAction: TAction;
139 LeftTabSelectAction: TAction;
140 RightTabSelectAction: TAction;
141 RightmostTabSelectAction: TAction;
142 FavoriteAddAction: TAction;
143 BoardFavoriteAddAction: TAction;
144 ThreadFavoriteAddAction: TAction;
145 TreeSelectFavoriteAddAction: TAction;
146 FavoriteArrangeAction: TAction;
147 MoveToAction: TAction;
148 BrowserTabVisibleAction: TAction;
149 BrowserTabTopAction: TAction;
150 BrowserTabBottomAction: TAction;
151 BrowserTabTabStyleAction: TAction;
152 BrowserTabButtonStyleAction: TAction;
153 BrowserTabFlatStyleAction: TAction;
154 GikoHelpAction: TAction;
155 KotehanAction: TAction;
156 ToolBarSettingAction: TAction;
157 SelectResAction: TAction;
158 AllResAction: TAction;
159 EditNGAction: TAction;
160 ReloadAction: TAction;
161 GoFowardAction: TAction;
162 GoBackAction: TAction;
163 TreeSelectSearchBoardName: TAction;
164 FavoriteTreeViewRenameAction: TAction;
165 FavoriteTreeViewNewFolderAction: TAction;
166 FavoriteTreeViewDeleteAction: TAction;
167 FavoriteTreeViewBrowseFolderAction: TAction;
168 FavoriteTreeViewReloadAction: TAction;
169 FavoriteTreeViewURLCopyAction: TAction;
170 FavoriteTreeViewNameCopyAction: TAction;
171 FavoriteTreeViewNameURLCopyAction: TAction;
172 FavoriteTreeViewLogDeleteAction: TAction;
173 ResRangeAction: TAction;
174 ExportFavoriteFile: TFileSaveAs;
175 FavoriteTreeViewBrowseBoardAction: TAction;
176 FavoriteTreeViewBrowseThreadAction: TAction;
177 UpBoardAction: TAction;
179 TreeSelectNameCopy: TAction;
180 SetFocusForBrowserAction: TAction;
181 SetFocusForThreadListAction: TAction;
182 SetFocusForCabinetAction: TAction;
184 ThreadlistMaxAndFocusAction: TAction;
185 BrowserMaxAndFocusAction: TAction;
186 SelectItemSaveForHTML: TAction;
187 SelectItemSaveForDat: TAction;
188 LogFolderOpenAction: TAction;
189 TabsSaveAction: TAction;
190 TabsOpenAction: TAction;
191 BrowsBoradHeadAction: TAction;
192 TabAutoSaveAction: TAction;
193 TabAutoLoadAction: TAction;
194 JumpToNumOfResAction: TAction;
195 FavoriteTreeViewCollapseAction: TAction;
196 RightTabCloseAction: TAction;
197 LeftTabCloseAction: TAction;
198 SameIDResAnchorAction: TAction;
199 IndividualAbon1Action: TAction;
200 IndividualAbon0Action: TAction;
201 AntiIndividualAbonAction: TAction;
202 AntiIndividualAbonDlgAction: TAction;
203 IndividualAbonID1Action: TAction;
204 IndividualAbonID0Action: TAction;
206 SortActiveColumnAction: TAction;
207 SortNextColumnAction: TAction;
208 SortPrevColumnAction: TAction;
209 BeLogInOutAction: TAction;
210 UnSelectedListViewAction: TAction;
211 WikiFAQWebPageAction: TAction;
212 ToobarImageList: TImageList;
213 SaveDialog: TSaveDialog;
214 ThreadSizeCalcForFileAction: TAction;
215 procedure EditNGActionExecute(Sender: TObject);
216 procedure ReloadActionExecute(Sender: TObject);
217 procedure GoFowardActionExecute(Sender: TObject);
218 procedure GoBackActionExecute(Sender: TObject);
219 procedure MoveToActionExecute(Sender: TObject);
220 procedure FavoriteAddActionExecute(Sender: TObject);
221 procedure FavoriteArrangeActionExecute(Sender: TObject);
222 procedure FavoriteTreeViewCollapseActionExecute(Sender: TObject);
223 procedure FavoriteTreeViewRenameActionExecute(Sender: TObject);
224 procedure FavoriteTreeViewNewFolderActionExecute(Sender: TObject);
225 procedure FavoriteTreeViewDeleteActionExecute(Sender: TObject);
226 procedure FavoriteTreeViewBrowseFolderActionExecute(Sender: TObject);
227 procedure FavoriteTreeViewReloadActionExecute(Sender: TObject);
228 procedure FavoriteTreeViewURLCopyActionExecute(Sender: TObject);
229 procedure FavoriteTreeViewNameCopyActionExecute(Sender: TObject);
230 procedure FavoriteTreeViewNameURLCopyActionExecute(Sender: TObject);
231 procedure FavoriteTreeViewLogDeleteActionExecute(Sender: TObject);
232 procedure FavoriteTreeViewBrowseThreadActionExecute(Sender: TObject);
233 procedure OnlyAHundredResActionExecute(Sender: TObject);
234 procedure OnlyKokoResActionExecute(Sender: TObject);
235 procedure OnlyNewResActionExecute(Sender: TObject);
236 procedure BrowserMaxActionExecute(Sender: TObject);
237 procedure BrowserMinActionExecute(Sender: TObject);
238 procedure ScrollTopActionExecute(Sender: TObject);
239 procedure ScrollLastActionExecute(Sender: TObject);
240 procedure ScrollNewActionExecute(Sender: TObject);
241 procedure ScrollKokoActionExecute(Sender: TObject);
242 procedure ScrollKokoActionUpdate(Sender: TObject);
243 procedure EditorActionExecute(Sender: TObject);
244 procedure IEActionExecute(Sender: TObject);
245 procedure ShowThreadActionExecute(Sender: TObject);
246 procedure ShowBoardActionExecute(Sender: TObject);
247 procedure URLCopyActionExecute(Sender: TObject);
248 procedure NameCopyActionExecute(Sender: TObject);
249 procedure NameURLCopyActionExecute(Sender: TObject);
250 procedure ItemReloadActionExecute(Sender: TObject);
251 procedure BrowserTabCloseActionExecute(Sender: TObject);
252 procedure BrowserTabCloseActionUpdate(Sender: TObject);
253 procedure NotSelectTabCloseActionExecute(Sender: TObject);
254 procedure NotSelectTabCloseActionUpdate(Sender: TObject);
255 procedure AllTabCloseActionExecute(Sender: TObject);
256 procedure ActiveLogDeleteActionExecute(Sender: TObject);
257 procedure LeftmostTabSelectActionExecute(Sender: TObject);
258 procedure LeftmostTabSelectActionUpdate(Sender: TObject);
259 procedure LeftTabSelectActionExecute(Sender: TObject);
260 procedure RightTabSelectActionExecute(Sender: TObject);
261 procedure RightTabSelectActionUpdate(Sender: TObject);
262 procedure RightmostTabSelectActionExecute(Sender: TObject);
263 procedure ThreadFavoriteAddActionExecute(Sender: TObject);
264 procedure ThreadFavoriteAddActionUpdate(Sender: TObject);
265 procedure SelectResActionExecute(Sender: TObject);
266 procedure AllResActionExecute(Sender: TObject);
267 procedure ResRangeActionExecute(Sender: TObject);
268 procedure UpBoardActionExecute(Sender: TObject);
269 procedure JumpToNumOfResActionExecute(Sender: TObject);
270 procedure RightTabCloseActionExecute(Sender: TObject);
271 procedure RightTabCloseActionUpdate(Sender: TObject);
272 procedure LeftTabCloseActionExecute(Sender: TObject);
273 procedure DataModuleCreate(Sender: TObject);
274 procedure SearchActionExecute(Sender: TObject);
275 procedure OptionActionExecute(Sender: TObject);
276 procedure RoundActionExecute(Sender: TObject);
277 procedure KeySettingActionExecute(Sender: TObject);
278 procedure KotehanActionExecute(Sender: TObject);
279 procedure ToolBarSettingActionExecute(Sender: TObject);
280 procedure MuteActionExecute(Sender: TObject);
281 procedure TreeSelectBoradReloadExecute(Sender: TObject);
282 procedure TreeSelectThreadReloadExecute(Sender: TObject);
283 procedure TreeSelectURLCopyExecute(Sender: TObject);
284 procedure TreeSelectNameURLCopyExecute(Sender: TObject);
285 procedure TreeSelectFavoriteAddActionExecute(Sender: TObject);
286 procedure TreeSelectSearchBoardNameExecute(Sender: TObject);
287 procedure TreeSelectNameCopyExecute(Sender: TObject);
288 procedure LoginActionExecute(Sender: TObject);
289 procedure NewBoardActionExecute(Sender: TObject);
290 procedure LogDeleteActionExecute(Sender: TObject);
291 procedure LogDeleteActionUpdate(Sender: TObject);
292 procedure SelectTextClearActionExecute(Sender: TObject);
293 procedure NameTextClearActionExecute(Sender: TObject);
294 procedure MailTextClearActionExecute(Sender: TObject);
295 procedure ExitActionExecute(Sender: TObject);
296 procedure ExportFavoriteFileBeforeExecute(Sender: TObject);
297 procedure ExportFavoriteFileAccept(Sender: TObject);
298 procedure SelectItemSaveForHTMLExecute(Sender: TObject);
299 procedure SelectItemSaveForDatExecute(Sender: TObject);
300 procedure TabsSaveActionExecute(Sender: TObject);
301 procedure TabsOpenActionExecute(Sender: TObject);
302 procedure TabAutoSaveActionExecute(Sender: TObject);
303 procedure TabAutoLoadActionExecute(Sender: TObject);
304 procedure BeLogInOutActionExecute(Sender: TObject);
305 procedure BeLogInOutActionUpdate(Sender: TObject);
306 procedure KokomadeActionExecute(Sender: TObject);
307 procedure ZenbuActionExecute(Sender: TObject);
308 procedure KokoResActionExecute(Sender: TObject);
309 procedure KoreCopyExecute(Sender: TObject);
310 procedure SameIDResAnchorActionExecute(Sender: TObject);
311 procedure IndividualAbon1ActionExecute(Sender: TObject);
312 procedure IndividualAbon0ActionExecute(Sender: TObject);
313 procedure AntiIndividualAbonActionExecute(Sender: TObject);
314 procedure AntiIndividualAbonDlgActionExecute(Sender: TObject);
315 procedure IndividualAbonID1ActionExecute(Sender: TObject);
316 procedure IndividualAbonID0ActionExecute(Sender: TObject);
317 procedure GikoNaviWebPageActionExecute(Sender: TObject);
318 procedure MonazillaWebPageActionExecute(Sender: TObject);
319 procedure BBS2chWebPageActionExecute(Sender: TObject);
320 procedure GikoFolderOpenActionExecute(Sender: TObject);
321 procedure AboutActionExecute(Sender: TObject);
322 procedure GikoHelpActionExecute(Sender: TObject);
323 procedure WikiFAQWebPageActionExecute(Sender: TObject);
324 procedure ListNumberVisibleActionExecute(Sender: TObject);
325 procedure UpFolderActionExecute(Sender: TObject);
326 procedure UpFolderActionUpdate(Sender: TObject);
327 procedure IconStyleExecute(Sender: TObject);
328 procedure AllItemActionExecute(Sender: TObject);
329 procedure LogItemActionExecute(Sender: TObject);
330 procedure NewItemActionExecute(Sender: TObject);
331 procedure ThreadRangeActionExecute(Sender: TObject);
332 procedure SelectItemActionExecute(Sender: TObject);
333 procedure ThreadEditorActionExecute(Sender: TObject);
334 procedure BoardIEActionExecute(Sender: TObject);
335 procedure SelectItemURLCopyActionExecute(Sender: TObject);
336 procedure SelectItemURLCopyActionUpdate(Sender: TObject);
337 procedure SelectItemNameCopyActionExecute(Sender: TObject);
338 procedure SelectItemNameCopyActionUpdate(Sender: TObject);
339 procedure SelectItemNameURLCopyActionExecute(Sender: TObject);
340 procedure SelectListReloadActionExecute(Sender: TObject);
341 procedure SelectListReloadActionUpdate(Sender: TObject);
342 procedure SelectThreadReloadActionExecute(Sender: TObject);
343 procedure SelectThreadReloadActionUpdate(Sender: TObject);
344 procedure SelectReservActionExecute(Sender: TObject);
345 procedure SelectReservActionUpdate(Sender: TObject);
346 procedure SelectNewRoundNameExecute(Sender: TObject);
347 procedure SelectDeleteRoundExecute(Sender: TObject);
348 procedure BoardFavoriteAddActionExecute(Sender: TObject);
349 procedure BoardFavoriteAddActionUpdate(Sender: TObject);
350 procedure LogFolderOpenActionExecute(Sender: TObject);
351 procedure LogFolderOpenActionUpdate(Sender: TObject);
352 procedure BrowsBoradHeadActionExecute(Sender: TObject);
353 procedure SortActiveColumnActionExecute(Sender: TObject);
354 procedure SortNextColumnActionExecute(Sender: TObject);
355 procedure SortPrevColumnActionExecute(Sender: TObject);
356 procedure StdToolBarVisibleActionExecute(Sender: TObject);
357 procedure AddressBarVisibleActionExecute(Sender: TObject);
358 procedure LinkBarVisibleActionExecute(Sender: TObject);
359 procedure ListToolBarVisibleActionExecute(Sender: TObject);
360 procedure ListNameBarVisibleActionExecute(Sender: TObject);
361 procedure BrowserToolBarVisibleActionExecute(Sender: TObject);
362 procedure BrowserNameBarVisibleActionExecute(Sender: TObject);
363 procedure MsgBarVisibleActionExecute(Sender: TObject);
364 procedure MsgBarCloseActionExecute(Sender: TObject);
365 procedure StatusBarVisibleActionExecute(Sender: TObject);
366 procedure CabinetBBSActionExecute(Sender: TObject);
367 procedure CabinetHistoryActionExecute(Sender: TObject);
368 procedure CabinetFavoriteActionExecute(Sender: TObject);
369 procedure CabinetVisibleActionExecute(Sender: TObject);
370 procedure CabinetCloseActionExecute(Sender: TObject);
371 procedure LargeIconActionExecute(Sender: TObject);
372 procedure SmallIconActionExecute(Sender: TObject);
373 procedure ListIconActionExecute(Sender: TObject);
374 procedure DetailIconActionExecute(Sender: TObject);
375 procedure StopActionExecute(Sender: TObject);
376 procedure ArrangeActionExecute(Sender: TObject);
377 procedure PaneInitActionExecute(Sender: TObject);
378 procedure BrowserTabVisibleActionExecute(Sender: TObject);
379 procedure BrowserTabTopActionExecute(Sender: TObject);
380 procedure BrowserTabBottomActionExecute(Sender: TObject);
381 procedure BrowserTabTabStyleActionExecute(Sender: TObject);
382 procedure BrowserTabButtonStyleActionExecute(Sender: TObject);
383 procedure BrowserTabFlatStyleActionExecute(Sender: TObject);
384 procedure SetFocusForBrowserActionExecute(Sender: TObject);
385 procedure SetFocusForBrowserActionUpdate(Sender: TObject);
386 procedure SetFocusForThreadListActionExecute(Sender: TObject);
387 procedure SetFocusForCabinetActionExecute(Sender: TObject);
388 procedure SetFocusForCabinetActionUpdate(Sender: TObject);
389 procedure ThreadlistMaxAndFocusActionExecute(Sender: TObject);
390 procedure BrowserMaxAndFocusActionExecute(Sender: TObject);
391 procedure UnSelectedListViewActionExecute(Sender: TObject);
392 procedure KidokuActionExecute(Sender: TObject);
393 procedure MidokuActionExecute(Sender: TObject);
394 procedure AllSelectActionExecute(Sender: TObject);
395 procedure AllSelectActionUpdate(Sender: TObject);
396 procedure ThreadSizeCalcForFileActionExecute(Sender: TObject);
399 procedure ClearResFilter;
400 procedure SetResRange(range: Integer);
401 procedure SetThreadAreaHorNormal;
402 procedure SetThreadAreaHorizontal(gls : TGikoListState);
403 procedure SetThreadAreaVerNormal;
404 procedure SetThreadAreaVertical(gls : TGikoListState);
405 procedure SetThreadReadProperty(read: Boolean);
406 procedure SelectThreadSaveToFile(dat: Boolean);
407 function GetSortProperties(List: TObject;var vSortOrder: Boolean): Boolean;
408 procedure RecalcThreadSize(limit : Integer);
411 procedure RepaintStatusBar;
413 { Published
\90é
\8c¾ }
414 //! TAction
\82ÅGetActiveContent
\82ªnil
\88È
\8aO
\82Å
\97L
\8cø
\82É
\82È
\82é
415 procedure DependActiveCntentActionUpdate(Sender: TObject);
416 //! 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é
417 procedure DependActiveCntentLogActionUpdate(Sender: TObject);
418 //! TAction
\82ÅActiveList
\82ªTBoard
\82Å
\97L
\8cø
\82É
\82È
\82é
419 procedure DependActiveListTBoardActionUpdate(Sender: TObject);
429 Windows, Math, Clipbrd,
430 Giko, GikoSystem, GikoUtil, BoardGroup,
431 FavoriteArrange, Favorite, MojuUtils,
432 Editor, ListSelect, Search, Option, Round,
433 KeySetting, Gesture, Kotehan, ToolBarSetting,
434 ToolBarUtil, NewBoard, HTMLCreate, IndividualAbon,
435 GikoBayesian, About, ShellAPI,
436 RoundName, RoundData, Menus, ListViewUtils,
437 ThreadControl, GikoMessage;
441 // *************************************************************************
442 //! TAction
\82ÅGetActiveContent
\82ªnil
\88È
\8aO
\82Å
\97L
\8cø
\82É
\82È
\82é
443 // *************************************************************************
444 procedure TGikoDM.DependActiveCntentActionUpdate(Sender: TObject);
446 TAction(Sender).Enabled := (GikoForm.GetActiveContent <> nil);
448 // *************************************************************************
449 //! TAction
\82ÅGetActiveContent
\82ªnil
\88È
\8aO
\82©
\82Â
\83\8d\83O
\82ð
\8e\9d\82Á
\82Ä
\82¢
\82é
450 // *************************************************************************
451 procedure TGikoDM.DependActiveCntentLogActionUpdate(Sender: TObject);
453 TAction(Sender).Enabled := (GikoForm.GetActiveContent <> nil)
454 and (GikoForm.GetActiveContent.IsLogFile);
456 // *************************************************************************
457 //! TAction
\82ÅActiveList
\82ªTBoard
\82Å
\97L
\8cø
\82É
\82È
\82é
458 // *************************************************************************
459 procedure TGikoDM.DependActiveListTBoardActionUpdate(Sender: TObject);
461 TAction(Sender).Enabled := (GikoForm.GetActiveList is TBoard);
463 // *************************************************************************
464 //! NG
\83\8f\81[
\83h
\95Ò
\8fW
465 // *************************************************************************
466 procedure TGikoDM.EditNGActionExecute(Sender: TObject);
468 //
\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
469 GikoSys.FAbon.EditNGwords;
471 // *************************************************************************
472 //! NG
\83\8f\81[
\83h
\93Ç
\82Ý
\8d\9e\82Ý
\81i
\8dÄ
\93Ç
\82Ý
\8d\9e\82Ý
\81j
473 // *************************************************************************
474 procedure TGikoDM.ReloadActionExecute(Sender: TObject);
476 //
\83\8a\83\8d\81[
\83h
\82ð
\8eÀ
\8ds
\81@
\8e¸
\94s
\82µ
\82½
\82ç
\83\81\83b
\83Z
\81[
\83W
\8fo
\97Í
477 if GikoSys.FAbon.ReLoadFromNGwordFile =false then begin
478 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);
480 //
\91S
\82Ä
\82Ì
\83^
\83u
\82É
\8dÄ
\95`
\89æ
\82ð
\90Ý
\92è
481 GikoForm.RepaintAllTabsBrowser();
484 // *************************************************************************
485 //! NG
\83\8f\81[
\83h
\93Ç
\82Ý
\8d\9e\82Ý
\81i
\88ê
\82Â
\8cã
\82ë
\81j
486 // *************************************************************************
487 procedure TGikoDM.GoFowardActionExecute(Sender: TObject);
489 //
\88ê
\82Â
\8cã
\82ë
\82Ì
\93Ç
\82Ý
\8d\9e\82Ý
\81@
\8e¸
\94s
\82µ
\82½
\82ç
\83\81\83b
\83Z
\81[
\83W
\8fo
\97Í
490 if GikoSys.FAbon.GoBack =false then begin
491 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);
493 //
\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
495 //
\91S
\82Ä
\82Ì
\83^
\83u
\82É
\8dÄ
\95`
\89æ
\82ð
\90Ý
\92è
496 GikoForm.RepaintAllTabsBrowser();
499 // *************************************************************************
500 //! NG
\83\8f\81[
\83h
\93Ç
\82Ý
\8d\9e\82Ý
\81i
\88ê
\82Â
\91O
\81j
501 // *************************************************************************
502 procedure TGikoDM.GoBackActionExecute(Sender: TObject);
504 //
\88ê
\82Â
\8cã
\82ë
\82Ì
\93Ç
\82Ý
\8d\9e\82Ý
\81@
\8e¸
\94s
\82µ
\82½
\82ç
\83\81\83b
\83Z
\81[
\83W
\8fo
\97Í
505 if GikoSys.FAbon.GoForward =false then begin
506 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);
508 //
\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
510 //
\91S
\82Ä
\82Ì
\83^
\83u
\82É
\8dÄ
\95`
\89æ
\82ð
\90Ý
\92è
511 GikoForm.RepaintAllTabsBrowser();
514 // *************************************************************************
515 //! 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
516 // *************************************************************************
517 procedure TGikoDM.RepaintStatusBar;
521 //
\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 s := GikoSys.FAbon.NGwordname;
523 GikoForm.StatusBar.Panels.Items[GiKo.NGWORDNAME_PANEL].Text := s;
524 //
\83X
\83e
\81[
\83^
\83X
\82Ì
\95\
\8e¦
\83T
\83C
\83Y
\82Ì
\83\8a\83T
\83C
\83Y
525 GikoForm.StatusBar.Panels[GiKo.NGWORDNAME_PANEL].Width
526 := Max(GikoForm.StatusBar.Canvas.TextWidth(s), 100);
527 GikoForm.StatusBarResize(nil);
529 // *************************************************************************
530 //!
\83A
\83h
\83\8c\83X
\83o
\81[
\82É
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83A
\83h
\83\8c\83X
\82Ö
\88Ú
\93®
\82·
\82é
531 // *************************************************************************
532 procedure TGikoDM.MoveToActionExecute(Sender: TObject);
537 //
\83A
\83h
\83\8c\83X
\83R
\83\93\83{
\83{
\83b
\83N
\83X
\82©
\82çURL
\82ð
\8eæ
\93¾
538 URL := Trim(GikoForm.AddressComboBox.Text);
540 GikoForm.MoveToURL(URL);
541 //
\88È
\89º
\81A
\97\9a\97ð
\82Ì
\8f\88\97\9d
542 idx := GikoForm.AddressComboBox.Items.IndexOf(URL);
543 if idx = -1 then begin
544 GikoForm.AddressComboBox.Items.Insert(0, URL);
545 if GikoForm.AddressComboBox.Items.Count > GikoSys.Setting.AddressHistoryCount then
546 GikoForm.AddressComboBox.Items.Delete(GikoForm.AddressComboBox.Items.Count - 1);
548 GikoForm.AddressComboBox.Items.Delete(idx);
549 GikoForm.AddressComboBox.Items.Insert(0, URL);
552 // *************************************************************************
553 //!
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\92Ç
\89Á
\83_
\83C
\83A
\83\8d\83O
\82ð
\8aJ
\82
554 // *************************************************************************
555 procedure TGikoDM.FavoriteAddActionExecute(Sender: TObject);
557 GikoForm.ShowFavoriteAddDialog(GikoForm.GetActiveContent);
559 // *************************************************************************
560 //!
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\90®
\97\9d\83_
\83C
\83A
\83\8d\83O
\82ð
\8aJ
\82
561 // *************************************************************************
562 procedure TGikoDM.FavoriteArrangeActionExecute(Sender: TObject);
564 Dlg: TFavoriteArrangeDialog;
566 Dlg := TFavoriteArrangeDialog.Create(GikoForm);
572 //
\83\8a\83\93\83N
\83o
\81[
\82É
\8dX
\90V
\82ð
\93`
\82¦
\82é
573 PostMessage( GikoForm.Handle, USER_SETLINKBAR, 0, 0 );
575 // *************************************************************************
576 //!
\83c
\83\8a\81[
\82ð
\91S
\82Ä
\95Â
\82¶
\82é
577 // *************************************************************************
578 procedure TGikoDM.FavoriteTreeViewCollapseActionExecute(Sender: TObject);
582 node := GikoForm.FavoriteTreeView.Items.GetFirstNode;
584 //
\83m
\81[
\83h
\82ª
\91±
\82
\8cÀ
\82è
\81@
\83m
\81[
\83h
\82ð
\8fk
\8f¬
\82³
\82¹
\82é
585 while node <> nil do begin
586 if node.HasChildren then
587 node.Expanded := False;
588 node := node.GetNext;
593 // *************************************************************************
594 //!
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\96¼
\91O
\82ð
\95Ò
\8fW
\82·
\82é
595 // *************************************************************************
596 procedure TGikoDM.FavoriteTreeViewRenameActionExecute(Sender: TObject);
601 if GikoForm.ClickNode = nil then
603 if GikoForm.ClickNode.IsFirstNode then
605 if GikoForm.ClickNode.Text = Favorite.FAVORITE_LINK_NAME then
607 GikoForm.FavoriteTreeView.ReadOnly := False;
608 if (GikoForm.TreeType = gttFavorite) and (GikoForm.CabinetPanel.Visible) then begin
609 node := GikoForm.ClickNode.Parent;
610 while node <> nil do begin
611 node.Expanded := True;
614 GikoForm.ClickNode.EditText;
616 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 );
618 //
\8dX
\90V
\82µ
\82½
\82±
\82Æ
\82ð
\8b³
\82¦
\82é
619 FavoriteDM.Modified := true;
622 // *************************************************************************
623 //!
\90V
\82µ
\82
\82¨
\8bC
\82É
\93ü
\82è
\82É
\83t
\83H
\83\8b\83_
\82ð
\8dì
\90¬
\82·
\82é
624 // *************************************************************************
625 procedure TGikoDM.FavoriteTreeViewNewFolderActionExecute(Sender: TObject);
627 NewFavFolder: TFavoriteFolder;
631 if GikoForm.ClickNode = nil then
635 if not (TObject(GikoForm.ClickNode.Data) is TFavoriteFolder) then begin
636 GikoForm.FavoriteTreeView.Selected := GikoForm.ClickNode.Parent;
637 GikoForm.ClickNode := GikoForm.ClickNode.Parent;
640 NewFavFolder := TFavoriteFolder.Create;
641 Node := GikoForm.FavoriteTreeView.Items.AddChildObject(GikoForm.ClickNode, '
\90V
\82µ
\82¢
\83t
\83H
\83\8b\83_', NewFavFolder);
642 Node.ImageIndex := 14;
643 Node.SelectedIndex := 14;
644 // FClickNode.Selected.Expanded := True;
645 GikoForm.FavoriteTreeView.Selected := Node;
646 GikoForm.ClickNode := Node;
647 //
\8dX
\90V
\82µ
\82½
\82±
\82Æ
\82ð
\8b³
\82¦
\82é
648 FavoriteDM.Modified := true;
649 FavoriteTreeViewRenameAction.Execute;
654 // *************************************************************************
655 //!
\82±
\82Ì
\82¨
\8bC
\82É
\93ü
\82è
\82ð
\8dí
\8f\9c\82·
\82é
656 // *************************************************************************
657 procedure TGikoDM.FavoriteTreeViewDeleteActionExecute(Sender: TObject);
659 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';
660 DEL_MSG = '
\81g^0
\81h
\82ð
\8dí
\8f\9c\82µ
\82Ü
\82·
\81B
\82æ
\82ë
\82µ
\82¢
\82Å
\82·
\82©
\81H';
661 DEL_TITLE = '
\8dí
\8f\9c\8am
\94F';
664 if GikoForm.ClickNode = nil then
666 if GikoForm.ClickNode.IsFirstNode then
668 if (GetKeyState( VK_SHIFT ) and $80000000) = 0 then begin
669 if GikoForm.ClickNode.Text = Favorite.FAVORITE_LINK_NAME then begin
670 if MsgBox(GikoForm.Handle, DEL_LINK_MSG, DEL_TITLE, MB_YESNO or MB_ICONWARNING or MB_DEFBUTTON2) <> ID_YES then
673 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
678 GikoForm.ClickNode.Delete;
679 //
\8dX
\90V
\82µ
\82½
\82±
\82Æ
\82ð
\8b³
\82¦
\82é
680 FavoriteDM.Modified := true;
685 // *************************************************************************
686 //!
\82±
\82Ì
\83t
\83H
\83\8b\83_
\82É
\93ü
\82Á
\82Ä
\82¢
\82é
\82¨
\8bC
\82É
\93ü
\82è
\82ð
\91S
\82Ä
\8aJ
\82
687 // *************************************************************************
688 procedure TGikoDM.FavoriteTreeViewBrowseFolderActionExecute(
691 GikoForm.FavoriteBrowseFolder( GikoForm.ClickNode );
693 // *************************************************************************
694 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\82¨
\8bC
\82É
\93ü
\82è
\82ð
\83_
\83E
\83\93\83\8d\81[
\83h
\82·
\82é
695 // *************************************************************************
696 procedure TGikoDM.FavoriteTreeViewReloadActionExecute(Sender: TObject);
698 FavThread: TFavoriteThreadItem;
699 FavBoard: TFavoriteBoardItem;
702 if (GikoForm.ClickNode = nil) then Exit;
704 shiftDown := GetAsyncKeyState(VK_SHIFT) = Smallint($8001);
706 if TObject( GikoForm.ClickNode.Data ) is TFavoriteThreadItem then begin
707 FavThread := TFavoriteThreadItem( GikoForm.ClickNode.Data );
708 if FavThread.Item <> nil then
709 GikoForm.DownloadContent(FavThread.Item, shiftDown);
710 end else if TObject( GikoForm.ClickNode.Data ) is TFavoriteBoardItem then begin
711 FavBoard := TFavoriteBoardItem( GikoForm.ClickNode.Data );
712 GikoForm.DownloadList(FavBoard.Item, shiftDown);
716 // *************************************************************************
717 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ÌURL
\82ð
\83R
\83s
\81[
\82·
\82é
718 // *************************************************************************
719 procedure TGikoDM.FavoriteTreeViewURLCopyActionExecute(Sender: TObject);
722 if GikoForm.ClickNode = nil then Exit;
724 if (TObject(GikoForm.ClickNode.Data) is TFavoriteItem) then begin
725 Clipboard.AsText := TFavoriteItem( GikoForm.ClickNode.Data ).URL + #13#10;
728 // *************************************************************************
729 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\94Â
\82Ì
\96¼
\91O
\82ð
\83R
\83s
\81[
\82·
\82é
730 // *************************************************************************
731 procedure TGikoDM.FavoriteTreeViewNameCopyActionExecute(Sender: TObject);
734 if GikoForm.ClickNode = nil then Exit;
736 if (TObject(GikoForm.ClickNode.Data) is TFavoriteItem) then begin
738 TFavoriteItem(GikoForm.ClickNode.Data).GetItemTitle + #13#10;
741 // *************************************************************************
742 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82Ì
\96¼
\91O
\82ÆURL
\82ð
\83R
\83s
\81[
\82·
\82é
743 // *************************************************************************
744 procedure TGikoDM.FavoriteTreeViewNameURLCopyActionExecute(
747 favItem : TFavoriteItem;
750 if GikoForm.ClickNode = nil then Exit;
752 if (TObject(GikoForm.ClickNode.Data) is TFavoriteItem) then begin
753 favItem := TFavoriteItem(GikoForm.ClickNode.Data);
754 Clipboard.AsText := favItem.GetItemTitle + #13#10 +
755 favItem.URL + #13#10;
759 // *************************************************************************
760 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\8dí
\8f\9c\82·
\82é
761 // *************************************************************************
762 procedure TGikoDM.FavoriteTreeViewLogDeleteActionExecute(Sender: TObject);
764 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';
765 DEL_TITLE = '
\8dí
\8f\9c\8am
\94F';
767 ThreadItem: TThreadItem;
768 FavThread: TFavoriteThreadItem;
771 if GikoForm.ClickNode = nil then Exit;
772 if not (TObject(GikoForm.ClickNode.Data) is TFavoriteThreadItem) then Exit;
774 FavThread := TFavoriteThreadItem( GikoForm.ClickNode.Data );
775 ThreadItem := FavThread.Item;
778 if GikoSys.Setting.DeleteMsg then begin
779 if (GetKeyState( VK_SHIFT ) and $80000000) = 0 then
780 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
784 GikoForm.DeleteHistory(ThreadItem);
785 GikoForm.DeleteTab(ThreadItem);
786 ThreadItem.DeleteLogFile;
788 GikoForm.ListView.Refresh;
793 // *************************************************************************
794 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\83u
\83\89\83E
\83U
\82Å
\95\
\8e¦
\82·
\82é
795 // *************************************************************************
796 procedure TGikoDM.FavoriteTreeViewBrowseThreadActionExecute(
799 threadItem : TThreadItem;
802 if GikoForm.ClickNode = nil then Exit;
804 if (TObject(GikoForm.ClickNode.Data) is TFavoriteThreadItem) then begin
806 threadItem := TFavoriteThreadItem( GikoForm.ClickNode.Data ).Item;
807 if threadItem = nil then
809 GikoSys.OpenBrowser( threadItem.URL, gbtAuto );
813 //!
\83\8c\83X
\82Ì
\8di
\8d\9e\82Ý
\83t
\83B
\83\8b\83^
\81[
\82ð
\8bó
\82É
\82·
\82é
814 procedure TGikoDM.ClearResFilter;
816 FilterList : TStringList;
818 //
\83t
\83B
\83\8b\83^
\95¶
\8e\9a\97ñ
\82ð
\8bó
\82É
\82·
\82é
819 FilterList := TStringList.Create;
821 GikoSys.FSelectResFilter.LoadFromStringList( FilterList );
822 GikoSys.FSelectResFilter.Reverse := False;
826 GikoForm.SelectResWord := '';
828 // *************************************************************************
829 //!
\83\8c\83X
\82Ì
\95\
\8e¦
\94Í
\88Í
\82ð
\90Ý
\92è
\82·
\82é
830 // *************************************************************************
831 procedure TGikoDM.SetResRange(range: Integer);
833 if GikoSys.ResRange <> range then begin
834 GikoSys.ResRange := range;
835 //
\83t
\83B
\83\8b\83^
\95¶
\8e\9a\97ñ
\82ð
\8bó
\82É
\82·
\82é
837 GikoForm.RepaintAllTabsBrowser();
840 // *************************************************************************
841 //!
\8dÅ
\90V100
\83\8c\83X
\82Ì
\82Ý
\95\
\8e¦
842 // *************************************************************************
843 procedure TGikoDM.OnlyAHundredResActionExecute(Sender: TObject);
845 if (GikoForm.ActiveContent <> nil) and (GikoForm.ActiveContent.Browser <> nil)
846 and (GikoForm.ActiveContent.Browser.Busy) then Exit;
848 GikoForm.ResRangeMenuSelect := 100;
849 OnlyAHundredResAction.Checked := True;
850 //
\81@
\95\
\8e¦
\94Í
\88Í
\82ð
\90Ý
\92è
\82·
\82é
853 // *************************************************************************
854 //!
\96¢
\93Ç
\83\8c\83X
\82Ì
\82Ý
\95\
\8e¦
855 // *************************************************************************
856 procedure TGikoDM.OnlyKokoResActionExecute(Sender: TObject);
858 if (GikoForm.ActiveContent <> nil) and (GikoForm.ActiveContent.Browser <> nil)
859 and (GikoForm.ActiveContent.Browser.Busy) then Exit;
861 GikoForm.ResRangeMenuSelect := Ord( grrKoko );
862 OnlyKokoResAction.Checked := True;
864 //
\81@
\95\
\8e¦
\94Í
\88Í
\82ð
\90Ý
\92è
\82·
\82é
865 SetResRange(Ord( grrKoko ));
867 // *************************************************************************
868 //!
\90V
\92\85\83\8c\83X
\82Ì
\82Ý
\95\
\8e¦
869 // *************************************************************************
870 procedure TGikoDM.OnlyNewResActionExecute(Sender: TObject);
872 if (GikoForm.ActiveContent <> nil) and (GikoForm.ActiveContent.Browser <> nil)
873 and (GikoForm.ActiveContent.Browser.Busy) then Exit;
875 GikoForm.ResRangeMenuSelect := Ord( grrNew );
876 OnlyNewResAction.Checked := True;
878 //
\81@
\95\
\8e¦
\94Í
\88Í
\82ð
\90Ý
\92è
\82·
\82é
879 SetResRange(Ord( grrNew ));
881 // *************************************************************************
882 //!
\83X
\83\8c\83b
\83h
\95\
\8e¦
\83G
\83\8a\83A
\92Ê
\8fí
\95\
\8e¦
\82É
\82·
\82é
\92\8d)ListOrientation = gloHorizontal
\81@
883 // *************************************************************************
884 procedure TGikoDM.SetThreadAreaHorNormal;
886 //
\92Ê
\8fí
\95\
\8e¦
\82É
\82·
\82é
887 if GikoForm.ActiveContent <> nil then
888 SendMessage(GikoForm.ActiveContent.Browser.Handle, WM_SETREDRAW, 0, 0); //
\95`
\89æ
\92â
\8e~
889 GikoForm.ViewPanel.Width := GikoForm.BrowserSizeWidth;
890 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_MAX;
891 BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_MIN;
892 GikoSys.Setting.ListWidthState := glsNormal;
893 if GikoForm.ActiveContent <> nil then
894 SendMessage(GikoForm.ActiveContent.Browser.Handle, WM_SETREDRAW, 1, 0); //
\95`
\89æ
896 // *************************************************************************
897 //!
\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@
898 // *************************************************************************
899 procedure TGikoDM.SetThreadAreaHorizontal(gls : TGikoListState);
901 if GikoForm.ActiveContent <> nil then
902 SendMessage(GikoForm.ActiveContent.Browser.Handle, WM_SETREDRAW, 0, 0); //
\95`
\89æ
\92â
\8e~
903 if GikoSys.Setting.ListWidthState = glsNormal then
904 GikoForm.BrowserSizeWidth := GikoForm.ViewPanel.Width;
906 if (gls = glsMax) then begin
907 GikoForm.ViewPanel.Width := 1;
908 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_NORMAL;
909 BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_MIN;
910 GikoSys.Setting.ListWidthState := glsMax;
911 end else if (gls = glsMin) then begin
912 GikoForm.ViewPanel.Width := GikoForm.ThreadMainPanel.Width - 80;
913 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_MAX;
914 BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_NORMAL;
915 GikoSys.Setting.ListWidthState := glsMin;
917 if GikoForm.ActiveContent <> nil then
918 SendMessage(GikoForm.ActiveContent.Browser.Handle, WM_SETREDRAW, 1, 0); //
\95`
\89æ
920 // *************************************************************************
921 //!
\83X
\83\8c\83b
\83h
\95\
\8e¦
\83G
\83\8a\83A
\92Ê
\8fí
\95\
\8e¦
\82É
\82·
\82é
\92\8d)ListOrientation = gloVertical
922 // *************************************************************************
923 procedure TGikoDM.SetThreadAreaVerNormal;
925 //
\92Ê
\8fí
\95\
\8e¦
\82É
\82·
\82é
926 if GikoForm.ActiveContent <> nil then
927 SendMessage(GikoForm.ActiveContent.Browser.Handle, WM_SETREDRAW, 0, 0); //
\95`
\89æ
\92â
\8e~
928 GikoForm.ViewPanel.Height := GikoForm.BrowserSizeHeight;
929 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_MAX;
930 BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_MIN;
931 GikoSys.Setting.ListHeightState := glsNormal;
932 if GikoForm.ActiveContent <> nil then
933 SendMessage(GikoForm.ActiveContent.Browser.Handle, WM_SETREDRAW, 1, 0); //
\95`
\89æ
935 // *************************************************************************
936 //!
\83X
\83\8c\83b
\83h
\95\
\8e¦
\83G
\83\8a\83A
\8dÅ
\91å/
\8dÅ
\8f¬
\95\
\8e¦
\82É
\82·
\82é
\92\8d)ListOrientation = gloVertical
937 // *************************************************************************
938 procedure TGikoDM.SetThreadAreaVertical(gls : TGikoListState);
940 if GikoForm.ActiveContent <> nil then
941 SendMessage(GikoForm.ActiveContent.Browser.Handle, WM_SETREDRAW, 0, 0); //
\95`
\89æ
\92â
\8e~
942 if GikoSys.Setting.ListHeightState = glsNormal then
943 GikoForm.BrowserSizeHeight := GikoForm.ViewPanel.Height;
944 if (gls = glsMin) then begin
945 GikoForm.ViewPanel.Height := GikoForm.ThreadMainPanel.Height - GikoForm.BrowserCoolBar.Height - 7;
946 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_MAX;
947 BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_NORMAL;
948 GikoSys.Setting.ListHeightState := glsMin;
949 end else if (gls = glsMax) then begin
950 GikoForm.ViewPanel.Height := 1;
951 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_NORMAL;
952 BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_MIN;
953 GikoSys.Setting.ListHeightState := glsMax;
955 if GikoForm.ActiveContent <> nil then
956 SendMessage(GikoForm.ActiveContent.Browser.Handle, WM_SETREDRAW, 1, 0); //
\95`
\89æ
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);
1065 GikoSys.LoadKeySetting(Editor.ActionList, GikoSys.GetEditorKeyFileName);
1067 Editor.BodyEdit.SetFocus;
1069 // *************************************************************************
1070 //!
\83X
\83\8c\82ð
\83u
\83\89\83E
\83U
\82Å
\95\
\8e¦
\82·
\82é
1071 // *************************************************************************
1072 procedure TGikoDM.IEActionExecute(Sender: TObject);
1074 ShowThreadAction.Execute;
1076 // *************************************************************************
1077 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\83u
\83\89\83E
\83U
\82Å
\95\
\8e¦
\82·
\82é
1078 // *************************************************************************
1079 procedure TGikoDM.ShowThreadActionExecute(Sender: TObject);
1081 ThreadItem: TThreadItem;
1083 ThreadItem := GikoForm.GetActiveContent;
1084 if ThreadItem = nil then Exit;
1085 GikoSys.OpenBrowser(ThreadItem.URL, gbtAuto);
1087 // *************************************************************************
1088 //!
\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é
1089 // *************************************************************************
1090 procedure TGikoDM.ShowBoardActionExecute(Sender: TObject);
1092 ThreadItem: TThreadItem;
1094 ThreadItem := GikoForm.GetActiveContent;
1095 if ThreadItem = nil then Exit;
1096 GikoSys.OpenBrowser(ThreadItem.ParentBoard.URL, gbtAuto);
1098 // *************************************************************************
1099 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ÌURL
\82ð
\83R
\83s
\81[
\82·
\82é
1100 // *************************************************************************
1101 procedure TGikoDM.URLCopyActionExecute(Sender: TObject);
1106 if TObject(GikoForm.GetActiveContent) is TBoard then
1107 s := s + TBoard(GikoForm.GetActiveContent).URL + #13#10
1108 else if TObject(GikoForm.GetActiveContent) is TThreadItem then
1109 s := s + TThreadItem(GikoForm.GetActiveContent).URL + #13#10;
1111 Clipboard.AsText := s;
1113 // *************************************************************************
1114 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\96¼
\82ð
\83R
\83s
\81[
\82·
\82é
1115 // *************************************************************************
1116 procedure TGikoDM.NameCopyActionExecute(Sender: TObject);
1121 if TObject(GikoForm.GetActiveContent) is TBoard then
1122 s := s + TBoard(GikoForm.GetActiveContent).Title + #13#10
1123 else if TObject(GikoForm.GetActiveContent) is TThreadItem then
1124 s := s + TThreadItem(GikoForm.GetActiveContent).Title + #13#10;
1126 Clipboard.AsText := s;
1128 // *************************************************************************
1129 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\96¼
\82ÆURL
\82ð
\83R
\83s
\81[
\82·
\82é
1130 // *************************************************************************
1131 procedure TGikoDM.NameURLCopyActionExecute(Sender: TObject);
1136 if TObject(GikoForm.GetActiveContent) is TBoard then
1137 s := s + TBoard(GikoForm.GetActiveContent).Title + #13#10 + TBoard(GikoForm.GetActiveContent).URL + #13#10
1138 else if TObject(GikoForm.GetActiveContent) is TThreadItem then
1139 s := s + TThreadItem(GikoForm.GetActiveContent).Title + #13#10 + TThreadItem(GikoForm.GetActiveContent).URL + #13#10;
1141 Clipboard.AsText := s;
1143 // *************************************************************************
1144 //!
\95\
\8e¦
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\83_
\83E
\83\93\83\8d\81[
\83h
\82·
\82é
1145 // *************************************************************************
1146 procedure TGikoDM.ItemReloadActionExecute(Sender: TObject);
1148 ThreadItem: TThreadItem;
1151 ThreadItem := GikoForm.GetActiveContent;
1152 shiftDown := GetAsyncKeyState(VK_SHIFT) = Smallint($8001);
1153 if ThreadItem <> nil then
1154 GikoForm.DownloadContent(ThreadItem, shiftDown);
1156 // *************************************************************************
1157 //!
\8c»
\8dÝ
\8aJ
\82¢
\82Ä
\82¢
\82é
\83^
\83u
\82ð
\95Â
\82¶
\82é
1158 // *************************************************************************
1159 procedure TGikoDM.BrowserTabCloseActionExecute(Sender: TObject);
1163 idx := GikoForm.BrowserTab.TabIndex;
1164 if idx <> -1 then begin
1165 if GikoForm.BrowserTab.Tabs.Objects[idx] <> nil then begin
1166 GikoForm.DeleteTab(TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[idx]));
1170 // *************************************************************************
1171 //!
\83^
\83u
\82ª
\82P
\82Â
\88È
\8fã
\82 \82ê
\82ª
\97L
\8cø
\82É
\82·
\82éUpdate
\83C
\83x
\83\93\83g
1172 // *************************************************************************
1173 procedure TGikoDM.BrowserTabCloseActionUpdate(Sender: TObject);
1175 TAction(Sender).Enabled := (GikoForm.BrowserTab.Tabs.Count > 0);
1177 // *************************************************************************
1178 //!
\8c»
\8dÝ
\8aJ
\82¢
\82Ä
\82¢
\82é
\83^
\83u
\88È
\8aO
\82ð
\95Â
\82¶
\82é
1179 // *************************************************************************
1180 procedure TGikoDM.NotSelectTabCloseActionExecute(Sender: TObject);
1185 idx := GikoForm.BrowserTab.TabIndex;
1186 if idx = -1 then Exit;
1187 GikoForm.BrowserTab.Tabs.BeginUpdate;
1188 for i := GikoForm.BrowserTab.Tabs.Count - 1 downto GikoForm.BrowserTab.TabIndex + 1 do begin
1189 TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[i]).Free;
1190 GikoForm.BrowserTab.Tabs.Delete(i);
1192 if idx > 0 then begin
1193 for i := GikoForm.BrowserTab.TabIndex - 1 downto 0 do begin
1194 TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[i]).Free;
1195 GikoForm.BrowserTab.Tabs.Delete(i);
1198 GikoForm.BrowserTab.Tabs.EndUpdate;
1200 // *************************************************************************
1201 //!
\83^
\83u
\82ª
\82Q
\82Â
\88È
\8fã
\82 \82ê
\82ª
\97L
\8cø
\82É
\82·
\82éUpdate
\83C
\83x
\83\93\83g
1202 // *************************************************************************
1203 procedure TGikoDM.NotSelectTabCloseActionUpdate(Sender: TObject);
1205 TAction(Sender).Enabled := (GikoForm.BrowserTab.Tabs.Count > 1);
1207 // *************************************************************************
1208 //!
\91S
\82Ä
\82Ì
\83^
\83u
\82ð
\95Â
\82¶
\82é
1209 // *************************************************************************
1210 procedure TGikoDM.AllTabCloseActionExecute(Sender: TObject);
1214 if GikoSys.Setting.ShowDialogForAllTabClose then
1215 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
1218 GikoForm.ActiveContent := nil;
1219 GikoForm.BrowserNullTab.Thread := nil;
1220 GikoForm.BrowserTab.OnChange := nil;
1221 GikoForm.BrowserTab.Tabs.BeginUpdate;
1222 for i := GikoForm.BrowserTab.Tabs.Count - 1 downto 0 do begin
1223 TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[i]).Free;
1225 GikoForm.BrowserTab.Tabs.Clear;
1226 GikoForm.BrowserTab.Tabs.EndUpdate;
1227 GikoForm.BrowserTab.OnChange := GikoForm.BrowserTabChange;
1228 GikoForm.SetContent(GikoForm.BrowserNullTab);
1229 GikoForm.Caption := CAPTION_NAME ;
1231 // *************************************************************************
1232 //!
\8c»
\8dÝ
\8aJ
\82¢
\82Ä
\82¢
\82é
\83^
\83u
\82Ì
\83X
\83\8c\83b
\83h
\82ð
\8dí
\8f\9c\82·
\82é
1233 // *************************************************************************
1234 procedure TGikoDM.ActiveLogDeleteActionExecute(Sender: TObject);
1236 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';
1237 DEL_TITLE = '
\8dí
\8f\9c\8am
\94F';
1240 ThreadItem: TThreadItem;
1242 idx := GikoForm.BrowserTab.TabIndex;
1243 if idx <> -1 then begin
1244 if GikoForm.BrowserTab.Tabs.Objects[idx] <> nil then begin
1245 ThreadItem := TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[idx]).Thread;
1246 if GikoSys.Setting.DeleteMsg then
1247 if (GetKeyState( VK_SHIFT ) and $80000000) = 0 then
1248 if MsgBox(GikoForm.Handle, StringReplace( DEL_MSG, '^0', ThreadItem.Title, [rfReplaceAll] ) , DEL_TITLE, MB_YESNO or MB_ICONWARNING or MB_DEFBUTTON2) <> ID_YES then
1250 GikoForm.DeleteTab(TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[idx]));
1251 ThreadItem.DeleteLogFile;
1252 if ThreadItem.ParentBoard = GikoForm.ActiveList then
1253 GikoForm.ListView.Refresh;
1257 // *************************************************************************
1258 //!
\88ê
\94Ô
\8d¶
\82Ì
\83^
\83u
\82ð
\91I
\91ð
\82·
\82é
1259 // *************************************************************************
1260 procedure TGikoDM.LeftmostTabSelectActionExecute(Sender: TObject);
1262 if GikoForm.BrowserTab.Tabs.Count > 0 then begin
1263 GikoForm.BrowserTab.TabIndex := 0;
1264 GikoForm.BrowserTab.OnChange(nil);
1267 // *************************************************************************
1268 //!
\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
1269 // *************************************************************************
1270 procedure TGikoDM.LeftmostTabSelectActionUpdate(Sender: TObject);
1272 TAction(Sender).Enabled := (GikoForm.BrowserTab.Tabs.Count > 0)
1273 and (GikoForm.BrowserTab.TabIndex <> 0);
1275 // *************************************************************************
1276 //!
\8d¶
\82Ì
\83^
\83u
\82ð
\91I
\91ð
\82·
\82é
1277 // *************************************************************************
1278 procedure TGikoDM.LeftTabSelectActionExecute(Sender: TObject);
1280 if GikoForm.BrowserTab.Tabs.Count > 0 then begin
1281 if GikoForm.BrowserTab.TabIndex = -1 then begin
1282 GikoForm.BrowserTab.TabIndex := 0;
1283 GikoForm.BrowserTab.OnChange(nil);
1284 end else if GikoForm.BrowserTab.TabIndex > 0 then begin
1285 GikoForm.BrowserTab.TabIndex := GikoForm.BrowserTab.TabIndex - 1;
1286 GikoForm.BrowserTab.OnChange(nil);
1290 // *************************************************************************
1291 //!
\89E
\82Ì
\83^
\83u
\82ð
\91I
\91ð
\82·
\82é
1292 // *************************************************************************
1293 procedure TGikoDM.RightTabSelectActionExecute(Sender: TObject);
1295 if GikoForm.BrowserTab.Tabs.Count > 0 then begin
1296 if GikoForm.BrowserTab.TabIndex = -1 then begin
1297 GikoForm.BrowserTab.TabIndex := GikoForm.BrowserTab.Tabs.Count - 1;
1298 GikoForm.BrowserTab.OnChange(nil);
1299 end else if GikoForm.BrowserTab.TabIndex < (GikoForm.BrowserTab.Tabs.Count - 1) then begin
1300 GikoForm.BrowserTab.TabIndex := GikoForm.BrowserTab.TabIndex + 1;
1301 GikoForm.BrowserTab.OnChange(nil);
1305 // *************************************************************************
1306 //!
\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
1307 // *************************************************************************
1308 procedure TGikoDM.RightTabSelectActionUpdate(Sender: TObject);
1310 TAction(Sender).Enabled := (GikoForm.BrowserTab.Tabs.Count > 0)
1311 and (GikoForm.BrowserTab.TabIndex <> GikoForm.BrowserTab.Tabs.Count - 1);
1313 // *************************************************************************
1314 //!
\88ê
\94Ô
\89E
\82Ì
\83^
\83u
\82ð
\91I
\91ð
\82·
\82é
1315 // *************************************************************************
1316 procedure TGikoDM.RightmostTabSelectActionExecute(Sender: TObject);
1318 if GikoForm.BrowserTab.Tabs.Count > 0 then begin
1319 GikoForm.BrowserTab.TabIndex := GikoForm.BrowserTab.Tabs.Count - 1;
1320 GikoForm.BrowserTab.OnChange(nil);
1323 // *************************************************************************
1324 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\82¨
\8bC
\82É
\93ü
\82è
\82É
\92Ç
\89Á
1325 // *************************************************************************
1326 procedure TGikoDM.ThreadFavoriteAddActionExecute(Sender: TObject);
1328 if TObject(GikoForm.ListView.Selected.Data) is TThreadItem then
1329 GikoForm.ShowFavoriteAddDialog(TObject(GikoForm.ListView.Selected.Data));
1331 // *************************************************************************
1332 //!
\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
1333 // *************************************************************************
1334 procedure TGikoDM.ThreadFavoriteAddActionUpdate(Sender: TObject);
1336 TAction(Sender).Enabled := (GikoForm.GetActiveList is TBoard)
1337 and (GikoForm.ListView.SelCount > 0);
1339 // *************************************************************************
1340 //!
\83\8c\83X
\82Ì
\93à
\97e
\82ð
\8di
\82è
\8d\9e\82Þ
1341 // *************************************************************************
1342 procedure TGikoDM.SelectResActionExecute(Sender: TObject);
1344 Dlg: TListSelectDialog;
1345 FilterList : TStringList;
1348 Dlg := TListSelectDialog.Create(GikoForm);
1350 Dlg.SelectComboBox.Items.Assign(GikoSys.Setting.SelectTextList);
1351 Dlg.SelectComboBox.Text := GikoForm.SelectResWord;
1353 if Dlg.ModalResult = mrOK then begin
1354 SelectResAction.Checked := True;
1355 if Length( Dlg.SelectComboBox.Text ) = 0 then begin
1356 //
\8bó
\93ü
\97Í
\82Å OK
\82Í
\8di
\82è
\8d\9e\82Ý
\89ð
\8f\9c\82Æ
\93¯
\88Ó
\8b`
1357 ResRangeAction.Execute;
1359 GikoSys.ResRange := Ord( grrSelect );
1361 //
\8dÅ
\8cã
\82É
\90Ý
\92è
\82µ
\82½
\82à
\82Ì
\82ð
\8ao
\82¦
\82Ä
\82¨
\82
1362 GikoForm.SelectResWord := Dlg.SelectComboBox.Text;
1364 //
\8c\9f\8dõ
\97\9a\97ð
\82Ì
\8dX
\90V
1365 idx := GikoSys.Setting.SelectTextList.IndexOf(Dlg.SelectComboBox.Text);
1367 GikoSys.Setting.SelectTextList.Delete(idx);
1368 GikoSys.Setting.SelectTextList.Insert(0, Dlg.SelectComboBox.Text);
1369 while Dlg.SelectComboBox.Items.Count > 100 do begin
1370 Dlg.SelectComboBox.Items.Delete(Dlg.SelectComboBox.Items.Count - 1);
1374 if GikoForm.SelectComboBoxPanel.Visible then
1375 GikoForm.SelectComboBox.Items.Assign( GikoSys.Setting.SelectTextList );
1379 //
\83t
\83B
\83\8b\83^
\82Ì
\90Ý
\92è
1380 FilterList := TStringList.Create;
1382 GikoSys.FSelectResFilter.Reverse := True;
1383 FilterList.Delimiter := ' '; //
\8bæ
\90Ø
\82è
\8eq
\82ð
\94¼
\8ap
\83X
\83y
\81[
\83X
\82É
\90Ý
\92è
1384 FilterList.DelimitedText := Dlg.SelectComboBox.Text;
1386 GikoSys.FSelectResFilter.LoadFromStringList( FilterList );
1390 GikoForm.RepaintAllTabsBrowser();
1393 //
\83L
\83\83\83\93\83Z
\83\8b
1394 if GikoSys.ResRange <> Ord( grrSelect ) then
1395 ResRangeAction.Execute;
1402 // *************************************************************************
1403 //!
\91S
\82Ä
\82Ì
\83\8c\83X
\82ð
\95\
\8e¦
\82·
\82é
1404 // *************************************************************************
1405 procedure TGikoDM.AllResActionExecute(Sender: TObject);
1407 if(GikoForm.ActiveContent <> nil) and (GikoForm.ActiveContent.Browser <> nil )
1408 and (GikoForm.ActiveContent.Browser.Busy) then Exit;
1410 GikoForm.ResRangeMenuSelect := Ord( grrAll );
1411 AllResAction.Checked := True;
1413 //
\81@
\95\
\8e¦
\94Í
\88Í
\82ð
\90Ý
\92è
\82·
\82é
1414 SetResRange(Ord( grrAll ));
1416 // *************************************************************************
1417 //!
\83\8c\83X
\82Ì
\95\
\8e¦
\94Í
\88Í
\82ð
\90Ý
\92è
1418 // *************************************************************************
1419 procedure TGikoDM.ResRangeActionExecute(Sender: TObject);
1421 case GikoForm.ResRangeMenuSelect of
1422 Ord( grrAll ): AllResAction.Execute;
1423 Ord( grrKoko ): OnlyKokoResAction.Execute;
1424 Ord( grrNew ): OnlyNewResAction.Execute;
1425 100: OnlyAHundredResAction.Execute;
1429 // *************************************************************************
1430 //!
\82±
\82Ì
\83X
\83\8c\83b
\83h
\82ð
\8aÜ
\82Þ
\83X
\83\8c\83b
\83h
\88ê
\97\97\82ð
\95\
\8e¦
1431 // *************************************************************************
1432 procedure TGikoDM.UpBoardActionExecute(Sender: TObject);
1434 GikoForm.SelectTreeNode( GikoForm.GetActiveContent.ParentBoard, True );
1436 // *************************************************************************
1437 //!
\8ew
\92è
\82µ
\82½
\94Ô
\8d\86\82Ì
\83\8c\83X
\82É
\94ò
\82Ô
1438 // *************************************************************************
1439 procedure TGikoDM.JumpToNumOfResActionExecute(Sender: TObject);
1445 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
1446 str := ZenToHan(str);
1447 res := StrToIntDef(str, -1);
1448 if (res > 0) and (res <= GikoForm.GetActiveContent.Count) then begin
1449 GikoForm.ActiveContent.Move(IntToStr(res));
1450 SetFocusForBrowserAction.Execute;
1451 end else if res > GikoForm.GetActiveContent.Count then begin
1452 GikoForm.ActiveContent.Move(IntToStr(GikoForm.GetActiveContent.Count));
1453 SetFocusForBrowserAction.Execute;
1457 // *************************************************************************
1458 //!
\83A
\83N
\83e
\83B
\83u
\82È
\83^
\83u
\82æ
\82è
\89E
\82ð
\95Â
\82¶
\82é
1459 // *************************************************************************
1460 procedure TGikoDM.RightTabCloseActionExecute(Sender: TObject);
1465 idx := GikoForm.BrowserTab.TabIndex;
1466 if idx = -1 then Exit;
1467 GikoForm.BrowserTab.Tabs.BeginUpdate;
1468 for i := GikoForm.BrowserTab.Tabs.Count - 1 downto idx + 1 do begin
1469 TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[i]).Free;
1470 GikoForm.BrowserTab.Tabs.Delete(i);
1472 GikoForm.BrowserTab.Tabs.EndUpdate;
1474 // *************************************************************************
1475 //!
\83^
\83u
\82Ì
\90\94\82ª
\82Q
\88È
\8fã
\82Å
\97L
\8cø
\82ÈUpdate
\83C
\83x
\83\93\83g
1476 // *************************************************************************
1477 procedure TGikoDM.RightTabCloseActionUpdate(Sender: TObject);
1479 TAction(Sender).Enabled := (GikoForm.BrowserTab.Tabs.Count > 1);
1481 // *************************************************************************
1482 //!
\83A
\83N
\83e
\83B
\83u
\82È
\83^
\83u
\82æ
\82è
\8d¶
\82ð
\95Â
\82¶
\82é
1483 // *************************************************************************
1484 procedure TGikoDM.LeftTabCloseActionExecute(Sender: TObject);
1489 idx := GikoForm.BrowserTab.TabIndex;
1490 if idx = -1 then Exit;
1491 GikoForm.BrowserTab.Tabs.BeginUpdate;
1492 if idx > 0 then begin
1493 for i := idx - 1 downto 0 do begin
1494 TBrowserRecord(GikoForm.BrowserTab.Tabs.Objects[i]).Free;
1495 GikoForm.BrowserTab.Tabs.Delete(i);
1498 GikoForm.BrowserTab.Tabs.EndUpdate;
1500 ////////////////////////////////
\83X
\83\8c\83b
\83h
\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
1501 procedure TGikoDM.DataModuleCreate(Sender: TObject);
1504 // *************************************************************************
1505 //!
\83\8d\83O
\8c\9f\8dõ
\83_
\83C
\83A
\83\8d\83O
\82ð
\95\
\8e¦
\82·
\82é
1506 // *************************************************************************
1507 procedure TGikoDM.SearchActionExecute(Sender: TObject);
1512 if GikoForm.SearchDialog = nil then begin
1513 if (GikoForm.GetActiveList is TCategory) or (GikoForm.GetActiveList is TBoard) then
1514 chk := GikoForm.GetActiveList
1518 GikoForm.SearchDialog := TSearchDialog.Create(GikoForm, chk);
1519 GikoForm.SearchDialog.SearchComboBox.Items.Assign( GikoSys.Setting.SelectTextList );
1523 GikoForm.SearchDialog.Show;
1527 // *************************************************************************
1528 //!
\83I
\83v
\83V
\83\87\83\93\83_
\83C
\83A
\83\8d\83O
\82ð
\95\
\8e¦
\82·
\82é
1529 // *************************************************************************
1530 procedure TGikoDM.OptionActionExecute(Sender: TObject);
1534 Dlg := TOptionDialog.Create(GikoForm);
1541 // *************************************************************************
1542 //!
\8f\84\89ñ
\83_
\83C
\83A
\83\8d\83O
\82ð
\95\
\8e¦
\82·
\82é
1543 // *************************************************************************
1544 procedure TGikoDM.RoundActionExecute(Sender: TObject);
1548 Dlg := TRoundDialog.Create(GikoForm);
1555 // *************************************************************************
1556 //!
\83L
\81[
\90Ý
\92è
\83_
\83C
\83A
\83\8d\83O
\82ð
\8aJ
\82
1557 // *************************************************************************
1558 procedure TGikoDM.KeySettingActionExecute(Sender: TObject);
1560 Dlg: TKeySettingForm;
1562 Dlg := TKeySettingForm.Create(GikoForm);
1564 if Dlg.ShowModal = mrOk then begin
1565 GikoSys.SaveKeySetting(GikoFormActionList, Setting.KEY_SETTING_FILE_NAME);
1566 GikoSys.SaveKeySetting(Dlg.EditorForm.ActionList, Setting.KEY_SETTING_FILE_NAME);
1567 GikoSys.Setting.Gestures.SaveGesture( GikoSys.Setting.GetGestureFileName );
1572 MouseGesture.UnHook;
1573 MouseGesture.OnGestureStart := GikoForm.OnGestureStart;
1574 MouseGesture.OnGestureMove := GikoForm.OnGestureMove;
1575 MouseGesture.OnGestureEnd := GikoForm.OnGestureEnd;
1576 if GikoSys.Setting.GestureEnabled then begin
1577 GikoSys.Setting.Gestures.ClearGesture;
1578 GikoSys.Setting.Gestures.LoadGesture(
1579 GikoSys.Setting.GetGestureFileName, GikoFormActionList );
1580 MouseGesture.SetHook( GikoForm.Handle );
1584 // *************************************************************************
1585 //!
\83L
\81[
\90Ý
\92è
\83_
\83C
\83A
\83\8d\83O
\82ð
\8aJ
\82
1586 // *************************************************************************
1587 procedure TGikoDM.KotehanActionExecute(Sender: TObject);
1589 Dlg: TKotehanDialog;
1591 Dlg := TKotehanDialog.Create(GikoForm);
1598 // *************************************************************************
1599 //!
\83c
\81[
\83\8b\83o
\81[
\90Ý
\92è
\83_
\83C
\83A
\83\8d\83O
\82ð
\8aJ
\82
1600 // *************************************************************************
1601 procedure TGikoDM.ToolBarSettingActionExecute(Sender: TObject);
1603 Dlg: TToolBarSettingDialog;
1606 Dlg := TToolBarSettingDialog.Create(GikoForm, GikoFormActionList);
1608 Dlg.AddToolBar(GikoForm.StdToolBar, gttStandard);
1609 Dlg.AddToolBar(GikoForm.ListToolBar, gttList);
1610 Dlg.AddToolBar(GikoForm.BrowserToolBar, gttBrowser);
1611 case GikoForm.ToolBarSettingSender of
1612 tssMain: Dlg.ToolBarIndex := 0;
1613 tssList: Dlg.ToolBarIndex := 1;
1614 tssBrowser: Dlg.ToolBarIndex := 2;
1616 if Dlg.ShowModal = mrOK then begin
1617 GikoForm.SetToolBarPopup;
1619 //
\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é
1620 for i := 0 to GikoForm.MainCoolBar.Bands.Count - 1 do begin
1621 GikoForm.MainCoolBar.Bands[i].MinWidth :=
1622 GikoForm.MainCoolBar.Bands[i].MinWidth + 1;
1623 GikoForm.MainCoolBar.Bands[i].MinWidth :=
1624 GikoForm.MainCoolBar.Bands[i].MinWidth - 1;
1626 for i := 0 to GikoForm.ListCoolBar.Bands.Count - 1 do begin
1627 GikoForm.ListCoolBar.Bands[i].MinWidth :=
1628 GikoForm.ListCoolBar.Bands[i].MinWidth + 1;
1629 GikoForm.ListCoolBar.Bands[i].MinWidth :=
1630 GikoForm.ListCoolBar.Bands[i].MinWidth - 1;
1632 for i := 0 to GikoForm.BrowserCoolBar.Bands.Count - 1 do begin
1633 GikoForm.BrowserCoolBar.Bands[i].MinWidth :=
1634 GikoForm.BrowserCoolBar.Bands[i].MinWidth + 1;
1635 GikoForm.BrowserCoolBar.Bands[i].MinWidth :=
1636 GikoForm.BrowserCoolBar.Bands[i].MinWidth - 1;
1639 SaveToolBarSetting(GikoForm.StdToolBar);
1640 SaveToolBarSetting(GikoForm.ListToolBar);
1641 //ListToolBar
\82É
\82¢
\82é
\82©
\82à
\82µ
\82ê
\82È
\82¢
\8di
\8d\9e\82ÝComboBox
\82ð
\94z
\92u
1642 GikoForm.SetSelectComboBox;
1643 GikoForm.ResetBandInfo( GikoForm.ListCoolBar, GikoForm.ListToolBar );
1644 SaveToolBarSetting(GikoForm.BrowserToolBar);
1648 GikoForm.ToolBarSettingSender := tssNone;
1651 // *************************************************************************
1652 //!
\83~
\83\85\81[
\83g
1653 // *************************************************************************
1654 procedure TGikoDM.MuteActionExecute(Sender: TObject);
1656 GikoSys.Setting.Mute := not GikoSys.Setting.Mute;
1658 ////////////////////////////////
\83c
\81[
\83\8b\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
1659 // *************************************************************************
1660 //!
\83X
\83\8c\83b
\83h
\88ê
\97\97\82ð
\83_
\83E
\83\93\83\8d\81[
\83h
\82·
\82é
1661 // *************************************************************************
1662 procedure TGikoDM.TreeSelectBoradReloadExecute(Sender: TObject);
1665 TmpTreeNode: TTreeNode;
1667 TmpTreeNode := GikoForm.ClickNode;
1668 GikoForm.TreeView.Selected := GikoForm.ClickNode;
1671 if TObject(TmpTreeNode.Data) is TBoard then
1672 Board := TBoard(TmpTreeNode.Data)
1673 else if TObject(TmpTreeNode.Data) is TFavoriteBoardItem then
1674 Board := TFavoriteBoardItem(TmpTreeNode.Data).Item;
1676 if Board <> nil then
1677 GikoForm.DownloadList(Board);
1679 // *************************************************************************
1680 //!
\91I
\91ð
\82³
\82ê
\82½
\83X
\83\8c\83b
\83h
\82ð
\83_
\83E
\83\93\83\8d\81[
\83h
\82·
\82é
1681 // *************************************************************************
1682 procedure TGikoDM.TreeSelectThreadReloadExecute(Sender: TObject);
1684 ThreadItem: TThreadItem;
1685 TmpTreeNode: TTreeNode;
1687 TmpTreeNode := GikoForm.ClickNode;
1688 GikoForm.TreeView.Selected := GikoForm.ClickNode;
1691 if TObject(TmpTreeNode.Data) is TThreadItem then
1692 ThreadItem := TThreadItem(TmpTreeNode.Data)
1693 else if TObject(TmpTreeNode.Data) is TFavoriteThreadItem then
1694 ThreadItem := TFavoriteThreadItem(TmpTreeNode.Data).Item;
1696 if ThreadItem <> nil then
1697 GikoForm.DownloadContent(ThreadItem);
1699 // *************************************************************************
1700 //!
\91I
\91ð
\82³
\82ê
\82½
\94Â
\82ÌURL
\82ð
\83R
\83s
\81[
\82·
\82é
1701 // *************************************************************************
1702 procedure TGikoDM.TreeSelectURLCopyExecute(Sender: TObject);
1704 TmpTreeNode: TTreeNode;
1707 TmpTreeNode := GikoForm.ClickNode;
1708 GikoForm.TreeView.Selected := GikoForm.ClickNode;
1709 if TObject(TmpTreeNode.Data) is TBoard then begin
1710 s := TBoard(TmpTreeNode.Data).URL + #13#10;
1711 end else if TObject(TmpTreeNode.Data) is TFavoriteBoardItem then begin
1712 s := TFavoriteBoardItem(TmpTreeNode.Data).URL + #13#10;
1713 end else if (TObject(TmpTreeNode.Data) is TThreadItem) then begin
1714 s := TThreadItem(TmpTreeNode.Data).URL + #13#10;
1715 end else if TObject(TmpTreeNode.Data) is TFavoriteThreadItem then begin
1716 s := TFavoriteThreadItem(TmpTreeNode.Data).URL + #13#10;
1718 Clipboard.AsText := s;
1720 // *************************************************************************
1721 //!
\91I
\91ð
\82³
\82ê
\82½
\94Â
\82Ì
\96¼
\91O
\82ÆURL
\82ð
\83R
\83s
\81[
\82·
\82é
1722 // *************************************************************************
1723 procedure TGikoDM.TreeSelectNameURLCopyExecute(Sender: TObject);
1725 TmpTreeNode: TTreeNode;
1728 TmpTreeNode := GikoForm.ClickNode;
1729 GikoForm.TreeView.Selected := GikoForm.ClickNode;
1730 if TObject(TmpTreeNode.Data) is TBoard then begin
1731 s := TBoard(TmpTreeNode.Data).Title + #13#10 + TBoard(TmpTreeNode.Data).URL + #13#10;
1732 end else if TObject(TmpTreeNode.Data) is TFavoriteBoardItem then begin
1733 s := TFavoriteBoardItem(TmpTreeNode.Data).Item.Title + #13#10 + TFavoriteBoardItem(TmpTreeNode.Data).URL + #13#10;
1734 end else if (TObject(TmpTreeNode.Data) is TThreadItem) then begin
1735 s := TThreadItem(TmpTreeNode.Data).Title + #13#10 + TThreadItem(TmpTreeNode.Data).URL + #13#10;
1736 end else if TObject(TmpTreeNode.Data) is TFavoriteThreadItem then begin
1737 s := TFavoriteThreadItem(TmpTreeNode.Data).Item.Title + #13#10 + TFavoriteThreadItem(TmpTreeNode.Data).URL + #13#10;
1739 Clipboard.AsText := s;
1741 // *************************************************************************
1742 //!
\82¨
\8bC
\82É
\93ü
\82è
\82É
\92Ç
\89Á
\82·
\82é
1743 // *************************************************************************
1744 procedure TGikoDM.TreeSelectFavoriteAddActionExecute(Sender: TObject);
1746 GikoForm.ShowFavoriteAddDialog(TObject(GikoForm.ClickNode.Data));
1748 // *************************************************************************
1749 //!
\94Â
\96¼
\8c\9f\8dõ
1750 // *************************************************************************
1751 procedure TGikoDM.TreeSelectSearchBoardNameExecute(Sender: TObject);
1755 CurItem : TTreeNode;
1758 if InputQuery('
\94Â
\96¼
\8c\9f\8dõ','
\94Â
\96¼
\82Ì
\93ü
\97Í',s) then begin
1761 if GikoForm.TreeView.Selected = nil then
1762 CurItem := GikoForm.TreeView.Items.GetFirstNode
1764 CurItem := GikoForm.TreeView.Selected.GetNext;
1765 if CurItem = nil then
1766 CurItem := GikoForm.TreeView.Items.GetFirstNode;
1768 while CurItem <> nil do begin
1769 if (CurItem.ImageIndex <> 2) and (VaguePos(s,CurItem.Text) <> 0) then begin
1772 CurItem := CurItem.GetNext;
1775 if CurItem = nil then begin
1776 msg := '
\90æ
\93ª
\82É
\96ß
\82è
\82Ü
\82·
\82©
\81H';
1777 if MsgBox(GikoForm.Handle, msg, '', MB_YESNO or MB_ICONEXCLAMATION) = mrYes then begin
1778 CurItem := GikoForm.TreeView.Items.GetFirstNode;
1782 GikoForm.TreeView.Select(CurItem);
1783 GikoForm.TreeView.SetFocus;
1785 GikoForm.TreeView.Select(CurItem);
1786 GikoForm.TreeView.SetFocus;
1787 msg := '
\8e\9f\82É
\8ds
\82«
\82Ü
\82·
\82©
\81H';
1788 if MsgBox(GikoForm.Handle, msg, '', MB_YESNO or MB_ICONEXCLAMATION) = mrYes then begin
1801 // *************************************************************************
1802 //!
\91I
\91ð
\82³
\82ê
\82½
\94Â
\82Ì
\96¼
\91O
\82ð
\83R
\83s
\81[
\82·
\82é
1803 // *************************************************************************
1804 procedure TGikoDM.TreeSelectNameCopyExecute(Sender: TObject);
1808 GikoForm.TreeView.Selected := GikoForm.ClickNode;
1809 s := GikoForm.ClickNode.Text;
1810 Clipboard.AsText := s;
1812 ////////////////////////////////
\83c
\83\8a\81[
\83|
\83b
\83v
\83A
\83b
\83v
\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
1813 // *************************************************************************
1814 //!
\83\8d\83O
\83C
\83\93\81^
\83\8d\83O
\83A
\83E
\83g
\82ð
\82·
\82é
1815 // *************************************************************************
1816 procedure TGikoDM.LoginActionExecute(Sender: TObject);
1821 if GikoSys.Dolib.Connected then begin
1822 //
\83\8d\83O
\83A
\83E
\83g
1823 GikoSys.Dolib.Disconnect;
1824 LoginAction.Checked := False;
1825 GikoForm.AddMessageList(GikoSys.GetGikoMessage(gmLogout), nil, gmiOK);
1826 LoginAction.Caption := '
\83\8d\83O
\83C
\83\93(&L)';
1828 TmpCursor := GikoForm.ScreenCursor;
1829 GikoForm.ScreenCursor := crHourGlass;
1831 //
\92Ê
\8fí
\83\8d\83O
\83C
\83\93
1832 if not GikoSys.Setting.ForcedLogin then begin
1833 GikoSys.Dolib.ClientUA := 'gikoNavi/1.00';
1834 GikoSys.Dolib.UserName := GikoSys.Setting.UserID;
1835 GikoSys.Dolib.Password := GikoSys.Setting.Password;
1836 if GikoSys.Setting.ReadProxy then begin
1837 GikoSys.Dolib.ProxyAddress := GikoSys.Setting.ReadProxyAddress;
1838 GikoSys.Dolib.ProxyPort := GikoSys.Setting.ReadProxyPort;
1840 GikoSys.Dolib.ProxyAddress := '';
1841 GikoSys.Dolib.ProxyPort := 0;
1843 if GikoSys.Dolib.Connect then begin
1844 LoginAction.Checked := True;
1845 GikoForm.AddMessageList(GikoSys.GetGikoMessage(gmLogin) + GikoSys.Setting.UserID, nil, gmiOK);
1846 LoginAction.Caption := '
\83\8d\83O
\83A
\83E
\83g(&L)';
1847 //LoginToolButton.Style := tbsCheck;
1849 // 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);
1850 GikoForm.AddMessageList(GikoSys.Dolib.ErrorMsg, nil, gmiNG);
1851 GikoForm.PlaySound('Error');
1852 LoginAction.Checked := False;
1853 //LoginToolButton.Down := False;
1854 ///LoginToolButton.Style := tbsButton;
1857 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
1858 + '
\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
1859 + '
\82±
\82Ì
\83\82\81[
\83h
\82Å
\83\8d\83O
\83C
\83\93\82ð
\8e\8e\82Ý
\82Ü
\82·
\82©
\81H' + #13#10;
1860 if MsgBox(GikoForm.Handle, msg, '
\8cx
\8d\90', MB_YESNO or MB_ICONEXCLAMATION) = IDYES then begin
1861 GikoSys.Dolib.ClientUA := 'gikoNavi/1.00';
1862 GikoSys.Dolib.UserName := GikoSys.Setting.UserID;
1863 GikoSys.Dolib.Password := GikoSys.Setting.Password;
1864 if GikoSys.Setting.ReadProxy then begin
1865 GikoSys.Dolib.ProxyAddress := GikoSys.Setting.ReadProxyAddress;
1866 GikoSys.Dolib.ProxyPort := GikoSys.Setting.ReadProxyPort;
1868 GikoSys.Dolib.ProxyAddress := '';
1869 GikoSys.Dolib.ProxyPort := 0;
1871 //SSL
\8fá
\8aQ
\97p
\8b
\90§
\83\8d\83O
\83C
\83\93
1872 GikoSys.Dolib.ForcedConnect;
1873 if GikoSys.Dolib.Connect then begin
1874 LoginAction.Checked := True;
1875 GikoForm.AddMessageList(GikoSys.GetGikoMessage(gmForceLogin) + GikoSys.Setting.UserID, nil, gmiOK);
1876 LoginAction.Caption := '
\83\8d\83O
\83A
\83E
\83g(&L)';
1877 //LoginToolButton.Style := tbsCheck;
1879 // 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);
1880 GikoForm.AddMessageList(GikoSys.Dolib.ErrorMsg, nil, gmiNG);
1881 GikoForm.PlaySound('Error');
1882 LoginAction.Checked := False;
1883 //LoginToolButton.Down := False;
1884 //LoginToolButton.Style := tbsButton;
1887 LoginAction.Checked := False;
1888 //LoginToolButton.Down := False;
1889 //LoginToolButton.Style := tbsButton;
1893 GikoForm.ScreenCursor := TmpCursor;
1897 // *************************************************************************
1898 //!
\83{
\81[
\83h
\8dX
\90V
\83_
\83C
\83A
\83\8d\83O
\82ð
\95\
\8e¦
\82·
\82é
1899 // *************************************************************************
1900 procedure TGikoDM.NewBoardActionExecute(Sender: TObject);
1902 Dlg: TNewBoardDialog;
1905 if GikoForm.EditorFormExists then begin
1906 Msg := '
\83\8c\83X
\83G
\83f
\83B
\83^
\82ð
\91S
\82Ä
\95Â
\82¶
\82Ä
\82
\82¾
\82³
\82¢';
1907 MsgBox(GikoForm.Handle, Msg, '
\83G
\83\89\81[', MB_OK or MB_ICONSTOP);
1910 Dlg := TNewBoardDialog.Create(GikoForm);
1917 // *************************************************************************
1918 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\8dí
\8f\9c\82·
\82é
1919 // *************************************************************************
1920 procedure TGikoDM.LogDeleteActionExecute(Sender: TObject);
1922 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';
1923 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';
1924 DEL_TITLE = '
\8dí
\8f\9c\8am
\94F';
1926 ThreadItem: TThreadItem;
1927 TmpListItem: TListItem;
1931 List := TList.Create;
1933 TmpListItem := GikoForm.ListView.Selected;
1934 while TmpListItem <> nil do begin
1935 if TObject(TmpListItem.Data) is TThreadItem then begin
1936 ThreadItem := TThreadItem(TmpListItem.Data);
1937 if ThreadItem.IsLogFile then
1938 List.Add(ThreadItem);
1940 TmpListItem := GikoForm.ListView.GetNextItem(TmpListItem, sdAll, [isSelected]);
1943 if GikoSys.Setting.DeleteMsg and (List.Count > 0) then begin
1944 if (GetKeyState( VK_SHIFT ) and $80000000) = 0 then begin
1945 if List.Count = 1 then begin
1946 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
1949 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
1955 for i := 0 to List.Count - 1 do begin
1956 ThreadItem := TThreadItem(List[i]);
1957 GikoForm.DeleteHistory(ThreadItem);
1958 GikoForm.DeleteTab(ThreadItem);
1959 ThreadItem.DeleteLogFile;
1961 GikoForm.TreeView.Refresh; // UnRead
\82Ì
\95\
\8e¦
\82ð
\8dX
\90V
1963 GikoForm.ListView.Refresh;
1968 // *************************************************************************
1969 //! 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Ê
1970 // *************************************************************************
1971 procedure TGikoDM.LogDeleteActionUpdate(Sender: TObject);
1973 TAction(Sender).Enabled := (GikoForm.GetActiveList is TBoard)
1974 and (GikoForm.ListView.SelCount > 0);
1976 // *************************************************************************
1977 //!
\8di
\8d\9e\82Ý
\97\9a\97ð
\82ð
\8fÁ
\8b\8e\82·
\82é
1978 // *************************************************************************
1979 procedure TGikoDM.SelectTextClearActionExecute(Sender: TObject);
1981 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';
1982 DEL_TITLE = '
\8dí
\8f\9c\8am
\94F';
1984 if (GetKeyState( VK_SHIFT ) and $80000000) = 0 then
1985 if MsgBox(GikoForm.Handle, DEL_MSG, DEL_TITLE, MB_YESNO or MB_ICONWARNING or MB_DEFBUTTON2) <> ID_YES then
1987 GikoSys.Setting.SelectTextList.Clear;
1988 GikoForm.SelectComboBox.Items.Clear;
1989 GikoForm.SelectComboBox.Text := '';
1990 GikoForm.SetListViewType( gvtAll );
1992 // *************************************************************************
1993 //!
\83\8c\83X
\83G
\83f
\83B
\83^
\82Ì
\96¼
\91O
\97\9a\97ð
\82ð
\8fÁ
\8b\8e\82·
\82é
1994 // *************************************************************************
1995 procedure TGikoDM.NameTextClearActionExecute(Sender: TObject);
1997 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';
1998 DEL_TITLE = '
\8dí
\8f\9c\8am
\94F';
2000 if (GetKeyState( VK_SHIFT ) and $80000000) = 0 then
2001 if MsgBox(GikoForm.Handle, DEL_MSG, DEL_TITLE, MB_YESNO or MB_ICONWARNING or MB_DEFBUTTON2) <> ID_YES then
2003 GikoSys.Setting.NameList.Clear;
2004 GikoForm.AllEditroFormNameTextClearClear;
2006 // *************************************************************************
2007 //!
\83\8c\83X
\83G
\83f
\83B
\83^
\82Ì
\83\81\81[
\83\8b\97\9a\97ð
\82ð
\8fÁ
\8b\8e\82·
\82é
2008 // *************************************************************************
2009 procedure TGikoDM.MailTextClearActionExecute(Sender: TObject);
2011 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';
2012 DEL_TITLE = '
\8dí
\8f\9c\8am
\94F';
2014 if (GetKeyState( VK_SHIFT ) and $80000000) = 0 then
2015 if MsgBox(GikoForm.Handle, DEL_MSG, DEL_TITLE, MB_YESNO or MB_ICONWARNING or MB_DEFBUTTON2) <> ID_YES then
2017 GikoSys.Setting.MailList.Clear;
2018 GikoForm.AllEditroFormMailTextClearClear;
2020 // *************************************************************************
2021 //!
\83M
\83R
\83i
\83r
\82ð
\8fI
\97¹
\82·
\82é
2022 // *************************************************************************
2023 procedure TGikoDM.ExitActionExecute(Sender: TObject);
2027 // *************************************************************************
2028 //!
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\83G
\83N
\83X
\83|
\81[
\83g
\81@
\8eÀ
\8ds
\91O
\8f\88\97\9d
2029 // *************************************************************************
2030 procedure TGikoDM.ExportFavoriteFileBeforeExecute(Sender: TObject);
2032 ExportFavoriteFile.Dialog.FileName := FavoriteDM.GetFavoriteFilePath;
2034 // *************************************************************************
2035 //!
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\83G
\83N
\83X
\83|
\81[
\83g
\81@
\8eÀ
\8ds
\8f\88\97\9d
2036 // *************************************************************************
2037 procedure TGikoDM.ExportFavoriteFileAccept(Sender: TObject);
2039 if FavoriteDM.SaveFavoriteFile( ExportFavoriteFile.Dialog.FileName ) Then begin
2040 ShowMessage('
\83t
\83@
\83C
\83\8b\82ð
\8fo
\97Í
\82µ
\82Ü
\82µ
\82½');
2042 ShowMessage('
\83t
\83@
\83C
\83\8b\82Ì
\8fo
\97Í
\82É
\8e¸
\94s
\82µ
\82Ü
\82µ
\82½');
2045 // *************************************************************************
2046 //!
\91I
\91ð
\83X
\83\8c\83b
\83h
\82ð
\83t
\83@
\83C
\83\8b\82É
\95Û
\91¶
\82·
\82é
2047 // *************************************************************************
2048 procedure TGikoDM.SelectThreadSaveToFile(dat: Boolean);
2055 List := TList.Create;
2057 GikoForm.ScreenCursor := crHourGlass;
2058 GikoForm.SelectListItem(List);
2059 if ((GikoSys.Setting.ListOrientation = gloVertical) and
2060 (GikoSys.Setting.ListHeightState = glsMax)) or
2061 ((GikoSys.Setting.ListOrientation = gloHorizontal) and
2062 (GikoSys.Setting.ListWidthState = glsMax)) then
2063 ShowMessage('
\83X
\83\8c\83b
\83h
\88ê
\97\97\82ð
\95\
\8e¦
\82µ
\82Ä
\82
\82¾
\82³
\82¢')
2064 else if(List.Count = 0) then
2065 ShowMessage('
\83X
\83\8c\83b
\83h
\82ð
\91I
\91ð
\82µ
\82Ä
\82
\82¾
\82³
\82¢')
2068 SaveDialog.Title := '
\91I
\91ð
\83X
\83\8c\83b
\83h
\82ðdat
\82Ì
\82Ü
\82Ü
\95Û
\91¶';
2069 SaveDialog.Filter := 'DAT
\83t
\83@
\83C
\83\8b(*.dat)|*.dat';
2071 SaveDialog.Title := '
\91I
\91ð
\83X
\83\8c\83b
\83h
\82ðHTML
\89»
\82µ
\82Ä
\95Û
\91¶';
2072 SaveDialog.Filter := 'HTML
\83t
\83@
\83C
\83\8b(*.html)|*.html';
2074 for i := 0 to List.Count - 1 do begin
2075 if (TObject(List[i]) is TThreadItem) and (TThreadItem(List[i]).IsLogFile) then begin
2077 SaveDialog.FileName := TThreadItem(List[i]).FileName;
2079 SaveDialog.FileName := ReplaseNoValidateChar(TThreadItem(List[i]).Title) + '.html';
2081 if SaveDialog.Execute then begin
2083 CopyFile(PChar(TThreadItem(List[i]).FilePath),
2084 PChar(SaveDialog.FileName), true);
2086 html := TStringList.Create;
2087 title := TThreadItem(List[i]).Title;
2089 HTMLCreater.CreateHTML3(html, TThreadItem(List[i]), title);
2090 html.SaveToFile(SaveDialog.FileName);
2091 THTMLCreate.SkinorCSSFilesCopy(ExtractFilePath(SaveDialog.FileName));
2101 GikoForm.ScreenCursor := crDefault;
2105 // *************************************************************************
2106 //!
\91I
\91ð
\83X
\83\8c\83b
\83h
\82ðHTML
\89»
\82µ
\82Ä
\95Û
\91¶
2107 // *************************************************************************
2108 procedure TGikoDM.SelectItemSaveForHTMLExecute(Sender: TObject);
2110 SelectThreadSaveToFile(false);
2112 // *************************************************************************
2113 //!
\91I
\91ð
\83X
\83\8c\83b
\83h
\82ðDAT
\8c`
\8e®
\82Ì
\82Ü
\82Ü
\95Û
\91¶
2114 // *************************************************************************
2115 procedure TGikoDM.SelectItemSaveForDatExecute(Sender: TObject);
2117 SelectThreadSaveToFile(true);
2119 // *************************************************************************
2120 //!
\83^
\83u
\82Ì
\8f\87\94Ô
\82ð
\95Û
\91¶
2121 // *************************************************************************
2122 procedure TGikoDM.TabsSaveActionExecute(Sender: TObject);
2124 if not GikoForm.SaveTabURLs then begin
2125 if TabsSaveAction.Tag = 0 then
2126 ShowMessage('
\95Û
\91¶
\82·
\82é
\83^
\83u
\82ª
\82 \82è
\82Ü
\82¹
\82ñ')
2127 else if TabsSaveAction.Tag = 1 then
2128 GikoDM.TabsOpenAction.Tag := -1;
2131 // *************************************************************************
2132 //!
\83^
\83u
\82Ì
\8f\87\94Ô
\82ð
\95\9c\8c³
2133 // *************************************************************************
2134 procedure TGikoDM.TabsOpenActionExecute(Sender: TObject);
2136 if TabsOpenAction.Tag <> -1 then begin
2137 if not GikoForm.LoadTabURLs then begin
2138 if TabsOpenAction.Tag = 0 then
2139 ShowMessage('
\95\
\8e¦
\82·
\82é
\83^
\83u
\82ª
\82 \82è
\82Ü
\82¹
\82ñ
\81B');
2143 // *************************************************************************
2144 //!
\83^
\83u
\82Ì
\8f\87\94Ô
\82ð
\8e©
\93®
\95Û
\91¶
2145 // *************************************************************************
2146 procedure TGikoDM.TabAutoSaveActionExecute(Sender: TObject);
2148 GikoForm.SaveTabURLs;
2150 // *************************************************************************
2151 //!
\83^
\83u
\82Ì
\8f\87\94Ô
\82ð
\8e©
\93®
\95\9c\8c³
2152 // *************************************************************************
2153 procedure TGikoDM.TabAutoLoadActionExecute(Sender: TObject);
2155 GikoForm.LoadTabURLs;
2157 // *************************************************************************
2158 //! Be2ch
\82É
\83\8d\83O
\83C
\83\93/
\83\8d\83O
\83A
\83E
\83g
\82·
\82é
2159 // *************************************************************************
2160 procedure TGikoDM.BeLogInOutActionExecute(Sender: TObject);
2162 GikoSys.Setting.BeLogin := not GikoSys.Setting.BeLogin;
2164 // *************************************************************************
2165 //! Be2ch
\82É
\83\8d\83O
\83C
\83\93/
\83\8d\83O
\83A
\83E
\83g
\82·
\82é
\82ÌUpdate
\83C
\83x
\83\93\83g
2166 // *************************************************************************
2167 procedure TGikoDM.BeLogInOutActionUpdate(Sender: TObject);
2169 if (GikoSys.Setting.BeUserID <> '') and (GikoSys.Setting.BeCode <> '') then begin
2170 if (GikoSys.Setting.BeLogin) then BeLogInOutAction.Checked := true
2171 else BeLogInOutAction.Checked := false;
2172 BeLogInOutAction.Enabled := true
2174 BeLogInOutAction.Enabled := false;
2176 ////////////////////////////////
\83t
\83@
\83C
\83\8b\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
2177 // *************************************************************************
2178 //!
\83R
\83R
\82Ü
\82Å
\93Ç
\82ñ
\82¾
2179 // *************************************************************************
2180 procedure TGikoDM.KokomadeActionExecute(Sender: TObject);
2183 ThreadItem: TThreadItem;
2185 No := GikoForm.KokoPopupMenu.Tag;
2186 if No = 0 then Exit;
2187 ThreadItem := GikoForm.GetActiveContent;
2188 if ThreadItem = nil then Exit;
2189 ThreadItem.Kokomade := No;
2190 GikoForm.ActiveContent.Thread.ScrollTop :=
2191 OleVariant(IHTMLDocument2(GikoForm.ActiveContent.Browser.Document)).Body.ScrollTop;
2192 GikoForm.ActiveContent.Repaint := true;
2193 GikoForm.InsertBrowserTab(GikoForm.ActiveContent.Thread, true);
2194 //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é
2195 //Application.ProcessMessages;
2197 // *************************************************************************
2198 //!
\91S
\95\94\93Ç
\82ñ
\82¾
2199 // *************************************************************************
2200 procedure TGikoDM.ZenbuActionExecute(Sender: TObject);
2202 ThreadItem: TThreadItem;
2204 ThreadItem := GikoForm.GetActiveContent;
2205 if ThreadItem = nil then Exit;
2206 ThreadItem.Kokomade := -1;
2207 GikoForm.ActiveContent.Thread.ScrollTop :=
2208 OleVariant(IHTMLDocument2(GikoForm.ActiveContent.Browser.Document)).Body.ScrollTop;
2209 GikoForm.ActiveContent.Repaint := true;
2210 GikoForm.InsertBrowserTab(GikoForm.ActiveContent.Thread, true);
2211 //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é
2212 //Application.ProcessMessages;
2214 // *************************************************************************
2215 //!
\83R
\83R
\82É
\83\8c\83X
2216 // *************************************************************************
2217 procedure TGikoDM.KokoResActionExecute(Sender: TObject);
2219 Editor: TEditorForm;
2223 Number := GikoForm.KokoPopupMenu.Tag;
2224 if Number = 0 then Exit;
2225 Item := GikoForm.GetActiveContent;
2226 if Item = nil then Exit;
2228 Editor := TEditorForm.Create(GikoForm);
2229 Editor.SetThreadItem(Item);
2230 GikoSys.LoadKeySetting(Editor.ActionList, GikoSys.GetEditorKeyFileName);
2231 Editor.BodyEdit.Text := '>>' + IntToStr(Number) + #13#10;
2233 Editor.BodyEdit.SetFocus;
2235 // *************************************************************************
2236 //!
\91I
\91ð
\82µ
\82½
\83\8c\83X
\82ð
\83R
\83s
\81[
\82·
\82é
2237 // *************************************************************************
2238 procedure TGikoDM.KoreCopyExecute(Sender: TObject);
2240 GikoForm.KonoresCopy(GikoForm.KokoPopupMenu.Tag, true);
2242 // *************************************************************************
2243 //!
\91I
\91ð
\82µ
\82½
\83\8c\83X
\82ð
\83R
\83s
\81[
\82·
\82é
2244 // *************************************************************************
2245 procedure TGikoDM.SameIDResAnchorActionExecute(Sender: TObject);
2247 ThreadItem : TThreadItem;
2248 No, count, rc : Integer;
2252 No := GikoForm.KokoPopupMenu.Tag;
2253 if No = 0 then Exit;
2254 ThreadItem := GikoForm.GetActiveContent;
2255 if ThreadItem = nil then Exit;
2256 count := GikoSys.GetSameIDResCount(No, GikoForm.ActiveContent.Thread);
2258 if count > 20 then begin
2259 rc := GikoUtil.MsgBox(GikoForm.Handle,
2260 '20
\8cÂ
\88È
\8fã
\82 \82è
\82Ü
\82·
\82ª
\81A
\82·
\82×
\82Ä
\95\
\8e¦
\82µ
\82Ü
\82·
\82©
\81H',
2261 'ID
\83|
\83b
\83v
\83A
\83b
\83v
\8cx
\8d\90',
2262 MB_YESNO or MB_ICONQUESTION);
2263 limited := rc <> ID_YES;
2265 body := GikoSys.GetSameIDResAnchor(No, ThreadItem, limited);
2266 GikoForm.ActiveContent.IDAnchorPopup(body);
2268 // *************************************************************************
2269 //!
\82±
\82Ì
\83\8c\83X
\82 \82Ú
\81`
\82ñ
\81@
\81i
\92Ê
\8fí
\81j
2270 // *************************************************************************
2271 procedure TGikoDM.IndividualAbon1ActionExecute(Sender: TObject);
2273 GikoForm.IndividualAbon(GikoForm.KokoPopupMenu.Tag, 1);
2275 // *************************************************************************
2276 //!
\82±
\82Ì
\83\8c\83X
\82 \82Ú
\81`
\82ñ
\81@
\81i
\93§
\96¾
\81j
2277 // *************************************************************************
2278 procedure TGikoDM.IndividualAbon0ActionExecute(Sender: TObject);
2280 GikoForm.IndividualAbon(GikoForm.KokoPopupMenu.Tag, 0);
2282 // *************************************************************************
2283 //!
\82±
\82Ì
\83\8c\83X
\82 \82Ú
\81`
\82ñ
\89ð
\8f\9c
2284 // *************************************************************************
2285 procedure TGikoDM.AntiIndividualAbonActionExecute(Sender: TObject);
2287 IndividualForm :TIndividualAbonForm;
2288 ThreadItem : TThreadItem;
2290 ReadList : TStringList;
2291 wordCount : TWordCount;
2293 IndividualForm := TIndividualAbonForm.Create(GikoForm);
2295 ThreadItem := GikoForm.GetActiveContent;
2296 ThreadItem.ScrollTop :=
2297 OleVariant(IHTMLDocument2(GikoForm.ActiveContent.Browser.Document)).Body.ScrollTop;
2298 if (ThreadItem <> nil) and (ThreadItem.IsLogFile) then begin
2299 if IndividualForm.SetThreadLogFileName(ThreadItem.GetThreadFileName) then begin
2300 ReadList := TStringList.Create;
2301 wordCount := TWordCount.Create;
2303 {$IFDEF SPAM_FILTER_ENABLED}
2304 //
\83X
\83p
\83\80\82ð
\89ð
\8f\9c
2305 ReadList.LoadFromFile( ThreadItem.GetThreadFileName );
2306 GikoSys.SpamCountWord( ReadList[ KokoPopupMenu.Tag - 1 ], wordCount );
2307 GikoSys.SpamForget( wordCount, True ); //
\83X
\83p
\83\80\82ð
\89ð
\8f\9c
2308 GikoSys.SpamLearn( wordCount, False ); //
\83n
\83\80\82É
\90Ý
\92è
2310 if IndividualForm.DeleteNG(GikoForm.KokoPopupMenu.Tag) then begin
2311 GikoForm.ActiveContent.Repaint := true;
2312 GikoForm.InsertBrowserTab( ThreadItem, True );
2319 msg := '
\82±
\82Ì
\83X
\83\8c\83b
\83h
\82Å
\82Í
\8cÂ
\95Ê
\82 \82Ú
\81`
\82ñ
\82ð
\8ds
\82Á
\82Ä
\82Ü
\82¹
\82ñ';
2320 MsgBox(GikoForm.Handle, msg, '
\83\81\83b
\83Z
\81[
\83W', MB_OK);
2324 IndividualForm.Release;
2327 // *************************************************************************
2328 //!
\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
2329 // *************************************************************************
2330 procedure TGikoDM.AntiIndividualAbonDlgActionExecute(Sender: TObject);
2332 IndividualForm :TIndividualAbonForm;
2333 ThreadItem : TThreadItem;
2335 ReadList : TStringList;
2336 wordCount : TWordCount;
2337 {$IFDEF SPAM_FILTER_ENABLED}
2341 IndividualForm := TIndividualAbonForm.Create(GikoForm);
2343 ThreadItem := GikoForm.GetActiveContent;
2344 ThreadItem.ScrollTop :=
2345 OleVariant(IHTMLDocument2(GikoForm.ActiveContent.Browser.Document)).Body.ScrollTop;
2346 if (ThreadItem <> nil) and (ThreadItem.IsLogFile) then begin
2347 if IndividualForm.SetThreadLogFileName(ThreadItem.GetThreadFileName) then begin
2348 if (IndividualForm.ShowModal = mrOK) then begin
2349 ReadList := TStringList.Create;
2350 wordCount := TWordCount.Create;
2352 {$IFDEF SPAM_FILTER_ENABLED}
2353 //
\83X
\83p
\83\80\82ð
\89ð
\8f\9c
2354 ReadList.LoadFromFile( ThreadItem.GetThreadFileName );
2355 for i := 0 to IndividualForm.DeleteList.Count - 1 do begin
2356 GikoSys.SpamCountWord( ReadList[ StrToInt(IndividualForm.DeleteList[i]) - 1 ], wordCount );
2357 GikoSys.SpamForget( wordCount, True ); //
\83X
\83p
\83\80\82ð
\89ð
\8f\9c
2358 GikoSys.SpamLearn( wordCount, False ); //
\83n
\83\80\82É
\90Ý
\92è
2361 if IndividualForm.FRepaint then begin
2362 GikoForm.ActiveContent.Repaint := true;
2363 GikoForm.InsertBrowserTab( ThreadItem, True );
2371 msg := '
\82±
\82Ì
\83X
\83\8c\83b
\83h
\82Å
\82Í
\8cÂ
\95Ê
\82 \82Ú
\81`
\82ñ
\82ð
\8ds
\82Á
\82Ä
\82Ü
\82¹
\82ñ';
2372 MsgBox(GikoForm.Handle, msg, '
\83\81\83b
\83Z
\81[
\83W', MB_OK);
2376 IndividualForm.Release;
2379 // *************************************************************************
2380 //!
\82±
\82ÌID
\82 \82Ú
\81`
\82ñ
\81@
\92Ê
\8fí
2381 // *************************************************************************
2382 procedure TGikoDM.IndividualAbonID1ActionExecute(Sender: TObject);
2384 GikoForm.IndividualAbonID(1);
2386 // *************************************************************************
2387 //!
\82±
\82ÌID
\82 \82Ú
\81`
\82ñ
\81@
\93§
\96¾
2388 // *************************************************************************
2389 procedure TGikoDM.IndividualAbonID0ActionExecute(Sender: TObject);
2391 GikoForm.IndividualAbonID(0);
2393 ////////////////////////////////
\83u
\83\89\83E
\83U
\83|
\83b
\83v
\83A
\83b
\83v
\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
2394 // *************************************************************************
2395 //!
\83M
\83R
\83i
\83r
\82Ì
\83E
\83F
\83u
\83T
\83C
\83g
\82ð
\95\
\8e¦
\82·
\82é
2396 // *************************************************************************
2397 procedure TGikoDM.GikoNaviWebPageActionExecute(Sender: TObject);
2399 GikoSys.OpenBrowser(URL_GIKONAVI, gbtAuto);
2401 // *************************************************************************
2402 //!
\83\82\83i
\83W
\83\89\82Ì
\83E
\83F
\83u
\83T
\83C
\83g
\82ð
\95\
\8e¦
\82·
\82é
2403 // *************************************************************************
2404 procedure TGikoDM.MonazillaWebPageActionExecute(Sender: TObject);
2406 GikoSys.OpenBrowser(URL_MONAZILLA, gbtAuto);
2408 // *************************************************************************
2409 //!
\82Q
\82¿
\82á
\82ñ
\82Ë
\82é
\83g
\83b
\83v
\83y
\81[
\83W
\82ð
\95\
\8e¦
\82·
\82é
2410 // *************************************************************************
2411 procedure TGikoDM.BBS2chWebPageActionExecute(Sender: TObject);
2413 GikoSys.OpenBrowser(URL_2ch, gbtAuto);
2415 // *************************************************************************
2416 //!
\83M
\83R
\83i
\83r
\82Ì
\83t
\83H
\83\8b\83_
\82ð
\8aJ
\82
2417 // *************************************************************************
2418 procedure TGikoDM.GikoFolderOpenActionExecute(Sender: TObject);
2420 GikoSys.CreateProcess('explorer.exe', '/e,"' + GikoSys.GetAppDir + '"');
2422 // *************************************************************************
2423 //!
\83o
\81[
\83W
\83\87\83\93\8fî
\95ñ
\82ð
\95\
\8e¦
\82·
\82é
2424 // *************************************************************************
2425 procedure TGikoDM.AboutActionExecute(Sender: TObject);
2429 Dlg := TAboutDialog.Create(GikoForm);
2436 // *************************************************************************
2437 //!
\83M
\83R
\83i
\83r
\82Ì
\83w
\83\8b\83v
\82ð
\95\
\8e¦
\82·
\82é
2438 // *************************************************************************
2439 procedure TGikoDM.GikoHelpActionExecute(Sender: TObject);
2443 FileName := GikoSys.GetAppDir + 'batahlp.chm';
2444 if not FileExists(FileName) then begin
2447 '
\83w
\83\8b\83v
\82ª
\8c©
\82Â
\82©
\82è
\82Ü
\82¹
\82ñ
\82Å
\82µ
\82½' + #13#10 +
2448 '
\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 +
2449 '
\83w
\83\8b\83v
\82Í
\83M
\83R
\83i
\83r
\82Ì
\83T
\83C
\83g
\82É
\92u
\82¢
\82Ä
\82 \82è
\82Ü
\82·',
2454 ShellExecute(GikoForm.Handle, 'open', PChar(FileName), '', PChar(GikoSys.GetAppDir), SW_SHOW);
2456 // *************************************************************************
2457 //!
\83M
\83R
\83i
\83rWiki
\82Ì
\83E
\83F
\83u
\83T
\83C
\83g
\82ð
\95\
\8e¦
\82·
\82é
2458 // *************************************************************************
2459 procedure TGikoDM.WikiFAQWebPageActionExecute(Sender: TObject);
2461 GikoSys.OpenBrowser(URL_Wiki, gbtAuto);
2463 ////////////////////////////////
\83w
\83\8b\83v
\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
2464 // *************************************************************************
2465 //!
\83\8a\83X
\83g
\94Ô
\8d\86\95\
\8e¦
\82ð
\95Ï
\8dX
\82·
\82é
2466 // *************************************************************************
2467 procedure TGikoDM.ListNumberVisibleActionExecute(Sender: TObject);
2469 GikoSys.Setting.ListViewNo := ListNumberVisibleAction.Checked;
2470 GikoForm.ListView.Refresh;
2472 // *************************************************************************
2473 //!
\8fã
\88Ê
\83t
\83H
\83\8b\83_
\82É
\88Ú
\93®
\82·
\82é
2474 // *************************************************************************
2475 procedure TGikoDM.UpFolderActionExecute(Sender: TObject);
2477 if GikoForm.GetActiveList is TBoard then begin
2478 if TBoard(GikoForm.GetActiveList).ParentCategory <> nil then
2479 GikoForm.SelectTreeNode(TBoard(GikoForm.GetActiveList).ParentCategory, True);
2480 end else if GikoForm.GetActiveList is TCategory then begin
2481 GikoForm.SelectTreeNode(TCategory(GikoForm.GetActiveList).ParenTBBS, True);
2484 // *************************************************************************
2485 //!
\8fã
\88Ê
\83t
\83H
\83\8b\83_
\82É
\88Ú
\93®
\82·
\82éUpDate
\83C
\83x
\83\93\83g
2486 // *************************************************************************
2487 procedure TGikoDM.UpFolderActionUpdate(Sender: TObject);
2489 UpFolderAction.Enabled := not (GikoForm.GetActiveList is TBBS);
2491 // *************************************************************************
2492 //!
\95\
\8e¦
\81@
\95\
\8e¦
\83\8a\83X
\83g
\82Ì
\83\82\81[
\83h
\95Ï
\8dX
2493 // *************************************************************************
2494 procedure TGikoDM.IconStyleExecute(Sender: TObject);
2496 case GikoForm.ListView.ViewStyle of
2497 vsIcon: SmallIconAction.Execute;
2498 vsSmallIcon: ListIconAction.Execute;
2499 vsList: DetailIconAction.Execute;
2500 vsReport: LargeIconAction.Execute;
2503 // *************************************************************************
2504 //!
\83X
\83\8c\83b
\83h
\82ð
\82·
\82×
\82Ä
\95\
\8e¦
\82·
\82é
2505 // *************************************************************************
2506 procedure TGikoDM.AllItemActionExecute(Sender: TObject);
2509 if GikoForm.ViewType <> gvtAll then
2510 GikoForm.SetListViewType(gvtAll);
2511 GikoSys.Setting.ThreadRange := gtrAll;
2512 AllItemAction.Checked := True;
2513 // SelectComboBox
\82Ì
\97\9a\97ð
\82ð
\8dX
\90V
\82µ
\82Ä
\82¨
\82
2514 GikoForm.ModifySelectList;
2515 // SelectComboBox
\82Ì
\92l
\82ð
\83N
\83\8a\83A
2516 if GikoForm.SelectComboBoxPanel.Visible then begin
2517 GikoForm.SelectComboBox.Text := SELECTCOMBOBOX_NAME;
2518 GikoForm.SelectComboBox.Color := SELECTCOMBOBOX_COLOR;
2519 GikoForm.ListView.SetFocus;
2524 // *************************************************************************
2525 //!
\83\8d\83O
\97L
\82è
\83X
\83\8c\83b
\83h
\82Ì
\82Ý
\82ð
\95\
\8e¦
\82·
\82é
2526 // *************************************************************************
2527 procedure TGikoDM.LogItemActionExecute(Sender: TObject);
2530 if GikoForm.ViewType <> gvtLog then
2531 GikoForm.SetListViewType(gvtLog);
2532 GikoSys.Setting.ThreadRange := gtrLog;
2533 LogItemAction.Checked := True;
2534 // SelectComboBox
\82Ì
\97\9a\97ð
\82ð
\8dX
\90V
\82µ
\82Ä
\82¨
\82
2535 GikoForm.ModifySelectList;
2536 // SelectComboBox
\82Ì
\92l
\82ð
\83N
\83\8a\83A
2537 if GikoForm.SelectComboBoxPanel.Visible then begin
2538 GikoForm.SelectComboBox.Text := SELECTCOMBOBOX_NAME;
2539 GikoForm.SelectComboBox.Color := SELECTCOMBOBOX_COLOR;
2540 GikoForm.ListView.SetFocus;
2545 // *************************************************************************
2546 //!
\90V
\92\85\83X
\83\8c\83b
\83h
\82Ì
\82Ý
\95\
\8e¦
\82·
\82é
2547 // *************************************************************************
2548 procedure TGikoDM.NewItemActionExecute(Sender: TObject);
2552 if GikoForm.ViewType <> gvtNew then
2553 GikoForm.SetListViewType(gvtNew);
2554 GikoSys.Setting.ThreadRange := gtrNew;
2555 NewItemAction.Checked := True;
2556 // SelectComboBox
\82Ì
\97\9a\97ð
\82ð
\8dX
\90V
\82µ
\82Ä
\82¨
\82
2557 GikoForm.ModifySelectList;
2558 // SelectComboBox
\82Ì
\92l
\82ð
\83N
\83\8a\83A
2559 if GikoForm.SelectComboBoxPanel.Visible then begin
2560 GikoForm.SelectComboBox.Text := SELECTCOMBOBOX_NAME;
2561 GikoForm.SelectComboBox.Color := SELECTCOMBOBOX_COLOR;
2562 GikoForm.ListView.SetFocus;
2567 // *************************************************************************
2568 //!
\83X
\83\8c\83b
\83h
\82Ì
\95\
\8e¦
\94Í
\88Í
\82ð
\90Ý
\92è
2569 // *************************************************************************
2570 procedure TGikoDM.ThreadRangeActionExecute(Sender: TObject);
2572 case GikoSys.Setting.ThreadRange of
2573 gtrAll: AllItemAction.Execute;
2574 gtrLog: LogItemAction.Execute;
2575 gtrNew: NewItemAction.Execute;
2578 // *************************************************************************
2579 //!
\83X
\83\8c\83b
\83h
\8di
\8d\9e\82Ý
\83_
\83C
\83A
\83\8d\83O
\82ð
\95\
\8e¦
\82·
\82é
2580 // *************************************************************************
2581 procedure TGikoDM.SelectItemActionExecute(Sender: TObject);
2584 Dlg: TListSelectDialog;
2587 if GikoForm.SelectComboBoxPanel.Visible then begin
2588 if GikoForm.SelectComboBoxPanel.Left + GikoForm.SelectComboBoxPanel.Width < GikoForm.ListToolBar.Width then begin
2589 // SelectComboBox
\82ª
\82 \82é
\8fê
\8d\87\82Í
\83t
\83H
\81[
\83J
\83X
\82ð
\88Ú
\82·
2590 if GikoSys.Setting.ListOrientation = gloHorizontal then begin
2591 if GikoSys.Setting.ListWidthState = glsMax then
2592 BrowserMinAction.Execute;
2594 if GikoSys.Setting.ListHeightState = glsMax then
2595 BrowserMinAction.Execute;
2597 GikoForm.SelectComboBox.SetFocus;
2604 if GikoForm.SelectComboBox.Text = SELECTCOMBOBOX_NAME then begin
2605 GikoForm.SelectComboBox.Text := '';
2606 GikoForm.SelectComboBox.Color := clWindow;
2609 AllItemAction.Checked := False;
2610 LogItemAction.Checked := False;
2611 NewItemAction.Checked := False;
2612 //SelectItemAction.Checked := True;
2613 GikoForm.ModifySelectList;
2614 Dlg := TListSelectDialog.Create(GikoForm);
2616 Dlg.SelectComboBox.Items.Assign(GikoSys.Setting.SelectTextList);
2617 Dlg.SelectComboBox.Text := GikoForm.SelectComboBox.Text;
2619 if Dlg.ModalResult = mrCancel then begin
2620 if Length( GikoForm.SelectComboBox.Text ) = 0 then begin
2621 AllItemAction.Checked := True;
2622 GikoForm.SelectComboBox.Text := SELECTCOMBOBOX_NAME;
2623 GikoForm.SelectComboBox.Color := SELECTCOMBOBOX_COLOR;
2626 if GikoForm.GetActiveList is TBoard then
2627 GikoForm.SetListViewType(gvtUser, TBoard(GikoForm.GetActiveList).ParentCategory.ParenTBBS.SelectText , Dlg.KubetsuCheckBox.Checked);
2629 idx := GikoSys.Setting.SelectTextList.IndexOf(Dlg.SelectComboBox.Text);
2631 GikoSys.Setting.SelectTextList.Delete(idx);
2632 GikoSys.Setting.SelectTextList.Insert(0, Dlg.SelectComboBox.Text);
2633 while Dlg.SelectComboBox.Items.Count > 100 do begin
2634 Dlg.SelectComboBox.Items.Delete(Dlg.SelectComboBox.Items.Count - 1);
2637 if Length( Dlg.SelectComboBox.Text ) = 0 then begin
2638 GikoForm.SelectComboBox.Text := SELECTCOMBOBOX_NAME;
2639 GikoForm.SelectComboBox.Color := SELECTCOMBOBOX_COLOR;
2641 GikoForm.SelectComboBox.Text := Dlg.SelectComboBox.Text;
2642 GikoForm.SelectComboBox.Color := clWindow;
2644 GikoForm.SetListViewType(gvtUser, Dlg.SelectComboBox.Text, Dlg.KubetsuCheckBox.Checked);
2650 // *************************************************************************
2651 //!
\90V
\83X
\83\8c\8f\91\82«
\8d\9e\82Ý
\83E
\83B
\83\93\83h
\83E
\82ð
\95\
\8e¦
\82·
\82é
2652 // *************************************************************************
2653 procedure TGikoDM.ThreadEditorActionExecute(Sender: TObject);
2655 Editor: TEditorForm;
2657 if not (GikoForm.GetActiveList is TBoard) then
2659 Editor := TEditorForm.Create(GikoForm);
2660 Editor.SetBoard(TBoard(GikoForm.GetActiveList));
2662 Editor.BodyEdit.SetFocus;
2664 // *************************************************************************
2665 //!
\8c»
\8dÝ
\95\
\8e¦
\82µ
\82Ä
\82¢
\82é
\94Â
\82ð
\83u
\83\89\83E
\83U
\82Å
\95\
\8e¦
\82·
\82é
2666 // *************************************************************************
2667 procedure TGikoDM.BoardIEActionExecute(Sender: TObject);
2671 if GikoForm.GetActiveList is TBoard then begin
2672 URL := TBoard(GikoForm.GetActiveList).URL;
2673 GikoSys.OpenBrowser(URL, gbtAuto);
2676 // *************************************************************************
2677 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ÌURL
\82ð
\83R
\83s
\81[
\82·
\82é
2678 // *************************************************************************
2679 procedure TGikoDM.SelectItemURLCopyActionExecute(Sender: TObject);
2686 List := TList.Create;
2688 GikoForm.SelectListItem(List);
2689 for i := 0 to List.Count - 1 do begin
2690 if TObject(List[i]) is TBoard then
2691 s := s + TBoard(List[i]).URL + #13#10
2692 else if TObject(List[i]) is TThreadItem then
2693 s := s + TThreadItem(List[i]).URL + #13#10;
2696 Clipboard.AsText := s;
2701 // *************************************************************************
2702 //!
\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
2703 // *************************************************************************
2704 procedure TGikoDM.SelectItemURLCopyActionUpdate(Sender: TObject);
2706 if ((GikoForm.GetActiveList is TBoard) or
2707 (GikoForm.GetActiveList is TCategory))and (GikoForm.ListView.SelCount > 0) then
2708 TAction(Sender).Enabled := True
2710 TAction(Sender).Enabled := False;
2712 // *************************************************************************
2713 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\94Â
\82Ì
\96¼
\91O
\82ð
\83R
\83s
\81[
\82·
\82é
2714 // *************************************************************************
2715 procedure TGikoDM.SelectItemNameCopyActionExecute(Sender: TObject);
2722 List := TList.Create;
2724 GikoForm.SelectListItem(List);
2725 for i := 0 to List.Count - 1 do begin
2726 if TObject(List[i]) is TBoard then
2727 s := s + TBoard(List[i]).Title + #13#10
2728 else if TObject(List[i]) is TThreadItem then
2729 s := s + TThreadItem(List[i]).Title + #13#10;
2732 Clipboard.AsText := s;
2737 // *************************************************************************
2738 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\94Â
\82Ì
\96¼
\91O
\82ð
\83R
\83s
\81[
\82·
\82éUpdate
\83C
\83x
\83\93\83g
2739 // *************************************************************************
2740 procedure TGikoDM.SelectItemNameCopyActionUpdate(Sender: TObject);
2742 if ((GikoForm.GetActiveList is TBoard) or
2743 (GikoForm.GetActiveList is TCategory))and (GikoForm.ListView.SelCount > 0) then
2744 TAction(Sender).Enabled := True
2746 TAction(Sender).Enabled := False;
2748 // *************************************************************************
2749 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82Ì
\96¼
\91O
\82ÆURL
\82ð
\83R
\83s
\81[
\82·
\82é
2750 // *************************************************************************
2751 procedure TGikoDM.SelectItemNameURLCopyActionExecute(Sender: TObject);
2758 List := TList.Create;
2760 GikoForm.SelectListItem(List);
2761 for i := 0 to List.Count - 1 do begin
2762 if TObject(List[i]) is TBoard then
2763 s := s + TBoard(List[i]).Title + #13#10 + TBoard(List[i]).URL + #13#10
2764 else if TObject(List[i]) is TThreadItem then
2765 s := s + TThreadItem(List[i]).Title + #13#10 + TThreadItem(List[i]).URL + #13#10;
2768 Clipboard.AsText := s;
2773 // *************************************************************************
2774 //!
\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é
2775 // *************************************************************************
2776 procedure TGikoDM.SelectListReloadActionExecute(Sender: TObject);
2783 shiftDown := GetAsyncKeyState(VK_SHIFT) = Smallint($8001);
2784 if GikoForm.GetActiveList is TCategory then begin
2785 List := TList.Create;
2787 GikoForm.SelectListItem(List);
2788 if List.Count > 5 then begin
2789 msg := '5
\8cÂ
\88È
\8fã
\82Í
\8ew
\92è
\82Å
\82«
\82Ü
\82¹
\82ñ' + #13#10
2790 + '
\82Q
\82¿
\82á
\82ñ
\82Ë
\82é
\95\89\89×
\8cy
\8c¸
\82É
\82²
\8b¦
\97Í
\82
\82¾
\82³
\82¢';
2791 MsgBox(GikoForm.Handle, msg, '
\8cx
\8d\90', MB_ICONEXCLAMATION);
2794 for i := 0 to List.Count - 1 do begin
2795 if TObject(List[i]) is TBoard then
2796 GikoForm.DownloadList(TBoard(List[i]), shiftDown);
2801 end else if GikoForm.GetActiveList is TBoard then begin
2802 GikoForm.DownloadList(TBoard(GikoForm.GetActiveList), shiftDown);
2805 // *************************************************************************
2806 //!
\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
2807 // *************************************************************************
2808 procedure TGikoDM.SelectListReloadActionUpdate(Sender: TObject);
2810 if (GikoForm.GetActiveList is TCategory) and (GikoForm.ListView.SelCount > 0) then
2811 TAction(Sender).Enabled := True
2812 else if GikoForm.GetActiveList is TBoard then
2813 TAction(Sender).Enabled := True
2815 TAction(Sender).Enabled := False;
2817 // *************************************************************************
2818 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\83_
\83E
\83\93\83\8d\81[
\83h
\82·
\82é
2819 // *************************************************************************
2820 procedure TGikoDM.SelectThreadReloadActionExecute(Sender: TObject);
2827 shiftDown := GetAsyncKeyState(VK_SHIFT) = Smallint($8001);
2828 List := TList.Create;
2830 GikoForm.SelectListItem(List);
2831 if List.Count > 10 then begin
2832 msg := '10
\8cÂ
\88È
\8fã
\82Í
\8ew
\92è
\82Å
\82«
\82Ü
\82¹
\82ñ' + #13#10
2833 + '
\82Q
\82¿
\82á
\82ñ
\82Ë
\82é
\95\89\89×
\8cy
\8c¸
\82É
\82²
\8b¦
\97Í
\82
\82¾
\82³
\82¢';
2834 MsgBox(GikoForm.Handle, msg, '
\8cx
\8d\90', MB_ICONEXCLAMATION);
2837 for i := 0 to List.Count - 1 do begin
2838 if TObject(List[i]) is TThreadItem then
2839 GikoForm.DownloadContent(TThreadItem(List[i]), shiftDown);
2845 // *************************************************************************
2846 //!
\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
2847 // *************************************************************************
2848 procedure TGikoDM.SelectThreadReloadActionUpdate(Sender: TObject);
2850 TAction(Sender).Enabled :=
2851 (GikoForm.GetActiveList is TBoard) and (GikoForm.ListView.SelCount > 0);
2853 // *************************************************************************
2854 //!
\83X
\83\8c\83b
\83h
\8f\84\89ñ
\97\
\96ñ
2855 // *************************************************************************
2856 procedure TGikoDM.SelectReservActionExecute(Sender: TObject);
2858 //INFO 2005/11/19
\83_
\83~
\81[
\81H
\81@by
\82à
\82¶
\82ã
2859 //
\82±
\82Ì
\83R
\83\81\83\93\83g
\8dí
\8f\9c\82µ
\82Ä
\82Í
\91Ê
\96Ú
2861 // *************************************************************************
2862 //!
\83X
\83\8c\83b
\83h
\8f\84\89ñ
\97\
\96ñUpdate
\83C
\83x
\83\93\83g
2863 // *************************************************************************
2864 procedure TGikoDM.SelectReservActionUpdate(Sender: TObject);
2869 if (GikoForm.GetActiveList is TBoard) and (GikoForm.ListView.SelCount > 0) then begin
2870 List := TList.Create;
2872 GikoForm.SelectListItem(List);
2873 for i := 0 to List.Count - 1 do begin
2874 if TObject(List[i]) is TThreadItem then begin
2875 if TThreadItem(List[i]).IsLogFile then begin
2876 SelectReservAction.Enabled := True;
2881 SelectReservAction.Enabled := False;
2885 end else if (GikoForm.GetActiveList is TCategory) and (GikoForm.ListView.SelCount > 0) then
2886 SelectReservAction.Enabled := True
2888 SelectReservAction.Enabled := False;
2890 // *************************************************************************
2891 //!
\91I
\91ð
\82µ
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82É
\90V
\82µ
\82¢
\96¼
\91O
\82Å
\8f\84\89ñ
\97\
\96ñ
2892 // *************************************************************************
2893 procedure TGikoDM.SelectNewRoundNameExecute(Sender: TObject);
2896 Dlg: TRoundNameDialog;
2900 //
\8cÄ
\82Ñ
\8fo
\82µ
\8c³
\82ª
\81ATAction
\82ÅListView
\82É
\91I
\91ð
\82ª
\82¢
\82È
\82¯
\82ê
\82Î
\81AEXIT
\82·
\82é
2901 if (Sender is TAction) and (GikoForm.ListView.Selected = nil) then
2904 //
\93o
\98^
\8fã
\8cÀ
\83`
\83F
\83b
\83N
2905 cnt := RoundList.Count[grtBoard];
2906 cnt := cnt + RoundList.Count[grtItem];
2907 if cnt > 500 then begin
2908 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);
2912 Dlg := TRoundNameDialog.Create(GikoForm);
2915 if Dlg.ModalResult <> mrCancel then begin
2916 s := Trim(Dlg.RoundNameEdit.Text);
2917 if (Sender is TMenuItem) then begin
2918 GikoForm.SetSelectItemRound(True, s, TMenuItem(Sender).Parent.Name);
2919 end else if (Sender is TAction) then begin
2920 if (GikoForm.ListView.Selected <> nil) then begin
2921 if (TObject(GikoForm.ListView.Selected.Data) is TThreadItem) then begin
2922 GikoForm.SetSelectItemRound(True, s,
2923 TThreadItem(GikoForm.ListView.Selected.Data).Title);
2924 end else if (TObject(GikoForm.ListView.Selected.Data) is TBoard) then begin
2925 GikoForm.SetSelectItemRound(True, s,
2926 TBoard(GikoForm.ListView.Selected.Data).Title);
2930 GikoForm.ListView.Refresh;
2936 // *************************************************************************
2937 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\83X
\83\8c\83b
\83h
\82Ì
\8f\84\89ñ
\82ð
\8dí
\8f\9c\82·
\82é
2938 // *************************************************************************
2939 procedure TGikoDM.SelectDeleteRoundExecute(Sender: TObject);
2943 if (Sender is TMenuItem) then begin
2945 GikoForm.SetSelectItemRound(False, '', TMenuItem(Sender).Parent.Name);
2948 end else if (Sender is TAction) then begin
2950 if GikoForm.ListView.Selected <> nil then begin
2951 if (TObject(GikoForm.ListView.Selected.Data) is TThreadItem) then begin
2952 s := TThreadItem(GikoForm.ListView.Selected.Data).Title;
2953 end else if (TObject(GikoForm.ListView.Selected.Data) is TBoard) then begin
2954 s := TBoard(GikoForm.ListView.Selected.Data).Title;
2956 GikoForm.SetSelectItemRound(False, '', s);
2962 GikoForm.ListView.Refresh;
2964 // *************************************************************************
2965 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\94Â
\82ð
\82¨
\8bC
\82É
\93ü
\82è
\82É
\92Ç
\89Á
\82·
\82é
2966 // *************************************************************************
2967 procedure TGikoDM.BoardFavoriteAddActionExecute(Sender: TObject);
2969 if TObject(GikoForm.ListView.Selected.Data) is TBoard then
2970 GikoForm.ShowFavoriteAddDialog(TObject(GikoForm.ListView.Selected.Data));
2972 // *************************************************************************
2973 //!
\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
2974 // *************************************************************************
2975 procedure TGikoDM.BoardFavoriteAddActionUpdate(Sender: TObject);
2977 BoardFavoriteAddAction.Enabled :=
2978 (GikoForm.GetActiveList is TCategory) and (GikoForm.ListView.SelCount > 0);
2980 // *************************************************************************
2981 //! Explorer
\82ÅLog
\83t
\83H
\83\8b\83_
\82ð
\8aJ
\82
2982 // *************************************************************************
2983 procedure TGikoDM.LogFolderOpenActionExecute(Sender: TObject);
2987 if ((GikoSys.Setting.ListOrientation = gloVertical) and
2988 (GikoSys.Setting.ListHeightState = glsMax)) or
2989 ((GikoSys.Setting.ListOrientation = gloHorizontal) and
2990 (GikoSys.Setting.ListWidthState = glsMax)) then begin
2991 if(GikoForm.GetActiveContent <> nil) then begin
2992 GikoSys.CreateProcess('explorer.exe', '/e,"' + ExtractFilePath(GikoForm.GetActiveContent.FilePath) + '"');
2994 end else if GikoForm.GetActiveList is TCategory then begin
2995 List := TList.Create;
2997 GikoForm.SelectListItem(List);
2998 GikoSys.CreateProcess('explorer.exe', '/e,"' + ExtractFilePath(TBoard(List[0]).FilePath) + '"');
3002 end else if GikoForm.GetActiveList is TBoard then begin
3003 GikoSys.CreateProcess('explorer.exe', '/e,"' + ExtractFilePath(TBoard(GikoForm.GetActiveList).FilePath) + '"');
3007 // *************************************************************************
3008 //! 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Ê
3009 // *************************************************************************
3010 procedure TGikoDM.LogFolderOpenActionUpdate(Sender: TObject);
3012 if ((GikoForm.GetActiveList is TBoard) or (GikoForm.GetActiveList is TCategory))
3013 and (GikoForm.ListView.SelCount > 0) then
3014 TAction(Sender).Enabled := True
3016 TAction(Sender).Enabled := False;
3018 // *************************************************************************
3019 //! Header.txt
\82ð
\83u
\83\89\83E
\83U
\82Å
\95\
\8e¦
\82·
\82é
3020 // *************************************************************************
3021 procedure TGikoDM.BrowsBoradHeadActionExecute(Sender: TObject);
3023 RefURL, URL : string;
3027 if GikoForm.GetActiveList is TCategory then begin
3028 List := TList.Create;
3030 GikoForm.SelectListItem(List);
3031 RefURL := TBoard(List[0]).URL;
3035 end else if GikoForm.GetActiveList is TBoard then begin
3036 RefURL := TBoard(GikoForm.GetActiveList).URL
3038 if RefURL <> '' then begin
3039 if RefURL[Length(RefURL)] <> '/' then
3040 URL := RefURL + '/' + 'head.txt'
3042 URL := RefURL + 'head.txt';
3044 GikoForm.MoveToURL(URL);
3046 ShowMessage('
\94Â
\82ð
\93Á
\92è
\82Å
\82«
\82Ü
\82¹
\82ñ
\82Å
\82µ
\82½
\81B');
3050 // *************************************************************************
3051 //!
\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é
3052 // *************************************************************************
3053 function TGikoDM.GetSortProperties(List: TObject;
3054 var vSortOrder: Boolean): Boolean;
3057 if (List <> nil) then begin
3058 if (List is TBBS) then begin
3059 vSortOrder := GikoSys.Setting.BBSSortOrder;
3060 end else if (List is TCategory) then begin
3061 vSortOrder := GikoSys.Setting.CategorySortOrder;
3062 end else if (List is TBoard) then begin
3063 vSortOrder := GikoSys.Setting.BoardSortOrder;
3071 // *************************************************************************
3072 //!
\8c»
\8dÝ
\82Ì
\83J
\83\89\83\80\82ð
\83\
\81[
\83g
\82·
\82é
3073 // *************************************************************************
3074 procedure TGikoDM.SortActiveColumnActionExecute(Sender: TObject);
3079 if GetSortProperties(GikoForm.GetActiveList, so) then begin
3080 for i := 0 to GikoForm.ListView.Columns.Count - 1 do begin
3081 if (GikoForm.ListView.Column[ i ].ImageIndex = ITEM_ICON_SORT1) or
3082 (GikoForm.ListView.Column[ i ].ImageIndex = ITEM_ICON_SORT2) then begin
3084 TListViewUtils.ListViewSort(nil, GikoForm.ListView,
3085 GikoForm.ListView.Column[ i ], ListNumberVisibleAction.Checked,
3092 // *************************************************************************
3093 //!
\89E
\97×
\82Ì
\83J
\83\89\83\80\82ð
\83\
\81[
\83g
3094 // *************************************************************************
3095 procedure TGikoDM.SortNextColumnActionExecute(Sender: TObject);
3099 for i := 0 to GikoForm.ListView.Columns.Count - 1 do begin
3100 if (GikoForm.ListView.Column[ i ].ImageIndex = ITEM_ICON_SORT1) or
3101 (GikoForm.ListView.Column[ i ].ImageIndex = ITEM_ICON_SORT2) then begin
3103 if id > GikoForm.ListView.Columns.Count - 1 then
3105 TListViewUtils.ListViewSort( nil, GikoForm.ListView,
3106 GikoForm.ListView.Column[ id ], ListNumberVisibleAction.Checked,
3112 // *************************************************************************
3113 //!
\8d¶
\97×
\82Ì
\83J
\83\89\83\80\82ð
\83\
\81[
\83g
3114 // *************************************************************************
3115 procedure TGikoDM.SortPrevColumnActionExecute(Sender: TObject);
3119 for i := 0 to GikoForm.ListView.Columns.Count - 1 do begin
3120 if (GikoForm.ListView.Column[ i ].ImageIndex = ITEM_ICON_SORT1) or
3121 (GikoForm.ListView.Column[ i ].ImageIndex = ITEM_ICON_SORT2) then begin
3124 id := GikoForm.ListView.Columns.Count - 1;
3125 TListViewUtils.ListViewSort( nil, GikoForm.ListView,
3126 GikoForm.ListView.Column[ id ], ListNumberVisibleAction.Checked,
3132 ////////////////////////////////
\94Â
\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
3133 // *************************************************************************
3134 //!
\95W
\8f\80\83c
\81[
\83\8b\83o
\81[
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3135 // *************************************************************************
3136 procedure TGikoDM.StdToolBarVisibleActionExecute(Sender: TObject);
3138 CoolBand: TCoolBand;
3140 CoolBand := GikoForm.GetCoolBand(GikoForm.MainCoolBar, GikoForm.StdToolBar);
3141 if CoolBand = nil then
3143 GikoSys.Setting.StdToolBarVisible := StdToolBarVisibleAction.Checked;
3144 CoolBand.Visible := GikoSys.Setting.StdToolBarVisible;
3145 GikoForm.StdToolBarVisiblePMenu.Checked := GikoSys.Setting.StdToolBarVisible;
3147 // *************************************************************************
3148 //!
\83A
\83h
\83\8c\83X
\83o
\81[
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3149 // *************************************************************************
3150 procedure TGikoDM.AddressBarVisibleActionExecute(Sender: TObject);
3152 CoolBand: TCoolBand;
3154 CoolBand := GikoForm.GetCoolBand(GikoForm.MainCoolBar, GikoForm.AddressToolBar);
3155 if CoolBand = nil then
3157 GikoSys.Setting.AddressBarVisible := AddressBarVisibleAction.Checked;
3158 CoolBand.Visible := GikoSys.Setting.AddressBarVisible;
3159 GikoForm.AddressToolBarVisiblePMenu.Checked := GikoSys.Setting.AddressBarVisible;
3161 // *************************************************************************
3162 //!
\83\8a\83\93\83N
\83o
\81[
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3163 // *************************************************************************
3164 procedure TGikoDM.LinkBarVisibleActionExecute(Sender: TObject);
3166 CoolBand: TCoolBand;
3168 CoolBand := GikoForm.GetCoolBand(GikoForm.MainCoolBar, GikoForm.LinkToolBar);
3169 if CoolBand = nil then
3171 GikoSys.Setting.LinkBarVisible := LinkBarVisibleAction.Checked;
3172 CoolBand.Visible := GikoSys.Setting.LinkBarVisible;
3173 GikoForm.LinkToolBarVisiblePMenu.Checked := GikoSys.Setting.LinkBarVisible;
3175 // *************************************************************************
3176 //!
\83\8a\83X
\83g
\83c
\81[
\83\8b\83o
\81[
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3177 // *************************************************************************
3178 procedure TGikoDM.ListToolBarVisibleActionExecute(Sender: TObject);
3180 CoolBand: TCoolBand;
3182 CoolBand := GikoForm.GetCoolBand(GikoForm.ListCoolBar, GikoForm.ListToolBar);
3183 if CoolBand = nil then
3185 CoolBand.Visible := ListToolBarVisibleAction.Checked;
3186 GikoSys.Setting.ListToolBarVisible := ListToolBarVisibleAction.Checked;
3188 // *************************************************************************
3189 //!
\83\8a\83X
\83g
\96¼
\8fÌ
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3190 // *************************************************************************
3191 procedure TGikoDM.ListNameBarVisibleActionExecute(Sender: TObject);
3193 CoolBand: TCoolBand;
3195 CoolBand := GikoForm.GetCoolBand(GikoForm.ListCoolBar, GikoForm.ListNameToolBar);
3196 if CoolBand = nil then
3198 CoolBand.Visible := ListNameBarVisibleAction.Checked;
3199 GikoSys.Setting.ListNameBarVisible := ListNameBarVisibleAction.Checked;
3201 // *************************************************************************
3202 //!
\83u
\83\89\83E
\83U
\83c
\81[
\83\8b\83o
\81[
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3203 // *************************************************************************
3204 procedure TGikoDM.BrowserToolBarVisibleActionExecute(Sender: TObject);
3206 CoolBand: TCoolBand;
3208 CoolBand := GikoForm.GetCoolBand(GikoForm.BrowserCoolBar, GikoForm.BrowserToolBar);
3209 if CoolBand = nil then
3211 CoolBand.Visible := BrowserToolBarVisibleAction.Checked;
3212 GikoSys.Setting.BrowserToolBarVisible := BrowserToolBarVisibleAction.Checked;
3214 // *************************************************************************
3215 //!
\83u
\83\89\83E
\83U
\96¼
\8fÌ
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3216 // *************************************************************************
3217 procedure TGikoDM.BrowserNameBarVisibleActionExecute(Sender: TObject);
3219 CoolBand: TCoolBand;
3221 CoolBand := GikoForm.GetCoolBand(GikoForm.BrowserCoolBar, GikoForm.BrowserNameToolBar);
3222 if CoolBand = nil then
3224 CoolBand.Visible := BrowserNameBarVisibleAction.Checked;
3225 GikoSys.Setting.BrowserNameBarVisible := BrowserNameBarVisibleAction.Checked;
3227 // *************************************************************************
3228 //!
\83\81\83b
\83Z
\81[
\83W
\83o
\81[
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3229 // *************************************************************************
3230 procedure TGikoDM.MsgBarVisibleActionExecute(Sender: TObject);
3232 GikoForm.MessageSplitter.Visible := MsgBarVisibleAction.Checked;
3233 GikoForm.MessagePanel.Top :=
3234 GikoForm.MessageSplitter.Top + GikoForm.MessageSplitter.Height;
3235 GikoForm.MessageSplitter.Top := GikoForm.MessagePanel.Top + 1;
3236 GikoForm.MessagePanel.Visible := MsgBarVisibleAction.Checked;
3237 GikoSys.Setting.MessageBarVisible := MsgBarVisibleAction.Checked;
3239 // *************************************************************************
3240 //!
\83\81\83b
\83Z
\81[
\83W
\83o
\81[
\82ð
\95Â
\82¶
\82é
3241 // *************************************************************************
3242 procedure TGikoDM.MsgBarCloseActionExecute(Sender: TObject);
3244 MsgBarVisibleAction.Execute;
3246 // *************************************************************************
3247 //!
\83X
\83e
\81[
\83^
\83X
\83o
\81[
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3248 // *************************************************************************
3249 procedure TGikoDM.StatusBarVisibleActionExecute(Sender: TObject);
3251 GikoForm.StatusBar.Visible := StatusBarVisibleAction.Checked;
3252 GikoSys.Setting.StatusBarVisible := StatusBarVisibleAction.Checked;
3254 // *************************************************************************
3255 //!
\83L
\83\83\83r
\83l
\83b
\83g
\82Ì
\95\
\8e¦
\82ð
\8cf
\8e¦
\94Â
\82É
\82·
\82é
3256 // *************************************************************************
3257 procedure TGikoDM.CabinetBBSActionExecute(Sender: TObject);
3260 if GikoForm.CabinetPanel.Visible then begin
3261 if GikoForm.TreeType = gtt2ch then begin
3262 GikoForm.CabinetVisible( False );
3264 CabinetBBSAction.Checked := False;
3266 CabinetBBSAction.Checked := True;
3269 GikoForm.CabinetVisible( True );
3270 CabinetBBSAction.Checked := True;
3273 if GikoForm.ActiveBBS = nil then
3274 GikoForm.ShowBBSTree( BBSs[ 0 ] )
3276 GikoForm.ShowBBSTree( GikoForm.ActiveBBS );
3279 // *************************************************************************
3280 //!
\83L
\83\83\83r
\83l
\83b
\83g
\82Ì
\95\
\8e¦
\82ð
\97\9a\97ð
\83\8a\83X
\83g
\82É
\82·
\82é
3281 // *************************************************************************
3282 procedure TGikoDM.CabinetHistoryActionExecute(Sender: TObject);
3284 GikoForm.ShowHistoryTree;
3286 // *************************************************************************
3287 //!
\83L
\83\83\83r
\83l
\83b
\83g
\82Ì
\95\
\8e¦
\82ð
\82¨
\8bC
\82É
\93ü
\82è
\83\8a\83X
\83g
\82É
\82·
\82é
3288 // *************************************************************************
3289 procedure TGikoDM.CabinetFavoriteActionExecute(Sender: TObject);
3295 if GikoForm.CabinetPanel.Visible then begin
3296 if GikoForm.TreeType = gttFavorite then begin
3297 GikoForm.CabinetVisible( False );
3298 CabinetFavoriteAction.Checked := False;
3300 CabinetFavoriteAction.Checked := True;
3303 GikoForm.CabinetVisible( True );
3304 CabinetFavoriteAction.Checked := True;
3307 // BBS...BBS, History, Favorite
3308 GikoSys.Setting.CabinetIndex := GikoForm.CabinetSelectPopupMenu.Items.Count - 1;
3310 b := GikoForm.CabinetSelectPopupMenu.Items.Count - 1;
3311 for i := 0 to b do begin
3312 item := GikoForm.CabinetSelectPopupMenu.Items[ i ];
3313 if item is TBBSMenuItem then begin
3314 item.Checked := False;
3315 // CabinetMenu
\82Í CabinetSelectPopupMenu
\82Æ
\93¯
\82¶
\82Æ
\8c\88\82ß
\82¤
\82¿
\82µ
\82¿
\82á
\82¤
3316 GikoForm.CabinetMenu.Items[ i ].Checked := False;
3320 //
\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Ö
3321 GikoForm.HistoryToolBar.Hide;
3322 GikoForm.FavoriteToolBar.Show;
3323 GikoForm.TreeView.Visible := False;
3324 GikoForm.FavoriteTreeView.Visible := True;
3326 GikoForm.CabinetSelectToolButton.Caption := '
\82¨
\8bC
\82É
\93ü
\82è';
3327 GikoForm.TreeType := gttFavorite;
3329 //
\83\81\83j
\83\85\81[
\8by
\82Ñ
\83{
\83^
\83\93\82Ì
\83`
\83F
\83b
\83N
\82ð
\90Ý
\92è
3330 CabinetBBSAction.Checked := False;
3331 CabinetHistoryAction.Checked := False;
3333 //
\82¨
\8bC
\82É
\93ü
\82è
\82Ì
\83c
\83\8a\81[
\82ð
\93W
\8aJ
3334 GikoForm.FavoriteTreeView.Items.GetFirstNode.Expanded := True;
3337 // *************************************************************************
3338 //!
\83L
\83\83\83r
\83l
\83b
\83g
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3339 // *************************************************************************
3340 procedure TGikoDM.CabinetVisibleActionExecute(Sender: TObject);
3342 case GikoForm.TreeType of
3343 gttHistory: CabinetHistoryAction.Execute;
3344 gttFavorite: CabinetFavoriteAction.Execute;
3346 CabinetBBSAction.Execute;
3349 // *************************************************************************
3350 //!
\83L
\83\83\83r
\83l
\83b
\83g
\82ð
\95Â
\82¶
\82é
3351 // *************************************************************************
3352 procedure TGikoDM.CabinetCloseActionExecute(Sender: TObject);
3354 //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ã
3356 // *************************************************************************
3357 //!
\83\8a\83X
\83g
\82ð
\91å
\82«
\82¢
\83A
\83C
\83R
\83\93\95\
\8e¦
\82É
\82·
\82é
3358 // *************************************************************************
3359 procedure TGikoDM.LargeIconActionExecute(Sender: TObject);
3361 GikoForm.ListView.ViewStyle := vsIcon;
3362 LargeIconAction.Checked := True;
3364 // *************************************************************************
3365 //!
\83\8a\83X
\83g
\82ð
\8f¬
\82³
\82¢
\83A
\83C
\83R
\83\93\95\
\8e¦
\82É
\82·
\82é
3366 // *************************************************************************
3367 procedure TGikoDM.SmallIconActionExecute(Sender: TObject);
3369 GikoForm.ListView.ViewStyle := vsSmallIcon;
3370 SmallIconAction.Checked := True;
3372 // *************************************************************************
3373 //!
\83\8a\83X
\83g
\82ð
\88ê
\97\97\95\
\8e¦
\82É
\82·
\82é
3374 // *************************************************************************
3375 procedure TGikoDM.ListIconActionExecute(Sender: TObject);
3377 GikoForm.ListView.ViewStyle := vsList;
3378 ListIconAction.Checked := True;
3380 // *************************************************************************
3381 //!
\83\8a\83X
\83g
\82ð
\8fÚ
\8d×
\95\
\8e¦
\82É
\82·
\82é
3382 // *************************************************************************
3383 procedure TGikoDM.DetailIconActionExecute(Sender: TObject);
3385 GikoForm.ListView.ViewStyle := vsReport;
3386 DetailIconAction.Checked := True;
3388 // *************************************************************************
3389 //!
\83_
\83E
\83\93\83\8d\81[
\83h
\82ð
\92\86\8e~
\82·
\82é
3390 // *************************************************************************
3391 procedure TGikoDM.StopActionExecute(Sender: TObject);
3393 GikoForm.FControlThread.DownloadAbort;
3394 if GikoForm.WorkCount <> 0 then GikoForm.WorkCount := 0;
3396 GikoForm.Animate.Active := False;
3399 GikoForm.ScreenCursor := crDefault;
3401 // *************************************************************************
3402 //!
\83\8a\83X
\83g
\82Æ
\83u
\83\89\83E
\83U
\82Ì
\8fc
\89¡
\94z
\92u
\82ð
\95Ï
\8dX
\82·
\82é
3403 // *************************************************************************
3404 procedure TGikoDM.ArrangeActionExecute(Sender: TObject);
3406 if ArrangeAction.Checked then begin
3408 GikoForm.ViewPanel.Align := alNone;
3409 GikoForm.ListSplitter.Align := alNone;
3410 GikoForm.ThreadPanel.Align := alNone;
3412 GikoForm.ViewPanel.Width := GikoForm.BrowserSizeWidth;
3413 GikoForm.ViewPanel.Align := alLeft;
3415 GikoForm.ListSplitter.Width := 5;
3416 GikoForm.ListSplitter.Align := alLeft;
3418 GikoForm.ViewPanel.Left := -10;
3420 GikoForm.ThreadPanel.Align := alClient;
3422 GikoSys.Setting.ListOrientation := gloHorizontal;
3423 case GikoSys.Setting.ListWidthState of
3425 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_NORMAL;
3426 BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_MIN;
3427 GikoForm.ViewPanel.Width := 1;
3430 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_MAX;
3431 BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_MIN;
3434 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_MAX;
3435 BrowserMinAction.ImageIndex := TOOL_ICON_WIDTH_NORMAL;
3436 GikoForm.ViewPanel.Width := GikoForm.ThreadMainPanel.Width - 80;
3441 GikoForm.ViewPanel.Align := alNone;
3442 GikoForm.ListSplitter.Align := alNone;
3443 GikoForm.ThreadPanel.Align := alNone;
3445 GikoForm.ViewPanel.Height := GikoForm.BrowserSizeHeight;
3446 GikoForm.ViewPanel.Align := alTop;
3448 GikoForm.ListSplitter.Height := 5;
3449 GikoForm.ListSplitter.Align := alTop;
3451 GikoForm.ViewPanel.Top := -10;
3453 GikoForm.ThreadPanel.Align := alClient;
3454 GikoSys.Setting.ListOrientation := gloVertical;
3455 case GikoSys.Setting.ListHeightState of
3457 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_NORMAL;
3458 BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_MIN;
3459 GikoForm.ViewPanel.Height := 1;
3462 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_MAX;
3463 BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_MIN;
3466 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_MAX;
3467 BrowserMinAction.ImageIndex := TOOL_ICON_HEIGHT_NORMAL;
3468 GikoForm.ViewPanel.Height :=
3469 GikoForm.ThreadMainPanel.Height - GikoForm.BrowserCoolBar.Height - 7;
3474 // *************************************************************************
3475 //!
\83y
\83C
\83\93\82Ì
\83T
\83C
\83Y
\82ð
\8f\89\8aú
\89»
\82·
\82é
3476 // *************************************************************************
3477 procedure TGikoDM.PaneInitActionExecute(Sender: TObject);
3479 GikoForm.CabinetPanel.Width := 150;
3480 GikoForm.MessagePanel.Height := 40;
3482 GikoForm.BrowserSizeWidth := 200;
3483 GikoForm.BrowserSizeHeight := 200;
3484 if ArrangeAction.Checked then begin
3485 GikoForm.ViewPanel.Width := GikoForm.BrowserSizeWidth;
3487 GikoForm.ViewPanel.Height := GikoForm.BrowserSizeHeight;
3489 if GikoSys.Setting.ListOrientation = gloHorizontal then begin
3490 if GikoSys.Setting.ListHeightState = glsMax then begin
3491 BrowserMaxAction.ImageIndex := TOOL_ICON_HEIGHT_MAX;
3492 GikoSys.Setting.ListHeightState := glsNormal;
3495 if GikoSys.Setting.ListWidthState = glsMax then begin
3496 BrowserMaxAction.ImageIndex := TOOL_ICON_WIDTH_MAX;
3497 GikoSys.Setting.ListWidthState := glsNormal;
3501 // *************************************************************************
3502 //!
\83u
\83\89\83E
\83U
\83^
\83u
\82Ì
\95\
\8e¦
\8fó
\91Ô
\82ð
\95Ï
\8dX
\82·
\82é
3503 // *************************************************************************
3504 procedure TGikoDM.BrowserTabVisibleActionExecute(Sender: TObject);
3506 GikoSys.Setting.BrowserTabVisible := BrowserTabVisibleAction.Checked;
3507 GikoForm.SetBrowserTabState;
3509 // *************************************************************************
3510 //!
\83u
\83\89\83E
\83U
\83^
\83u
\82ð
\8fã
\82É
\95\
\8e¦
\82·
\82é
3511 // *************************************************************************
3512 procedure TGikoDM.BrowserTabTopActionExecute(Sender: TObject);
3514 BrowserTabBottomAction.Checked := False;
3515 BrowserTabTopAction.Checked := True;
3516 GikoSys.Setting.BrowserTabPosition := gtpTop;
3517 GikoForm.SetBrowserTabState;
3519 // *************************************************************************
3520 //!
\83u
\83\89\83E
\83U
\83^
\83u
\82ð
\89º
\82É
\95\
\8e¦
\82·
\82é
3521 // *************************************************************************
3522 procedure TGikoDM.BrowserTabBottomActionExecute(Sender: TObject);
3524 BrowserTabTopAction.Checked := False;
3525 BrowserTabBottomAction.Checked := True;
3526 GikoSys.Setting.BrowserTabPosition := gtpBottom;
3527 GikoForm.SetBrowserTabState;
3529 // *************************************************************************
3530 //!
\83u
\83\89\83E
\83U
\83^
\83u
\82Ì
\83X
\83^
\83C
\83\8b\82ð
\83^
\83u
\83X
\83^
\83C
\83\8b\82É
\82·
\82é
3531 // *************************************************************************
3532 procedure TGikoDM.BrowserTabTabStyleActionExecute(Sender: TObject);
3534 BrowserTabButtonStyleAction.Checked := False;
3535 BrowserTabFlatStyleAction.Checked := False;
3536 BrowserTabTabStyleAction.Checked := True;
3537 GikoSys.Setting.BrowserTabStyle := gtsTab;
3538 GikoForm.SetBrowserTabState;
3540 // *************************************************************************
3541 //!
\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é
3542 // *************************************************************************
3543 procedure TGikoDM.BrowserTabButtonStyleActionExecute(Sender: TObject);
3545 BrowserTabTabStyleAction.Checked := False;
3546 BrowserTabFlatStyleAction.Checked := False;
3547 BrowserTabButtonStyleAction.Checked := True;
3548 GikoSys.Setting.BrowserTabStyle := gtsButton;
3549 GikoForm.SetBrowserTabState;
3551 // *************************************************************************
3552 //!
\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é
3553 // *************************************************************************
3554 procedure TGikoDM.BrowserTabFlatStyleActionExecute(Sender: TObject);
3556 BrowserTabFlatStyleAction.Checked := True;
3557 BrowserTabTabStyleAction.Checked := False;
3558 BrowserTabButtonStyleAction.Checked := False;
3559 GikoSys.Setting.BrowserTabStyle := gtsFlat;
3560 GikoForm.SetBrowserTabState;
3562 // *************************************************************************
3563 //!
\83u
\83\89\83E
\83U
\82É
\83t
\83H
\81[
\83J
\83X
\82ð
\93\96\82Ä
\82é
3564 // *************************************************************************
3565 procedure TGikoDM.SetFocusForBrowserActionExecute(Sender: TObject);
3567 GikoForm.ActiveContent.Browser.SetFocus;
3569 // *************************************************************************
3570 //!
\83u
\83\89\83E
\83U
\82É
\83t
\83H
\81[
\83J
\83X
\82ð
\93\96\82Ä
\82éUpdate
\83C
\83x
\83\93\83g
3571 // *************************************************************************
3572 procedure TGikoDM.SetFocusForBrowserActionUpdate(Sender: TObject);
3574 if( GikoForm.ActiveContent <> nil) and (GikoForm.ActiveContent.Browser <> nil) and
3575 (GikoForm.ActiveContent.Browser <> GikoForm.BrowserNullTab.Browser) then
3576 TAction(Sender).Enabled := true
3578 TAction(Sender).Enabled := false;
3580 // *************************************************************************
3581 //!
\83X
\83\8c\83b
\83h
\88ê
\97\97\82É
\83t
\83H
\81[
\83J
\83X
\82ð
\93\96\82Ä
\82é
3582 // *************************************************************************
3583 procedure TGikoDM.SetFocusForThreadListActionExecute(Sender: TObject);
3585 if GikoForm.ActiveContent <> nil then
3586 GikoForm.WebBrowserClick(GikoForm.ActiveContent.Browser); //
\88ê
\89ñBrowser
\82É
\93\96\82Ä
\82È
\82¢
\82Æ
\93®
\82©
\82È
\82¢
\82Æ
\82«
\82ª
\82 \82é
3587 GikoForm.ListView.SetFocus;
3589 if( GikoForm.ListView.Items.Count > 0 ) and (GikoForm.ListView.ItemFocused = nil) then
3590 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é
3592 //
\83X
\83N
\83\8d\81[
\83\8b\82³
\82¹
\82é
3593 if (GikoForm.ListView.ItemFocused <> nil) then begin
3594 GikoForm.ListView.ItemFocused.MakeVisible(False);
3597 // *************************************************************************
3598 //!
\83L
\83\83\83r
\83l
\83b
\83g
\82É
\83t
\83H
\81[
\83J
\83X
\82ð
\93\96\82Ä
\82é
3599 // *************************************************************************
3600 procedure TGikoDM.SetFocusForCabinetActionExecute(Sender: TObject);
3602 if GikoForm.ActiveContent <> nil then
3603 GikoForm.WebBrowserClick(GikoForm.ActiveContent.Browser); //
\88ê
\89ñBrowser
\82É
\93\96\82Ä
\82È
\82¢
\82Æ
\93®
\82©
\82È
\82¢
\82Æ
\82«
\82ª
\82 \82é
3604 if GikoForm.TreeView.Visible then begin
3605 GikoForm.TreeView.SetFocus;
3606 if(GikoForm.TreeView.Items.Count > 0) and ( GikoForm.TreeView.Selected = nil ) then
3607 GikoForm.TreeView.Items.Item[0].Selected := true;
3608 end else if GikoForm.FavoriteTreeView.Visible then begin
3609 GikoForm.FavoriteTreeView.SetFocus;
3610 if(GikoForm.FavoriteTreeView.Items.Count > 0) and (GikoForm.FavoriteTreeView.Selected = nil) then
3611 GikoForm.FavoriteTreeView.Items.Item[0].Selected := true;
3614 // *************************************************************************
3615 //!
\83L
\83\83\83r
\83l
\83b
\83g
\82É
\83t
\83H
\81[
\83J
\83X
\82ð
\93\96\82Ä
\82éUpdate
\83C
\83x
\83\93\83g
3616 // *************************************************************************
3617 procedure TGikoDM.SetFocusForCabinetActionUpdate(Sender: TObject);
3619 SetFocusForCabinetAction.Enabled := GikoForm.CabinetPanel.Visible;
3621 // *************************************************************************
3622 //!
\83X
\83\8c\83b
\83h
\88ê
\97\97\82ð
\8dÅ
\91å
\89»
\82µ
\82Ä
\83t
\83H
\81[
\83J
\83X
\82ð
\93\96\82Ä
\82é
3623 // *************************************************************************
3624 procedure TGikoDM.ThreadlistMaxAndFocusActionExecute(Sender: TObject);
3626 BrowserMinAction.Execute;
3627 SetFocusForThreadListAction.Execute;
3629 // *************************************************************************
3630 //!
\83X
\83\8c\95\
\8e¦
\82ð
\8dÅ
\91å
\89»
\82µ
\82Ä
\83t
\83H
\81[
\83J
\83X
\82ð
\93\96\82Ä
\82é
3631 // *************************************************************************
3632 procedure TGikoDM.BrowserMaxAndFocusActionExecute(Sender: TObject);
3634 BrowserMaxAction.Execute;
3635 SetFocusForBrowserAction.Execute;
3637 // *************************************************************************
3638 //!
\83X
\83\8c\83b
\83h
\88ê
\97\97\82Ì
\91I
\91ð
\82ð
\8dí
\8f\9c\82·
\82é
3639 // *************************************************************************
3640 procedure TGikoDM.UnSelectedListViewActionExecute(Sender: TObject);
3642 if GikoForm.ListView.Selected <> nil then begin
3643 GikoForm.ListView.Selected.Focused := True;
3644 GikoForm.ListView.Selected := nil;
3647 ////////////////////////////////
\95\
\8e¦
\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
3648 // *************************************************************************
3649 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\8aù
\93Ç
\82É
\82·
\82é
3650 // *************************************************************************
3651 procedure TGikoDM.KidokuActionExecute(Sender: TObject);
3653 SetThreadReadProperty(true);
3655 // *************************************************************************
3656 //!
\91I
\91ð
\82³
\82ê
\82Ä
\82¢
\82é
\83X
\83\8c\83b
\83h
\82ð
\96¢
\93Ç
\82É
\82·
\82é
3657 // *************************************************************************
3658 procedure TGikoDM.MidokuActionExecute(Sender: TObject);
3660 SetThreadReadProperty(false);
3662 // *************************************************************************
3663 //!
\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Ç
3664 // *************************************************************************
3665 procedure TGikoDM.SetThreadReadProperty(read: Boolean);
3670 List := TList.Create;
3672 GikoForm.SelectListItem(List);
3673 for i := 0 to List.Count - 1 do begin
3674 if TObject(List[i]) is TThreadItem then begin
3675 if (TThreadItem(List[i]).IsLogFile) then begin
3676 TThreadItem(List[i]).UnRead := not read;
3680 if GikoForm.TreeView.Visible then
3681 GikoForm.TreeView.Refresh;
3682 if GikoForm.ListView.Visible then
3683 GikoForm.ListView.Refresh;
3688 // *************************************************************************
3689 //!
\83\8a\83X
\83g
\82ð
\91S
\82Ä
\91I
\91ð
\82·
\82é
3690 // *************************************************************************
3691 procedure TGikoDM.AllSelectActionExecute(Sender: TObject);
3693 GikoForm.ListViewAllSelect;
3695 // *************************************************************************
3696 //!
\83\8a\83X
\83g
\82ð
\91S
\82Ä
\91I
\91ð
\82·
\82éUpdate
\83C
\83x
\83\93\83g
3697 // *************************************************************************
3698 procedure TGikoDM.AllSelectActionUpdate(Sender: TObject);
3700 AllSelectAction.Enabled := GikoForm.ListView.SelCount > 0;
3702 ////////////////////////////////
\95Ò
\8fW
\82Ü
\82Å
\82¨
\82µ
\82Ü
\82¢/////////////////////
3703 //!
\83X
\83\8c\83b
\83h
\82Ì
\83T
\83C
\83Y
\82ð
\8dÄ
\8cv
\8eZ
\82·
\82é
3704 procedure TGikoDM.ThreadSizeCalcForFileActionExecute(Sender: TObject);
3706 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 +
3707 '
\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' +
3708 '
\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';
3709 RECALC_TITLE : String = '
\83X
\83\8c\83b
\83h
\82Ì
\97e
\97Ê
\82ð
\83t
\83@
\83C
\83\8b\82©
\82ç
\8dÄ
\8cv
\8eZ';
3712 limitSize : Integer;
3715 {
\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Í
3716 \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
3717 \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õ
3718 è
\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
3719 DAT
\82Ì
\83t
\83@
\83C
\83\8b\83T
\83C
\83Y
\82Å
\8dX
\90V
\82·
\82é
3721 if MsgBox(GikoForm.Handle, RECALC_MES,
3722 RECALC_TITLE, MB_YESNO or MB_ICONWARNING) = ID_YES then begin
3723 //è
\87\92l
\82Ì
\8am
\94F
3724 limitSize := LIMIT_SIZE;
3725 limitStr := IntToStr(limitSize);
3726 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
3727 limitSize := StrToInt(MojuUtils.ZenToHan(limitStr));
3728 if (limitSize < 0) then begin
3729 ShowMessage('è
\87\92l
\82É
\95\89\82Í
\8ew
\92è
\82Å
\82«
\82Ü
\82¹
\82ñ
\81I');
3730 ThreadSizeCalcForFileActionExecute(nil);
3732 RecalcThreadSize(limitSize);
3737 //! 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
3738 procedure TGikoDM.RecalcThreadSize(limit : Integer);
3740 i, j, tmpSize : Integer;
3743 Thread: TThreadItem;
3746 //
\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
3747 GikoForm.ScreenCursor := crHourGlass;
3749 GikoForm.ProgressBar.Max := BoardGroups[0].Count;
3750 for i := 0 to BoardGroups[0].Count - 1 do begin
3751 Obj := BoardGroups[0].Objects[i];
3752 if (Obj <> nil) then begin
3753 Board := TBoard(Obj);
3754 if not Board.IsThreadDatRead then begin
3755 GikoSys.ReadSubjectFile(Board);
3757 for j := 0 to Board.Count - 1 do begin
3758 Thread := Board.Items[j];
3759 if (Thread <> nil) and (Thread.IsLogFile)
3760 and (Thread.Size <= limit) then begin
3761 dat := TStringList.Create;
3763 tmpSize := Thread.Size;
3765 dat.LoadFromFile(Thread.GetThreadFileName);
3766 tmpSize := Length(dat.Text);
3767 tmpSize := tmpSize - dat.Count;
3770 Thread.Size := tmpSize;
3777 GikoForm.ProgressBar.StepBy(1);
3780 GikoForm.ScreenCursor := crDefault;
3782 GikoForm.ProgressBar.Position := 0;
3783 ShowMessage('
\8cv
\8eZ
\8fI
\97¹
\82µ
\82Ü
\82µ
\82½
\81B');