| 791 |
procedure FavoriteTreeViewURLCopyActionExecute(Sender: TObject); |
procedure FavoriteTreeViewURLCopyActionExecute(Sender: TObject); |
| 792 |
procedure FavoriteTreeViewNameCopyActionExecute(Sender: TObject); |
procedure FavoriteTreeViewNameCopyActionExecute(Sender: TObject); |
| 793 |
procedure FavoriteTreeViewNameURLCopyActionExecute(Sender: TObject); |
procedure FavoriteTreeViewNameURLCopyActionExecute(Sender: TObject); |
| 794 |
|
procedure LinkToolBarDragDrop(Sender, Source: TObject; X, Y: Integer); |
| 795 |
|
procedure LinkToolBarDragOver(Sender, Source: TObject; X, Y: Integer; |
| 796 |
|
State: TDragState; var Accept: Boolean); |
| 797 |
private |
private |
| 798 |
{ Private 宣言 } |
{ Private 宣言 } |
| 799 |
|
|
| 7391 |
|
|
| 7392 |
procedure TGikoForm.FavoriteTreeViewDragOver(Sender, Source: TObject; X, |
procedure TGikoForm.FavoriteTreeViewDragOver(Sender, Source: TObject; X, |
| 7393 |
Y: Integer; State: TDragState; var Accept: Boolean); |
Y: Integer; State: TDragState; var Accept: Boolean); |
| 7394 |
|
var |
| 7395 |
|
Node: TTreeNode; |
| 7396 |
begin |
begin |
| 7397 |
if Source = FavoriteTreeView then begin |
if Source = FavoriteTreeView then begin |
| 7398 |
if FavoriteTreeView.Selected = FavoriteTreeView.Items.GetFirstNode then begin |
if FavoriteTreeView.Selected = FavoriteTreeView.Items.GetFirstNode then begin |
| 7400 |
Exit; |
Exit; |
| 7401 |
end; |
end; |
| 7402 |
Accept := True; |
Accept := True; |
| 7403 |
end else |
end else if Source = BrowserTab then |
| 7404 |
|
Accept := True |
| 7405 |
|
else |
| 7406 |
Accept := False; |
Accept := False; |
| 7407 |
end; |
end; |
| 7408 |
|
|
| 7409 |
procedure TGikoForm.FavoriteTreeViewDragDrop(Sender, Source: TObject; X, |
procedure TGikoForm.FavoriteTreeViewDragDrop(Sender, Source: TObject; X, |
| 7410 |
Y: Integer); |
Y: Integer); |
| 7411 |
|
var |
| 7412 |
|
idx: Integer; |
| 7413 |
|
ThreadItem: TThreadItem; |
| 7414 |
|
Node: TTreeNode; |
| 7415 |
|
FavNode: TTreeNode; |
| 7416 |
|
FavoThreadItem: TFavoriteThreadItem; |
| 7417 |
begin |
begin |
| 7418 |
|
|
| 7419 |
if FavoriteTreeView.GetNodeAt(X, Y) = nil then |
Node := FavoriteTreeView.GetNodeAt(X, Y); |
| 7420 |
Exit; |
|
| 7421 |
if Source <> FavoriteTreeView then |
if Node = nil then |
|
Exit; |
|
|
if FavoriteTreeView.Selected = FavoriteTreeView.GetNodeAt(X, Y) then |
|
| 7422 |
Exit; |
Exit; |
| 7423 |
|
if Source <> BrowserTab then begin |
| 7424 |
|
if Source <> FavoriteTreeView then |
| 7425 |
|
Exit; |
| 7426 |
|
if FavoriteTreeView.Selected = Node then |
| 7427 |
|
Exit; |
| 7428 |
|
end; |
| 7429 |
|
|
| 7430 |
|
if Source = BrowserTab then begin |
| 7431 |
|
|
| 7432 |
|
idx := BrowserTab.TabIndex; |
| 7433 |
|
if BrowserTab.Tabs.Objects[idx] is TThreadItem then begin |
| 7434 |
|
ThreadItem := TThreadItem(BrowserTab.Tabs.Objects[idx]); |
| 7435 |
|
if not (TObject(Node.Data) is TFavoriteFolder) then |
| 7436 |
|
FavNode := Node.Parent |
| 7437 |
|
else |
| 7438 |
|
FavNode := Node; |
| 7439 |
|
|
| 7440 |
|
FavoThreadItem := TFavoriteThreadItem.Create; |
| 7441 |
|
FavoThreadItem.BBSID := ThreadItem.ParentBoard.BBSID; |
| 7442 |
|
FavoThreadItem.ThreadID := ThreadItem.FileName; |
| 7443 |
|
FavoThreadItem.ThreadName := ThreadItem.Title; |
| 7444 |
|
Node := FavoriteDM.TreeView.Items.AddChildObject(FavNode, ThreadItem.Title, FavoThreadItem); |
| 7445 |
|
Node.ImageIndex := 16; |
| 7446 |
|
Node.SelectedIndex := 16; |
| 7447 |
|
end; |
| 7448 |
|
|
| 7449 |
|
end else begin |
| 7450 |
|
|
| 7451 |
if TObject(FavoriteTreeView.GetNodeAt(X, Y).Data) is TFavoriteFolder then |
if TObject(Node.Data) is TFavoriteFolder then |
| 7452 |
FavoriteTreeView.Selected.MoveTo(FavoriteTreeView.GetNodeAt(X, Y), naAddChild) |
FavoriteTreeView.Selected.MoveTo(Node, naAddChild) |
| 7453 |
else if TObject(FavoriteTreeView.GetNodeAt(X, Y).Data) is TFavoriteBoardItem then |
else if TObject(Node.Data) is TFavoriteBoardItem then |
| 7454 |
FavoriteTreeView.Selected.MoveTo(FavoriteTreeView.GetNodeAt(X, Y), naInsert) |
FavoriteTreeView.Selected.MoveTo(Node, naInsert) |
| 7455 |
else if TObject(FavoriteTreeView.GetNodeAt(X, Y).Data) is TFavoriteThreadItem then |
else if TObject(Node.Data) is TFavoriteThreadItem then |
| 7456 |
FavoriteTreeView.Selected.MoveTo(FavoriteTreeView.GetNodeAt(X, Y), naInsert); |
FavoriteTreeView.Selected.MoveTo(Node, naInsert); |
| 7457 |
|
|
| 7458 |
|
end; |
| 7459 |
|
|
| 7460 |
SetLinkBar; |
SetLinkBar; |
| 7461 |
|
|
| 7820 |
|
|
| 7821 |
end; |
end; |
| 7822 |
|
|
| 7823 |
|
procedure TGikoForm.LinkToolBarDragDrop(Sender, Source: TObject; X, |
| 7824 |
|
Y: Integer); |
| 7825 |
|
var |
| 7826 |
|
i, idx: Integer; |
| 7827 |
|
ThreadItem: TThreadItem; |
| 7828 |
|
Node: TTreeNode; |
| 7829 |
|
FavNode: TTreeNode; |
| 7830 |
|
FavoThreadItem: TFavoriteThreadItem; |
| 7831 |
|
begin |
| 7832 |
|
|
| 7833 |
|
for i := 0 to FavoriteTreeView.Items.Count - 1 do begin |
| 7834 |
|
if FavoriteTreeView.Items[i].Text = Favorite.FAVORITE_LINK_NAME then begin |
| 7835 |
|
Node := FavoriteTreeView.Items[i]; |
| 7836 |
|
Break; |
| 7837 |
|
end; |
| 7838 |
|
end; |
| 7839 |
|
|
| 7840 |
|
if Node = nil then |
| 7841 |
|
Exit; |
| 7842 |
|
if Source <> BrowserTab then begin |
| 7843 |
|
if Source <> FavoriteTreeView then |
| 7844 |
|
Exit; |
| 7845 |
|
if FavoriteTreeView.Selected = Node then |
| 7846 |
|
Exit; |
| 7847 |
|
end; |
| 7848 |
|
|
| 7849 |
|
if Source = BrowserTab then begin |
| 7850 |
|
|
| 7851 |
|
idx := BrowserTab.TabIndex; |
| 7852 |
|
if BrowserTab.Tabs.Objects[idx] is TThreadItem then begin |
| 7853 |
|
ThreadItem := TThreadItem(BrowserTab.Tabs.Objects[idx]); |
| 7854 |
|
if not (TObject(Node.Data) is TFavoriteFolder) then |
| 7855 |
|
FavNode := Node.Parent |
| 7856 |
|
else |
| 7857 |
|
FavNode := Node; |
| 7858 |
|
|
| 7859 |
|
FavoThreadItem := TFavoriteThreadItem.Create; |
| 7860 |
|
FavoThreadItem.BBSID := ThreadItem.ParentBoard.BBSID; |
| 7861 |
|
FavoThreadItem.ThreadID := ThreadItem.FileName; |
| 7862 |
|
FavoThreadItem.ThreadName := ThreadItem.Title; |
| 7863 |
|
Node := FavoriteDM.TreeView.Items.AddChildObject(FavNode, ThreadItem.Title, FavoThreadItem); |
| 7864 |
|
Node.ImageIndex := 16; |
| 7865 |
|
Node.SelectedIndex := 16; |
| 7866 |
|
end; |
| 7867 |
|
|
| 7868 |
|
end; |
| 7869 |
|
|
| 7870 |
|
SetLinkBar; |
| 7871 |
|
|
| 7872 |
|
|
| 7873 |
|
end; |
| 7874 |
|
|
| 7875 |
|
procedure TGikoForm.LinkToolBarDragOver(Sender, Source: TObject; X, |
| 7876 |
|
Y: Integer; State: TDragState; var Accept: Boolean); |
| 7877 |
|
var |
| 7878 |
|
Node: TTreeNode; |
| 7879 |
|
begin |
| 7880 |
|
|
| 7881 |
|
if Source = FavoriteTreeView then begin |
| 7882 |
|
if FavoriteTreeView.Selected = FavoriteTreeView.Items.GetFirstNode then begin |
| 7883 |
|
Accept := False; |
| 7884 |
|
Exit; |
| 7885 |
|
end; |
| 7886 |
|
Accept := True; |
| 7887 |
|
end else if Source = BrowserTab then |
| 7888 |
|
Accept := True |
| 7889 |
|
else |
| 7890 |
|
Accept := False; |
| 7891 |
|
|
| 7892 |
|
end; |
| 7893 |
|
|
| 7894 |
initialization |
initialization |
| 7895 |
OleInitialize(nil); |
OleInitialize(nil); |
| 7896 |
finalization |
finalization |