| 547 |
N66: TMenuItem; |
N66: TMenuItem; |
| 548 |
dat1: TMenuItem; |
dat1: TMenuItem; |
| 549 |
SelectItemSaveForDat: TAction; |
SelectItemSaveForDat: TAction; |
| 550 |
|
LogFolderOpenAction: TAction; |
| 551 |
|
OpenLogFolder: TMenuItem; |
| 552 |
procedure FormCreate(Sender: TObject); |
procedure FormCreate(Sender: TObject); |
| 553 |
procedure FormDestroy(Sender: TObject); |
procedure FormDestroy(Sender: TObject); |
| 554 |
procedure CabinetPanelHide(Sender: TObject); |
procedure CabinetPanelHide(Sender: TObject); |
| 881 |
procedure KidokuActionExecute(Sender: TObject); |
procedure KidokuActionExecute(Sender: TObject); |
| 882 |
procedure MidokuActionExecute(Sender: TObject); |
procedure MidokuActionExecute(Sender: TObject); |
| 883 |
procedure SelectItemSaveForDatExecute(Sender: TObject); |
procedure SelectItemSaveForDatExecute(Sender: TObject); |
| 884 |
|
procedure BrowserPanelCanResize(Sender: TObject; var NewWidth, |
| 885 |
|
NewHeight: Integer; var Resize: Boolean); |
| 886 |
|
procedure LogFolderOpenActionExecute(Sender: TObject); |
| 887 |
|
procedure LogFolderOpenActionUpdate(Sender: TObject); |
| 888 |
private |
private |
| 889 |
{ Private 宣言 } |
{ Private 宣言 } |
| 890 |
//RoundList : TRoundList; |
//RoundList : TRoundList; |
| 1239 |
Self.OnDeactivate := AppFormDeactivate; |
Self.OnDeactivate := AppFormDeactivate; |
| 1240 |
Application.HookMainWindow(Hook); |
Application.HookMainWindow(Hook); |
| 1241 |
Application.OnMessage := HandleAppMessage; //なんか無くても大丈夫になった by もじゅ |
Application.OnMessage := HandleAppMessage; //なんか無くても大丈夫になった by もじゅ |
| 1242 |
|
Self.DoubleBuffered := true; |
| 1243 |
FTreeType := gttNone; |
FTreeType := gttNone; |
| 1244 |
|
|
| 1245 |
FSearchDialog := nil; |
FSearchDialog := nil; |
| 1248 |
BrowserNullTab.Browser.Navigate(BLANK_HTML); |
BrowserNullTab.Browser.Navigate(BLANK_HTML); |
| 1249 |
FBrowsers := TList.Create; |
FBrowsers := TList.Create; |
| 1250 |
for i := 0 to BROWSER_COUNT -1 do begin |
for i := 0 to BROWSER_COUNT -1 do begin |
| 1251 |
newBrowser := TWebBrowser.Create(nil); |
FBrowsers.Add(TWebBrowser.Create(nil)); |
| 1252 |
|
newBrowser := FBrowsers[FBrowsers.Count - 1]; |
| 1253 |
TOleControl(newBrowser).Parent := BrowserPanel; |
TOleControl(newBrowser).Parent := BrowserPanel; |
| 1254 |
TOleControl(newBrowser).Align := alClient; |
newBrowser.Align := alNone; |
| 1255 |
|
TOleControl(newBrowser).DoubleBuffered := true; |
| 1256 |
newBrowser.OnDocumentComplete := BrowserDocumentComplete; |
newBrowser.OnDocumentComplete := BrowserDocumentComplete; |
| 1257 |
newBrowser.OnBeforeNavigate2 := BrowserBeforeNavigate2; |
newBrowser.OnBeforeNavigate2 := BrowserBeforeNavigate2; |
| 1258 |
newBrowser.OnEnter := BrowserEnter; |
newBrowser.OnEnter := BrowserEnter; |
| 1261 |
//newBrowser.OnTitleChange := BrowserTitleChange; |
//newBrowser.OnTitleChange := BrowserTitleChange; |
| 1262 |
newBrowser.Navigate(BLANK_HTML); |
newBrowser.Navigate(BLANK_HTML); |
| 1263 |
ShowWindow(newBrowser.Handle, SW_HIDE); |
ShowWindow(newBrowser.Handle, SW_HIDE); |
| 1264 |
FBrowsers.Add(newBrowser); |
|
| 1265 |
end; |
end; |
| 1266 |
BrowserNullTab.Browser.BringToFront; |
BrowserNullTab.Browser.BringToFront; |
| 1267 |
ShowWindow(BrowserNullTab.Browser.Handle, SW_SHOW); |
ShowWindow(BrowserNullTab.Browser.Handle, SW_SHOW); |
| 3374 |
FileName: string; |
FileName: string; |
| 3375 |
sTitle: string; |
sTitle: string; |
| 3376 |
// HtmlName: string; |
// HtmlName: string; |
| 3377 |
doc: Variant; |
doc: Variant; |
| 3378 |
s: string; |
s: string; |
| 3379 |
// OldCursor: TCursor; |
// OldCursor: TCursor; |
| 3380 |
i: Integer; |
i: Integer; |
| 4907 |
// Mouse.CursorPos := BrowserSizeButton.ClientToScreen(Point( |
// Mouse.CursorPos := BrowserSizeButton.ClientToScreen(Point( |
| 4908 |
// System.Round(BrowserToolBar.ButtonWidth div 2), |
// System.Round(BrowserToolBar.ButtonWidth div 2), |
| 4909 |
// System.Round(BrowserToolBar.ButtonHeight div 2))); |
// System.Round(BrowserToolBar.ButtonHeight div 2))); |
| 4910 |
BrowserTab.OnChange(nil); |
//BrowserTab.OnChange(nil); |
| 4911 |
end; |
end; |
| 4912 |
|
|
| 4913 |
procedure TGikoForm.BrowserMinActionExecute(Sender: TObject); |
procedure TGikoForm.BrowserMinActionExecute(Sender: TObject); |
| 4914 |
begin |
begin |
| 4915 |
|
|
| 4916 |
if GikoSys.Setting.ListOrientation = gloHorizontal then begin |
if GikoSys.Setting.ListOrientation = gloHorizontal then begin |
| 4917 |
case GikoSys.Setting.ListWidthState of |
case GikoSys.Setting.ListWidthState of |
| 4918 |
glsMax, glsNormal: begin |
glsMax, glsNormal: begin |
| 5190 |
|
|
| 5191 |
if FIsMinimize = mtMinimized then begin |
if FIsMinimize = mtMinimized then begin |
| 5192 |
if FActiveContent <> nil then begin |
if FActiveContent <> nil then begin |
| 5193 |
Application.ProcessMessages; |
//Application.ProcessMessages; |
| 5194 |
doc := Idispatch( olevariant(FActiveContent.Browser.ControlInterface).Document) as IHTMLDocument2; |
doc := Idispatch( olevariant(FActiveContent.Browser.ControlInterface).Document) as IHTMLDocument2; |
| 5195 |
doc.Body.ScrollTop := FActiveContent.Thread.ScrollTop; |
doc.Body.ScrollTop := FActiveContent.Thread.ScrollTop; |
| 5196 |
FIsMinimize := mtNone; |
FIsMinimize := mtNone; |
| 5400 |
if TBrowserRecord(BrowserTab.Tabs.Objects[i]).Browser <> nil then begin |
if TBrowserRecord(BrowserTab.Tabs.Objects[i]).Browser <> nil then begin |
| 5401 |
doc := TBrowserRecord(BrowserTab.Tabs.Objects[i]).Browser.Document; |
doc := TBrowserRecord(BrowserTab.Tabs.Objects[i]).Browser.Document; |
| 5402 |
TBrowserRecord(BrowserTab.Tabs.Objects[i]).Thread.ScrollTop := doc.Body.ScrollTop; |
TBrowserRecord(BrowserTab.Tabs.Objects[i]).Thread.ScrollTop := doc.Body.ScrollTop; |
| 5403 |
|
|
| 5404 |
end; |
end; |
| 5405 |
except |
except |
| 5406 |
TBrowserRecord(BrowserTab.Tabs.Objects[i]).Thread.ScrollTop := 0; |
TBrowserRecord(BrowserTab.Tabs.Objects[i]).Thread.ScrollTop := 0; |
| 7457 |
Referer := Referer + ':' + Port; |
Referer := Referer + ':' + Port; |
| 7458 |
Referer := Referer + Path; |
Referer := Referer + Path; |
| 7459 |
Headers := 'Referer: ' + Referer; |
Headers := 'Referer: ' + Referer; |
|
|
|
| 7460 |
FPreviewBrowser.Navigate(NavURL, Flags, TargetFrameName, PostData, Headers); |
FPreviewBrowser.Navigate(NavURL, Flags, TargetFrameName, PostData, Headers); |
|
|
|
| 7461 |
if ARect.Top + WindowHeight > Screen.DesktopHeight then |
if ARect.Top + WindowHeight > Screen.DesktopHeight then |
| 7462 |
ARect.Top := Screen.DesktopHeight - WindowHeight; |
ARect.Top := Screen.DesktopHeight - WindowHeight; |
| 7463 |
if ARect.Left + WindowWidth > Screen.DesktopWidth then |
if ARect.Left + WindowWidth > Screen.DesktopWidth then |
| 7500 |
Num: Integer; |
Num: Integer; |
| 7501 |
ThreadItem: TThreadItem; |
ThreadItem: TThreadItem; |
| 7502 |
begin |
begin |
| 7503 |
|
Result := False; |
| 7504 |
Doc := FactiveContent.FBrowser.Document as IHtmlDocument2; |
Doc := FactiveContent.FBrowser.Document as IHtmlDocument2; |
| 7505 |
Range := Doc.selection.createRange as IHTMLTxtRange; |
if Assigned(Doc) then begin |
| 7506 |
s := CustomStringReplace(Range.text, ' ', ' ');//全角空白を半角空白に |
Range := Doc.selection.createRange as IHTMLTxtRange; |
| 7507 |
s := ZenToHan(Trim(s)); |
s := CustomStringReplace(Range.text, ' ', ' ');//全角空白を半角空白に |
| 7508 |
if GikoSys.IsNumeric(s) then begin |
s := ZenToHan(Trim(s)); |
| 7509 |
|
if GikoSys.IsNumeric(s) then begin |
| 7510 |
ThreadItem := GetActiveContent; |
|
| 7511 |
if ThreadItem <> nil then begin |
ThreadItem := GetActiveContent; |
| 7512 |
Num := StrToInt(s); |
if ThreadItem <> nil then begin |
| 7513 |
FHint.PopupType := gptThread; |
Num := StrToInt(s); |
| 7514 |
SetResPopupText(ThreadItem, Num, Num, False, False); |
FHint.PopupType := gptThread; |
| 7515 |
if FHint.ResCount <> 0 then |
SetResPopupText(ThreadItem, Num, Num, False, False); |
| 7516 |
ShowTextPopup; |
if FHint.ResCount <> 0 then |
| 7517 |
Result := False; |
ShowTextPopup; |
| 7518 |
end else |
Result := False; |
| 7519 |
|
end else |
| 7520 |
|
Result := True; |
| 7521 |
|
end else begin |
| 7522 |
Result := True; |
Result := True; |
| 7523 |
end else begin |
end; |
|
Result := True; |
|
| 7524 |
end; |
end; |
| 7525 |
end; |
end; |
| 7526 |
|
|
| 10372 |
begin |
begin |
| 10373 |
List := TList.Create; |
List := TList.Create; |
| 10374 |
try |
try |
| 10375 |
|
Screen.Cursor := crHourGlass; |
| 10376 |
SelectListItem(List); |
SelectListItem(List); |
| 10377 |
FileSaveAs1.Dialog.Title := '選択スレッドをdatのまま保存'; |
if ((GikoSys.Setting.ListOrientation = gloVertical) and |
| 10378 |
FileSaveAs1.Dialog.Filter := 'DATファイル(*.dat)|*.dat'; |
(GikoSys.Setting.ListHeightState = glsMax)) or |
| 10379 |
for i := 0 to List.Count - 1 do begin |
((GikoSys.Setting.ListOrientation = gloHorizontal) and |
| 10380 |
if (TObject(List[i]) is TThreadItem) and (TThreadItem(List[i]).IsLogFile) then begin |
(GikoSys.Setting.ListWidthState = glsMax)) then |
| 10381 |
FileSaveAs1.Dialog.FileName := TThreadItem(List[i]).FileName; |
ShowMessage('スレッド一覧を表示してください') |
| 10382 |
if FileSaveAs1.Execute then begin |
else if(List.Count = 0) then |
| 10383 |
//なぜかキャンセルでもこっちに入ってくる |
ShowMessage('スレッドを選択してください') |
| 10384 |
if ExtractFilePath(FileSaveAs1.Dialog.FileName) <> '' then begin |
else begin |
| 10385 |
CopyFile(PChar(TThreadItem(List[i]).FilePath), |
FileSaveAs1.Dialog.Title := '選択スレッドをdatのまま保存'; |
| 10386 |
PChar(FileSaveAs1.Dialog.FileName), true); |
FileSaveAs1.Dialog.Filter := 'DATファイル(*.dat)|*.dat'; |
| 10387 |
|
for i := 0 to List.Count - 1 do begin |
| 10388 |
|
if (TObject(List[i]) is TThreadItem) and (TThreadItem(List[i]).IsLogFile) then begin |
| 10389 |
|
FileSaveAs1.Dialog.FileName := TThreadItem(List[i]).FileName; |
| 10390 |
|
if FileSaveAs1.Execute then begin |
| 10391 |
|
//なぜかキャンセルでもこっちに入ってくる |
| 10392 |
|
if ExtractFilePath(FileSaveAs1.Dialog.FileName) <> '' then begin |
| 10393 |
|
CopyFile(PChar(TThreadItem(List[i]).FilePath), |
| 10394 |
|
PChar(FileSaveAs1.Dialog.FileName), true); |
| 10395 |
|
end; |
| 10396 |
end; |
end; |
| 10397 |
end; |
end; |
| 10398 |
end; |
end; |
| 10399 |
end; |
end; |
| 10400 |
finally |
finally |
| 10401 |
|
Screen.Cursor := crDefault; |
| 10402 |
List.Free; |
List.Free; |
| 10403 |
end; |
end; |
| 10404 |
|
|
| 10413 |
begin |
begin |
| 10414 |
List := TList.Create; |
List := TList.Create; |
| 10415 |
try |
try |
| 10416 |
|
Screen.Cursor := crHourGlass; |
| 10417 |
SelectListItem(List); |
SelectListItem(List); |
| 10418 |
FileSaveAs1.Dialog.Title := '選択スレッドをHTML化して保存'; |
if ((GikoSys.Setting.ListOrientation = gloVertical) and |
| 10419 |
FileSaveAs1.Dialog.Filter := 'HTMLファイル(*.html)|*.html'; |
(GikoSys.Setting.ListHeightState = glsMax)) or |
| 10420 |
for i := 0 to List.Count - 1 do begin |
((GikoSys.Setting.ListOrientation = gloHorizontal) and |
| 10421 |
if (TObject(List[i]) is TThreadItem) and (TThreadItem(List[i]).IsLogFile) then begin |
(GikoSys.Setting.ListWidthState = glsMax)) then |
| 10422 |
FileSaveAs1.Dialog.FileName := TThreadItem(List[i]).Title + '.html'; |
ShowMessage('スレッド一覧を表示してください') |
| 10423 |
if FileSaveAs1.Execute then begin |
else if(List.Count = 0) then |
| 10424 |
//なぜかキャンセルでもこっちに入ってくる |
ShowMessage('スレッドを選択してください') |
| 10425 |
if ExtractFilePath(FileSaveAs1.Dialog.FileName) <> '' then begin |
else begin |
| 10426 |
html := TStringList.Create; |
FileSaveAs1.Dialog.Title := '選択スレッドをHTML化して保存'; |
| 10427 |
title := TThreadItem(List[i]).Title; |
FileSaveAs1.Dialog.Filter := 'HTMLファイル(*.html)|*.html'; |
| 10428 |
try |
for i := 0 to List.Count - 1 do begin |
| 10429 |
GikoSys.CreateHTML3(html, TThreadItem(List[i]), title); |
if (TObject(List[i]) is TThreadItem) and (TThreadItem(List[i]).IsLogFile) then begin |
| 10430 |
html.SaveToFile(FileSaveAs1.Dialog.FileName); |
FileSaveAs1.Dialog.FileName := TThreadItem(List[i]).Title + '.html'; |
| 10431 |
SkinorCSSFilesCopy(ExtractFilePath(FileSaveAs1.Dialog.FileName)); |
if FileSaveAs1.Execute then begin |
| 10432 |
finally |
//なぜかキャンセルでもこっちに入ってくる |
| 10433 |
html.Free; |
if ExtractFilePath(FileSaveAs1.Dialog.FileName) <> '' then begin |
| 10434 |
|
html := TStringList.Create; |
| 10435 |
|
title := TThreadItem(List[i]).Title; |
| 10436 |
|
try |
| 10437 |
|
GikoSys.CreateHTML3(html, TThreadItem(List[i]), title); |
| 10438 |
|
html.SaveToFile(FileSaveAs1.Dialog.FileName); |
| 10439 |
|
SkinorCSSFilesCopy(ExtractFilePath(FileSaveAs1.Dialog.FileName)); |
| 10440 |
|
finally |
| 10441 |
|
html.Free; |
| 10442 |
|
end; |
| 10443 |
end; |
end; |
| 10444 |
end; |
end; |
| 10445 |
end; |
end; |
| 10446 |
end; |
end; |
| 10447 |
end; |
end; |
| 10448 |
finally |
finally |
| 10449 |
|
Screen.Cursor := crDefault; |
| 10450 |
List.Free; |
List.Free; |
| 10451 |
end; |
end; |
| 10452 |
end; |
end; |
| 10549 |
end; |
end; |
| 10550 |
end; |
end; |
| 10551 |
|
|
| 10552 |
|
procedure TGikoForm.BrowserPanelCanResize(Sender: TObject; var NewWidth, |
| 10553 |
|
NewHeight: Integer; var Resize: Boolean); |
| 10554 |
|
var |
| 10555 |
|
i: Integer; |
| 10556 |
|
begin |
| 10557 |
|
if (FActiveContent <> nil) and (FActiveContent.Browser <> nil) then |
| 10558 |
|
LockWindowUpdate(FActiveContent.Browser.Handle); |
| 10559 |
|
for i := 0 to BROWSER_COUNT - 1 do |
| 10560 |
|
SetWindowPos(TWebBrowser(FBrowsers[i]).Handle, HWND_NOTOPMOST, 0, 0, NewWidth, NewHeight, SWP_NOMOVE + SWP_NOZORDER); |
| 10561 |
|
|
| 10562 |
|
if (FActiveContent <> nil) and (FActiveContent.Browser <> nil) then begin |
| 10563 |
|
SetWindowPos(FActiveContent.Browser.Handle, HWND_NOTOPMOST, 0, 0, NewWidth, NewHeight, SWP_NOMOVE + SWP_NOZORDER); |
| 10564 |
|
LockWindowUpdate(0); |
| 10565 |
|
end; |
| 10566 |
|
end; |
| 10567 |
|
|
| 10568 |
|
procedure TGikoForm.LogFolderOpenActionExecute(Sender: TObject); |
| 10569 |
|
var |
| 10570 |
|
List: TList; |
| 10571 |
|
begin |
| 10572 |
|
if ((GikoSys.Setting.ListOrientation = gloVertical) and |
| 10573 |
|
(GikoSys.Setting.ListHeightState = glsMax)) or |
| 10574 |
|
((GikoSys.Setting.ListOrientation = gloHorizontal) and |
| 10575 |
|
(GikoSys.Setting.ListWidthState = glsMax)) then begin |
| 10576 |
|
if(GetActiveContent <> nil) then begin |
| 10577 |
|
GikoSys.CreateProcess('explorer.exe', '/e,"' + ExtractFilePath(GetActiveContent.FilePath) + '"'); |
| 10578 |
|
end; |
| 10579 |
|
end else if GetActiveList is TCategory then begin |
| 10580 |
|
List := TList.Create; |
| 10581 |
|
try |
| 10582 |
|
SelectListItem(List); |
| 10583 |
|
GikoSys.CreateProcess('explorer.exe', '/e,"' + ExtractFilePath(TBoard(List[0]).FilePath) + '"'); |
| 10584 |
|
finally |
| 10585 |
|
List.Free; |
| 10586 |
|
end; |
| 10587 |
|
end else if GetActiveList is TBoard then begin |
| 10588 |
|
GikoSys.CreateProcess('explorer.exe', '/e,"' + ExtractFilePath(TBoard(GetActiveList).FilePath) + '"'); |
| 10589 |
|
end; |
| 10590 |
|
|
| 10591 |
|
end; |
| 10592 |
|
|
| 10593 |
|
procedure TGikoForm.LogFolderOpenActionUpdate(Sender: TObject); |
| 10594 |
|
begin |
| 10595 |
|
if (GetActiveList is TCategory) and (ListView.SelCount > 0) then |
| 10596 |
|
LogFolderOpenAction.Enabled := True |
| 10597 |
|
else if GetActiveList is TBoard then |
| 10598 |
|
LogFolderOpenAction.Enabled := True |
| 10599 |
|
else |
| 10600 |
|
LogFolderOpenAction.Enabled := False; |
| 10601 |
|
end; |
| 10602 |
|
|
| 10603 |
initialization |
initialization |
| 10604 |
OleInitialize(nil); |
OleInitialize(nil); |
| 10605 |
finalization |
finalization |