| 6018 |
bi := High( BoardPlugIns ); |
bi := High( BoardPlugIns ); |
| 6019 |
for i := Low( BoardPlugIns ) to bi do begin |
for i := Low( BoardPlugIns ) to bi do begin |
| 6020 |
if Assigned( Pointer( BoardPlugIns[ i ].Module ) ) then begin |
if Assigned( Pointer( BoardPlugIns[ i ].Module ) ) then begin |
| 6021 |
if BoardPlugIns[ i ].AcceptURL( URL ) = atThread then begin |
case BoardPlugIns[ i ].AcceptURL( URL ) of |
| 6022 |
tmpThread := TThreadItem.Create( BoardPlugIns[ i ], URL ); |
atThread: |
| 6023 |
boardURL := tmpThread.BoardPlugIn.GetBoardURL( DWORD( tmpThread ) ); |
begin |
| 6024 |
Board := BBSsFindBoardFromURL( boardURL ); |
tmpThread := TThreadItem.Create( BoardPlugIns[ i ], URL ); |
| 6025 |
if Board = nil then begin |
boardURL := tmpThread.BoardPlugIn.GetBoardURL( DWORD( tmpThread ) ); |
| 6026 |
Board := TBoard.Create( tmpThread.BoardPlugIn, boardURL ); |
Board := BBSsFindBoardFromURL( boardURL ); |
| 6027 |
category := TCategory.Create; |
if Board = nil then begin |
| 6028 |
category.Title := '(名称不明)'; |
Board := TBoard.Create( tmpThread.BoardPlugIn, boardURL ); |
| 6029 |
category.Add( Board ); |
category := TCategory.Create; |
| 6030 |
// ※激しく保留中 |
category.Title := '(名称不明)'; |
| 6031 |
//BBS2ch.Add( category ); |
category.Add( Board ); |
| 6032 |
|
// ※激しく保留中 |
| 6033 |
|
//BBS2ch.Add( category ); |
| 6034 |
|
|
| 6035 |
if FTreeType = gtt2ch then begin |
if FTreeType = gtt2ch then begin |
| 6036 |
// 板リストに登録されていないのでツリーに追加 |
// 板リストに登録されていないのでツリーに追加 |
| 6037 |
// SetBoardTreeNode; 1 行で済ませてもよし |
// SetBoardTreeNode; 1 行で済ませてもよし |
| 6038 |
categoryNode := TreeView.Items.AddChild( |
categoryNode := TreeView.Items.AddChild( |
| 6039 |
TreeView.Items.GetFirstNode, category.Title ); |
TreeView.Items.GetFirstNode, category.Title ); |
| 6040 |
categoryNode.Data := category; |
categoryNode.Data := category; |
| 6041 |
categoryNode.ImageIndex := ITEM_ICON_CATEGORY1; |
categoryNode.ImageIndex := ITEM_ICON_CATEGORY1; |
| 6042 |
categoryNode.SelectedIndex := ITEM_ICON_CATEGORY2; |
categoryNode.SelectedIndex := ITEM_ICON_CATEGORY2; |
| 6043 |
|
|
| 6044 |
Board.BeginUpdate; |
Board.BeginUpdate; |
| 6045 |
boardNode := |
boardNode := |
| 6046 |
TreeView.Items.AddChild( categoryNode, Board.Title ); |
TreeView.Items.AddChild( categoryNode, Board.Title ); |
| 6047 |
boardNode.Data := Board; |
boardNode.Data := Board; |
| 6048 |
boardNode.ImageIndex := ITEM_ICON_BOARD1; |
boardNode.ImageIndex := ITEM_ICON_BOARD1; |
| 6049 |
boardNode.SelectedIndex := ITEM_ICON_BOARD2; |
boardNode.SelectedIndex := ITEM_ICON_BOARD2; |
| 6050 |
Board.LoadSettings; |
Board.LoadSettings; |
| 6051 |
Board.EndUpdate; |
Board.EndUpdate; |
| 6052 |
end; |
end; |
| 6053 |
end else begin |
end else begin |
| 6054 |
if not Board.IsThreadDatRead then |
if not Board.IsThreadDatRead then |
| 6055 |
GikoSys.ReadSubjectFile( Board ); |
GikoSys.ReadSubjectFile( Board ); |
| 6056 |
end; |
end; |
| 6057 |
|
|
| 6058 |
ThreadItem := Board.Find( tmpThread.FileName ); |
ThreadItem := Board.Find( tmpThread.FileName ); |
| 6059 |
if ThreadItem = nil then begin |
if ThreadItem = nil then begin |
| 6060 |
ThreadItem := tmpThread; |
ThreadItem := tmpThread; |
| 6061 |
Board.Insert( 0, ThreadItem ); |
Board.Insert( 0, ThreadItem ); |
| 6062 |
if ActiveList is TBoard then begin |
if ActiveList is TBoard then begin |
| 6063 |
if TBoard(ActiveList) = Board then |
if TBoard(ActiveList) = Board then |
| 6064 |
ListView.Items.Count := ListView.Items.Count + 1; |
ListView.Items.Count := ListView.Items.Count + 1; |
| 6065 |
end; |
end; |
| 6066 |
InsertBrowserTab( ThreadItem ); |
InsertBrowserTab( ThreadItem ); |
| 6067 |
DownloadContent( ThreadItem ); |
DownloadContent( ThreadItem ); |
| 6068 |
end else begin |
end else begin |
| 6069 |
tmpThread.Free; |
tmpThread.Free; |
| 6070 |
InsertBrowserTab( ThreadItem ); |
InsertBrowserTab( ThreadItem ); |
| 6071 |
if not ThreadItem.IsLogFile then |
if not ThreadItem.IsLogFile then |
| 6072 |
DownloadContent( ThreadItem ); |
DownloadContent( ThreadItem ); |
| 6073 |
end; |
end; |
| 6074 |
|
|
| 6075 |
Exit; |
Exit; |
| 6076 |
end; |
end; |
| 6077 |
|
|
| 6078 |
|
atBoard: |
| 6079 |
|
begin |
| 6080 |
|
Board := BBSsFindBoardFromURL( URL ); |
| 6081 |
|
if Board <> nil then begin |
| 6082 |
|
SelectTreeNode( Board, True ); |
| 6083 |
|
Exit; |
| 6084 |
|
end; |
| 6085 |
|
end; |
| 6086 |
|
end; |
| 6087 |
end; |
end; |
| 6088 |
end; |
end; |
| 6089 |
except |
except |