Develop and Download Open Source Software

Browse CVS Repository

Diff of /gikonavigoeson/gikonavi/Giko.pas

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.527 by genyakun, Fri Oct 14 06:43:25 2005 UTC revision 1.527.2.8 by h677, Sat Nov 5 17:14:21 2005 UTC
# Line 1078  type Line 1078  type
1078                  procedure MoveToURL(const inURL: string);                  procedure MoveToURL(const inURL: string);
1079                  function InsertBrowserTab(                  function InsertBrowserTab(
1080                          ThreadItem      : TThreadItem;                          ThreadItem      : TThreadItem;
1081                            Movement : String = '';
1082                          ActiveTab               : Boolean = True                          ActiveTab               : Boolean = True
1083                  ) : TBrowserRecord;                  ) : TBrowserRecord;
1084                  procedure ReloadBBS;                  procedure ReloadBBS;
# Line 1293  begin Line 1294  begin
1294    
1295          FSearchDialog := nil;          FSearchDialog := nil;
1296          BrowserNullTab := TBrowserRecord.Create;          BrowserNullTab := TBrowserRecord.Create;
1297            Browser.ControlInterface.FullScreen := true;
1298          BrowserNullTab.Browser := Browser;          BrowserNullTab.Browser := Browser;
1299    
1300          BrowserNullTab.Browser.Navigate(BLANK_HTML);          BrowserNullTab.Browser.Navigate(BLANK_HTML);
1301          FBrowsers := TList.Create;          FBrowsers := TList.Create;
1302          for i := 0 to BROWSER_COUNT -1 do begin          for i := 0 to BROWSER_COUNT -1 do begin
# Line 1303  begin Line 1306  begin
1306                  TOleControl(newBrowser).Align := alNone;                  TOleControl(newBrowser).Align := alNone;
1307                  TOleControl(newBrowser).Left    := 0;                  TOleControl(newBrowser).Left    := 0;
1308                  TOleControl(newBrowser).Top     := 0;                  TOleControl(newBrowser).Top     := 0;
1309                    newBrowser.ControlInterface.Silent := true;
1310                    newBrowser.ControlInterface.FullScreen := true;
1311                  newBrowser.OnDocumentComplete   := BrowserDocumentComplete;                  newBrowser.OnDocumentComplete   := BrowserDocumentComplete;
1312                  newBrowser.OnBeforeNavigate2    := BrowserBeforeNavigate2;                  newBrowser.OnBeforeNavigate2    := BrowserBeforeNavigate2;
1313                  newBrowser.OnEnter                              := BrowserEnter;                  newBrowser.OnEnter                              := BrowserEnter;
# Line 1313  begin Line 1318  begin
1318          end;          end;
1319          BrowserNullTab.Browser.BringToFront;          BrowserNullTab.Browser.BringToFront;
1320          ShowWindow(BrowserNullTab.Browser.Handle, SW_SHOW);          ShowWindow(BrowserNullTab.Browser.Handle, SW_SHOW);
1321        
1322          //メニューフォント          //メニューフォント
1323          SetMenuFont;          SetMenuFont;
1324    
# Line 3577  begin Line 3582  begin
3582                                          if GetActiveContent = Item.ThreadItem then                                          if GetActiveContent = Item.ThreadItem then
3583                                                  browserRec := InsertBrowserTab(Item.ThreadItem)                                                  browserRec := InsertBrowserTab(Item.ThreadItem)
3584                                          else if (ListView.Selected <> nil ) and ( TObject(ListView.Selected.Data) is TThreadItem ) and ( Item.ThreadItem = TThreadItem(ListView.Selected.Data)) then                                          else if (ListView.Selected <> nil ) and ( TObject(ListView.Selected.Data) is TThreadItem ) and ( Item.ThreadItem = TThreadItem(ListView.Selected.Data)) then
3585                                                  browserRec := InsertBrowserTab(Item.ThreadItem, True)                                                  browserRec := InsertBrowserTab(Item.ThreadItem, '', True)
3586                                          else                                          else
3587                                                  browserRec := InsertBrowserTab(Item.ThreadItem, False);                                                  browserRec := InsertBrowserTab(Item.ThreadItem, '', False);
                                         if browserRec.Thread = BrowserNullTab.Thread then begin  
                                                 browserRec.Movement := BrowserNullTab.Movement;  
                                                 BrowserNullTab.Movement := '';  
                                         end;  
3588                                  end else begin                                  end else begin
3589                                          if (GetActiveContent = Item.ThreadItem) or (FActiveContent = nil) or(FActiveContent.Browser = BrowserNullTab.Browser) then                                          if (GetActiveContent = Item.ThreadItem) or (FActiveContent = nil) or(FActiveContent.Browser = BrowserNullTab.Browser) then
3590                                                                                                  InsertBrowserTab(Item.ThreadItem);                                                                                                  InsertBrowserTab(Item.ThreadItem);
3591                                  end;                                  end;
3592    
3593                                                                  Application.ProcessMessages;                                  Application.ProcessMessages;
3594    
3595                                  if Item.State = gdsComplete then begin                                  if Item.State = gdsComplete then begin
3596                                          PlaySound('New');                                          PlaySound('New');
# Line 3726  end; Line 3727  end;
3727    
3728  function TGikoForm.InsertBrowserTab(  function TGikoForm.InsertBrowserTab(
3729          ThreadItem      : TThreadItem;          ThreadItem      : TThreadItem;
3730            Movement : String = '';
3731          ActiveTab               : Boolean = True          ActiveTab               : Boolean = True
3732  ) : TBrowserRecord;  ) : TBrowserRecord;
3733  var  var
# Line 3737  begin Line 3739  begin
3739          Result := nil;          Result := nil;
3740          if Threaditem = nil then Exit;          if Threaditem = nil then Exit;
3741    
3742          if ThreadItem.IsLogFile then begin          if (ThreadItem.IsLogFile) or (Movement <> '') then begin
3743                  //お気に入りの全て開くとかやると、今開いてるスレのbrowserを付け替える恐れがある                  //お気に入りの全て開くとかやると、今開いてるスレのbrowserを付け替える恐れがある
3744                  //常に4番目にActiveのブラウザが来ないように移動させる                  //常に4番目にActiveのブラウザが来ないように移動させる
3745                  if (FActiveContent <> nil) and (FActiveContent.FBrowser <> nil) and                  if (FActiveContent <> nil) and (FActiveContent.FBrowser <> nil) and
# Line 3788  begin Line 3790  begin
3790                          //newBrowser.Browser.Navigate(BLANK_HTML);                          //newBrowser.Browser.Navigate(BLANK_HTML);
3791                          newBrowser.thread := ThreadItem;                          newBrowser.thread := ThreadItem;
3792                          newBrowser.Repaint := true;                          newBrowser.Repaint := true;
3793                            newBrowser.Movement := Movement;
3794  //                      newBrowser.OnlyHundred := GikoSys.OnlyAHundredRes;  //                      newBrowser.OnlyHundred := GikoSys.OnlyAHundredRes;
3795    
3796                          BrowserTab.Tabs.InsertObject(0, GikoSys.GetShortName(ThreadItem.Title, 20), newBrowser);                          BrowserTab.Tabs.InsertObject(0, GikoSys.GetShortName(ThreadItem.Title, 20), newBrowser);
# Line 3814  begin Line 3817  begin
3817                          newBrowser.thread := ThreadItem;                          newBrowser.thread := ThreadItem;
3818  //                      newBrowser.OnlyHundred := GikoSys.OnlyAHundredRes;  //                      newBrowser.OnlyHundred := GikoSys.OnlyAHundredRes;
3819                          newBrowser.Repaint := true;                          newBrowser.Repaint := true;
3820                            newBrowser.Movement := Movement;
3821                          i := BrowserTab.Tabs.AddObject(GikoSys.GetShortName(ThreadItem.Title, 20), newBrowser);                          i := BrowserTab.Tabs.AddObject(GikoSys.GetShortName(ThreadItem.Title, 20), newBrowser);
3822                          if (not GikoSys.Setting.BrowserTabVisible) and (BrowserTab.Tabs.Count > 1) then begin                          if (not GikoSys.Setting.BrowserTabVisible) and (BrowserTab.Tabs.Count > 1) then begin
3823                                  DeleteTab( TBrowserRecord( BrowserTab.Tabs.Objects[ 0 ] ) );                                  DeleteTab( TBrowserRecord( BrowserTab.Tabs.Objects[ 0 ] ) );
# Line 3923  begin Line 3926  begin
3926                          if (FActiveContent.Browser <> BrowserNullTab.Browser) then                          if (FActiveContent.Browser <> BrowserNullTab.Browser) then
3927                                  ShowWindow(FActiveContent.Browser.Handle, SW_HIDE);                                  ShowWindow(FActiveContent.Browser.Handle, SW_HIDE);
3928                  end;                  end;
3929                  ShowWindow(Thread.FBrowser.Handle, SW_SHOW);                  ShowWindow(Thread.FBrowser.Handle, SW_HIDE);
3930                  if (not Assigned(Thread.Browser.Document)) then begin                  if (not Assigned(Thread.Browser.Document)) then begin
3931                          Thread.Browser.Navigate('about:blank');                          Thread.Browser.Navigate('about:blank');
3932                  end;                  end;
# Line 3949  begin Line 3952  begin
3952                                  doc.Write(s);                                  doc.Write(s);
3953                                  doc.Close;                                  doc.Close;
3954                          finally                          finally
3955                                    ShowWindow(Thread.FBrowser.Handle, SW_SHOW);
3956                          end;                          end;
3957                  end else begin                  end else begin
3958                          Self.Caption := CAPTION_NAME + ' - [' + ThreadTitle + ']';                          Self.Caption := CAPTION_NAME + ' - [' + ThreadTitle + ']';
# Line 3958  begin Line 3962  begin
3962                                  Thread.Repaint := false;                                  Thread.Repaint := false;
3963    
3964                                  Thread.Browser.OnStatusTextChange := nil;                                  Thread.Browser.OnStatusTextChange := nil;
3965                                  doc := Idispatch( olevariant(Thread.Browser.ControlInterface).Document) as IHTMLDocument2;  
3966    
3967                                  //GikoSys.CreateHTML2(doc, ThreadItem, sTitle);                                  //GikoSys.CreateHTML2(doc, ThreadItem, sTitle);
3968                                  HTMLCreater.CreateHTML2(doc, ThreadItem, sTitle);                                  HTMLCreater.CreateHTML2(olevariant(Thread.Browser.ControlInterface).Document, ThreadItem, sTitle);
3969                                    doc := Idispatch( olevariant(Thread.Browser.ControlInterface).Document) as IHTMLDocument2;
3970                                  Thread.Browser.OnStatusTextChange := BrowserStatusTextChange;                                  Thread.Browser.OnStatusTextChange := BrowserStatusTextChange;
3971                                    
3972                                  if ThreadItem = nil then begin                          end else begin
3973                                          FActiveContent := nil;                                  ShowWindow(Thread.FBrowser.Handle, SW_SHOW);
                                         BrowserTab.Repaint;  
                                         Exit;  
                                 end;  
                                 PostMessage( Handle, USER_DOCUMENTCOMPLETE, Integer( Thread.Browser ), 0 );  
3974                          end;                          end;
3975                  end;                  end;
3976                  if (Thread <> nil) and (ThreadItem <>nil) then begin                  if (Thread <> nil) and (ThreadItem <>nil) then begin
# Line 4678  begin Line 4679  begin
4679                          if not (TObject(listItem.Data) is TThreadItem) then Exit;                          if not (TObject(listItem.Data) is TThreadItem) then Exit;
4680    
4681                          threadItem := TThreadItem(ListItem.Data);                          threadItem := TThreadItem(ListItem.Data);
4682                          InsertBrowserTab(threadItem, False);                          InsertBrowserTab(threadItem, '', False);
4683                          if threadItem.IsLogFile then                          if threadItem.IsLogFile then
4684                                  ListView.UpdateItems(listItem.Index, listItem.Index);                                  ListView.UpdateItems(listItem.Index, listItem.Index);
4685                  end;                  end;
# Line 4768  end; Line 4769  end;
4769  procedure TGikoForm.BrowserMovement(const AName: string; BrowserRecord: TBrowserRecord);  procedure TGikoForm.BrowserMovement(const AName: string; BrowserRecord: TBrowserRecord);
4770  var  var
4771          top: Integer;          top: Integer;
         item: OleVariant;  
4772          nm: OleVariant;          nm: OleVariant;
4773          activeBrower :TWebBrowser;          activeBrower :TWebBrowser;
4774            item : OleVariant;
4775            link : IHTMLElement;
4776  begin  begin
4777          //          //
4778          while (BrowserRecord.Browser.ReadyState <> READYSTATE_COMPLETE) and          while  (BrowserRecord.Browser.ReadyState <> READYSTATE_COMPLETE) and
4779                                  (BrowserRecord.Browser.ReadyState <> READYSTATE_INTERACTIVE) do begin                                  (BrowserRecord.Browser.ReadyState <> READYSTATE_INTERACTIVE) do begin
4780                  Sleep(1);                  Sleep(1);
4781                  Application.ProcessMessages;                  Application.ProcessMessages;
# Line 5811  begin Line 5813  begin
5813          ThreadItem.Kokomade := No;          ThreadItem.Kokomade := No;
5814          FActiveContent.Thread.ScrollTop := OleVariant(IHTMLDocument2(FActiveContent.Browser.Document)).Body.ScrollTop;          FActiveContent.Thread.ScrollTop := OleVariant(IHTMLDocument2(FActiveContent.Browser.Document)).Body.ScrollTop;
5815          FActiveContent.FRepaint := true;          FActiveContent.FRepaint := true;
5816          InsertBrowserTab(FActiveContent.Thread, true);          InsertBrowserTab(FActiveContent.Thread, '', true);
5817          Application.ProcessMessages;          Application.ProcessMessages;
5818  end;  end;
5819    
# Line 5824  begin Line 5826  begin
5826          ThreadItem.Kokomade := -1;          ThreadItem.Kokomade := -1;
5827          FActiveContent.Thread.ScrollTop := OleVariant(IHTMLDocument2(FActiveContent.Browser.Document)).Body.ScrollTop;          FActiveContent.Thread.ScrollTop := OleVariant(IHTMLDocument2(FActiveContent.Browser.Document)).Body.ScrollTop;
5828          FActiveContent.FRepaint := true;          FActiveContent.FRepaint := true;
5829          InsertBrowserTab(FActiveContent.Thread, true);          InsertBrowserTab(FActiveContent.Thread, '', true);
5830          Application.ProcessMessages;          Application.ProcessMessages;
5831  end;  end;
5832    
# Line 6530  var Line 6532  var
6532          BrowserRecord :TBrowserRecord;          BrowserRecord :TBrowserRecord;
6533          i :Integer;          i :Integer;
6534          doc                                     : Variant;          doc                                     : Variant;
6535          threadItem      : TThreadItem;  //      threadItem      : TThreadItem;
6536  begin  begin
 //      AddMessageList('DocumentComplete', nil, gmiWhat);  
6537          if TObject(Sender) is TWebBrowser then begin          if TObject(Sender) is TWebBrowser then begin
6538                    ShowWindow(TWebBrowser(Sender).Handle, SW_SHOW);
6539                  BrowserRecord := nil;                  BrowserRecord := nil;
6540                  if TWebBrowser(Sender) <> Browser then begin                  if TWebBrowser(Sender) <> Browser then begin
6541                          for i := BrowserTab.Tabs.Count - 1 downto 0 do begin                          for i := BrowserTab.Tabs.Count - 1 downto 0 do begin
6542                                  if TBrowserRecord(BrowserTab.Tabs.Objects[i]).Browser = TWebBrowser(Sender) then begin                                  if TBrowserRecord(BrowserTab.Tabs.Objects[i]).Browser = TWebBrowser(Sender) then begin
6543                                                  BrowserRecord := TBrowserRecord(BrowserTab.Tabs.Objects[i]);                                                  BrowserRecord := TBrowserRecord(BrowserTab.Tabs.Objects[i]);
6544                                                    if BrowserRecord.Thread.ShortTitle <> '' then
6545                                                            BrowserTab.Tabs.Strings[i] := BrowserRecord.Thread.ShortTitle
6546                                                    else
6547                                                            BrowserTab.Tabs.Strings[i] := GikoSys.GetShortName(BrowserRecord.Thread.Title, 20);
6548                                                  break;                                                  break;
6549                                  end;                                  end;
6550                          end;                          end;
# Line 6549  begin Line 6555  begin
6555                                  BrowserRecord.FEvent := THTMLDocumentEventSink.Create(Self, FDispHtmlDocument, HTMLDocumentEvents2);                                  BrowserRecord.FEvent := THTMLDocumentEventSink.Create(Self, FDispHtmlDocument, HTMLDocumentEvents2);
6556                                  BrowserRecord.FEvent.OnContextMenu := OnDocumentContextMenu;                                  BrowserRecord.FEvent.OnContextMenu := OnDocumentContextMenu;
6557                                  BrowserRecord.FEvent.OnClick := WebBrowserClick;  //追加したOnClickイベント                                  BrowserRecord.FEvent.OnClick := WebBrowserClick;  //追加したOnClickイベント
6558    
6559                                    if BrowserRecord.Thread.UnRead then begin
6560                                            BrowserRecord.Thread.UnRead := False;
6561                                            BrowserRecord.Thread.ParentBoard.UnRead := BrowserRecord.Thread.ParentBoard.UnRead - 1;
6562                                            if BrowserRecord.Thread.ParentBoard.UnRead < 0 then BrowserRecord.Thread.ParentBoard.UnRead := 0;
6563                                            TreeView.Refresh;
6564                                            ListView.Refresh;
6565                                            if Length(BrowserRecord.Movement) > 0 then begin
6566                                                    BrowserMovement( BrowserRecord.Movement, BrowserRecord );
6567                                                    BrowserRecord.Movement := '';
6568                                            end else begin
6569                                                    BrowserMovement( 'new', BrowserRecord );
6570                                            end;
6571                                    end else
6572                                    if Length(BrowserRecord.Movement) > 0 then begin
6573                                            BrowserMovement( BrowserRecord.Movement, BrowserRecord );
6574                                            BrowserRecord.Movement := '';
6575                                    end else if BrowserRecord.Thread.ScrollTop <> 0 then begin
6576                                            try
6577                                                    doc := Idispatch( olevariant(BrowserRecord.Browser.ControlInterface).Document) as IHTMLDocument2;
6578                                                    doc.Body.ScrollTop := BrowserRecord.Thread.ScrollTop;
6579                                            except
6580                                                    on E: Exception do
6581                                                            MsgBox(Handle, E.Message, 'SetContent[ScrollTop<-]', 0);
6582                                            end;
6583                                    end;
6584                          end;                          end;
6585                  end else begin                  end else begin
6586                          if GetActiveContent <> nil then begin                          if GetActiveContent <> nil then begin
# Line 6559  begin Line 6591  begin
6591                                  FEvent.OnContextMenu := OnDocumentContextMenu;                                  FEvent.OnContextMenu := OnDocumentContextMenu;
6592                                  FEvent.OnClick := WebBrowserClick;  //追加したOnClickイベント                                  FEvent.OnClick := WebBrowserClick;  //追加したOnClickイベント
6593                          end;                          end;
                           
6594                  end;                  end;
6595    
                 if (BrowserRecord <> nil) and  
                          Assigned( BrowserRecord.Thread ) then begin  
                         threadItem := BrowserRecord.Thread;  
   
                         if (BrowserRecord <> nil) and (Length( BrowserRecord.Movement ) > 0) then begin  
                                 if threadItem.UnRead then begin  
                                         threadItem.UnRead := False;  
                                         threadItem.ParentBoard.UnRead := ThreadItem.ParentBoard.UnRead - 1;  
                                         if threadItem.ParentBoard.UnRead < 0 then threadItem.ParentBoard.UnRead := 0;  
                                         TreeView.Refresh;  
                                         ListView.Refresh;  
                                 end;  
                                 BrowserMovement( BrowserRecord.Movement, BrowserRecord );  
                                 BrowserRecord.Movement := '';  
                         end else if threadItem.UnRead then begin  
                                 threadItem.UnRead := False;  
                                 threadItem.ParentBoard.UnRead := ThreadItem.ParentBoard.UnRead - 1;  
                                 if threadItem.ParentBoard.UnRead < 0 then threadItem.ParentBoard.UnRead := 0;  
                                 TreeView.Refresh;  
                                 BrowserMovement( 'new', BrowserRecord );  
                                 ListView.Refresh;  
                         end else if threadItem.ScrollTop <> 0 then begin  
                                 try  
                                         doc := Idispatch( OleVariant( BrowserRecord.Browser.ControlInterface ).Document ) as IHTMLDocument2;  
                                         doc.Body.ScrollTop := threadItem.ScrollTop;  
                                 except  
                                         on E: Exception do  
                                                 MsgBox(Handle, E.Message, 'SetContent[ScrollTop<-]', 0);  
                                 end;  
                         end;  
                 end;  
6596          end;          end;
6597  end;  end;
6598    
# Line 7342  begin Line 7342  begin
7342                  if ThreadItem = nil then                  if ThreadItem = nil then
7343                          Exit;                          Exit;
7344    
7345                  InsertBrowserTab(ThreadItem, ActiveTab);                  InsertBrowserTab(ThreadItem, '', ActiveTab);
7346    
7347                  if GikoSys.Setting.ListOrientation = gloHorizontal then begin                  if GikoSys.Setting.ListOrientation = gloHorizontal then begin
7348                          if GikoSys.Setting.ListWidthState = glsMin then begin                          if GikoSys.Setting.ListWidthState = glsMin then begin
# Line 7503  begin Line 7503  begin
7503                                                                                  ListView.Items.Count := ListView.Items.Count + 1;                                                                                  ListView.Items.Count := ListView.Items.Count + 1;
7504                                                                  end;                                                                  end;
7505                                                                  GikoSys.GetPopupResNumber( inURL, stRes, edRes );                                                                  GikoSys.GetPopupResNumber( inURL, stRes, edRes );
7506                                                                  browserRec := InsertBrowserTab( ThreadItem );                                                                  //browserRec := InsertBrowserTab( ThreadItem );
7507                                                                  if (browserRec <> nil) and (stRes > 0) then                                                                  //if (browserRec <> nil) and (stRes > 0) then
7508                                                                          browserRec.Movement := IntToStr( stRes );                                                                  //      browserRec.Movement := IntToStr( stRes );
7509                                                                    if (stRes > 0) then
7510                                                                            browserRec := InsertBrowserTab( ThreadItem, IntToStr( stRes ))
7511                                                                    else
7512                                                                            browserRec := InsertBrowserTab( ThreadItem );
7513                                                                  DownloadContent( ThreadItem );                                                                  DownloadContent( ThreadItem );
7514                                                                  Exit;                                                                  Exit;
7515                                                          end else begin                                                          end else begin
7516                                                                  tmpThread.Free;                                                                  tmpThread.Free;
7517                                                                  GikoSys.GetPopupResNumber( inURL, stRes, edRes );                                                                  GikoSys.GetPopupResNumber( inURL, stRes, edRes );
7518                                                                  browserRec := InsertBrowserTab( ThreadItem );                                                                  if (stRes > 0) then
7519                                                                            browserRec := InsertBrowserTab( ThreadItem, IntToStr( stRes ))
7520                                                                    else
7521                                                                            browserRec := InsertBrowserTab( ThreadItem );
7522                                                                    if (not ThreadItem.IsLogFile) or
7523                                                                            (ThreadItem.AllResCount < stRes) then
7524                                                                    DownloadContent( ThreadItem );
7525                                                                    {browserRec := InsertBrowserTab( ThreadItem );
7526                                                                  if ThreadItem.IsLogFile then begin                                                                  if ThreadItem.IsLogFile then begin
7527                                                                          if (browserRec <> nil) and (stRes > 0) then                                                                          if (browserRec <> nil) and (stRes > 0) then
7528                                                                                  BrowserMovement( IntToStr( stRes ), browserRec );                                                                                  BrowserMovement( IntToStr( stRes ), browserRec );
# Line 7520  begin Line 7531  begin
7531                                                                                  browserRec.Movement := IntToStr( stRes );                                                                                  browserRec.Movement := IntToStr( stRes );
7532                                                                          DownloadContent( ThreadItem );                                                                          DownloadContent( ThreadItem );
7533                                                                  end;                                                                  end;
7534                                                                    }
7535                                                                  Exit;                                                                  Exit;
7536                                                          end;                                                          end;
7537                                                  end;                                                  end;
# Line 7604  begin Line 7616  begin
7616                                          ListView.Items.Count := ListView.Items.Count + 1;                                          ListView.Items.Count := ListView.Items.Count + 1;
7617                          end;                          end;
7618                          GikoSys.GetPopupResNumber( inURL, stRes, edRes );                          GikoSys.GetPopupResNumber( inURL, stRes, edRes );
7619                          browserRec := InsertBrowserTab(ThreadItem);                          //browserRec := InsertBrowserTab(ThreadItem);
7620                          if (browserRec <> nil) and (stRes > 0) then                          //if (browserRec <> nil) and (stRes > 0) then
7621                                  browserRec.Movement := IntToStr( stRes );                          //      browserRec.Movement := IntToStr( stRes );
7622                            if (stRes > 0) then
7623                                    browserRec := InsertBrowserTab(ThreadItem, IntToStr( stRes ))
7624                            else
7625                                    browserRec := InsertBrowserTab(ThreadItem);
7626    
7627                          DownloadContent(ThreadItem);                          DownloadContent(ThreadItem);
7628                          {end;}                          {end;}
7629                  end else begin                  end else begin
7630                          if ThreadItem.IsLogFile then begin                          if ThreadItem.IsLogFile then begin
7631                                  GikoSys.GetPopupResNumber( inURL, stRes, edRes );                                  GikoSys.GetPopupResNumber( inURL, stRes, edRes );
7632                                  browserRec := InsertBrowserTab(ThreadItem);                                  //browserRec := InsertBrowserTab(ThreadItem);
7633                                  if (browserRec <> nil) and (stRes > 0) then                                  //if (browserRec <> nil) and (stRes > 0) then
7634                                          browserRec.Movement := IntToStr( stRes );                                  //      browserRec.Movement := IntToStr( stRes );
7635                                    if (stRes > 0) then
7636                                            browserRec := InsertBrowserTab(ThreadItem, IntToStr( stRes ))
7637                                    else
7638                                            browserRec := InsertBrowserTab(ThreadItem);
7639    
7640                                    if (stRes > ThreadItem.AllResCount) then
7641                                            DownloadContent(ThreadItem);
7642                          end else begin                          end else begin
7643                                  if AnsiPos(Host, Board.URL) = 0 then                                  if AnsiPos(Host, Board.URL) = 0 then
7644                                          ThreadItem.DownloadHost := Host                                          ThreadItem.DownloadHost := Host
7645                                  else                                  else
7646                                          ThreadItem.DownloadHost := '';                                          ThreadItem.DownloadHost := '';
7647                                  GikoSys.GetPopupResNumber( inURL, stRes, edRes );                                  GikoSys.GetPopupResNumber( inURL, stRes, edRes );
7648                                  browserRec := InsertBrowserTab(ThreadItem);                                  //browserRec := InsertBrowserTab(ThreadItem);
7649                                  if (browserRec <> nil) and (stRes > 0) then                                  //if (browserRec <> nil) and (stRes > 0) then
7650                                          browserRec.Movement := IntToStr( stRes );                                  //      browserRec.Movement := IntToStr( stRes );
7651                                    if (stRes > 0) then
7652                                            browserRec := InsertBrowserTab(ThreadItem, IntToStr( stRes ))
7653                                    else
7654                                            browserRec := InsertBrowserTab(ThreadItem);
7655                                  DownloadContent(ThreadItem);                                  DownloadContent(ThreadItem);
7656                          end;                          end;
7657                  end;                  end;
# Line 7635  begin Line 7663  begin
7663                          if FActiveBBS <> Board.ParentCategory.ParenTBBS then                          if FActiveBBS <> Board.ParentCategory.ParenTBBS then
7664                                  ShowBBSTree( Board.ParentCategory.ParenTBBS );                                  ShowBBSTree( Board.ParentCategory.ParenTBBS );
7665                          SelectTreeNode( Board, True );                          SelectTreeNode( Board, True );
7666          end;                  end;
7667          end;          end;
7668  end;  end;
7669    
# Line 8335  begin Line 8363  begin
8363                                  if TObject( favButton.Data ) is TFavoriteThreadItem then begin                                  if TObject( favButton.Data ) is TFavoriteThreadItem then begin
8364                                          favThreadItem := TFavoriteThreadItem( favButton.Data );                                          favThreadItem := TFavoriteThreadItem( favButton.Data );
8365                                          if favThreadItem.Item <> nil then                                          if favThreadItem.Item <> nil then
8366                                                  InsertBrowserTab( favThreadItem.Item, False );                                                  InsertBrowserTab( favThreadItem.Item, '', False );
8367                                  end;                                  end;
8368                          end;                          end;
8369                  end;                  end;
# Line 10541  begin Line 10569  begin
10569                          if TObject( favItem.Data ) is TFavoriteThreadItem then begin                          if TObject( favItem.Data ) is TFavoriteThreadItem then begin
10570                                  favThreadItem := TFavoriteThreadItem( favItem.Data );                                  favThreadItem := TFavoriteThreadItem( favItem.Data );
10571                                  if favThreadItem.Item <> nil then                                  if favThreadItem.Item <> nil then
10572                                          InsertBrowserTab( favThreadItem.Item, False );                                          InsertBrowserTab( favThreadItem.Item, '', False );
10573                          end;                          end;
10574                  end;                  end;
10575          end;          end;
# Line 11086  begin Line 11114  begin
11114                                          for i := 0 to bound do begin                                          for i := 0 to bound do begin
11115                                                  item := BBSsFindThreadFromURL( URLs[ i ] );                                                  item := BBSsFindThreadFromURL( URLs[ i ] );
11116                                                  if item <> nil then                                                  if item <> nil then
11117                                                          InsertBrowserTab( item, false );                                                          InsertBrowserTab( item, '', false );
11118                                          end;                                          end;
11119                                  end else                                  end else
11120                                          Result := False;                                          Result := False;
# Line 11794  begin Line 11822  begin
11822          end;          end;
11823          FActiveContent.Repaint := true;          FActiveContent.Repaint := true;
11824          if ThreadItem <> nil then          if ThreadItem <> nil then
11825                  InsertBrowserTab( ThreadItem, True );                  InsertBrowserTab( ThreadItem, '', True );
11826  end;  end;
11827    
11828  procedure TGikoForm.AntiIndividualAbonActionExecute(Sender: TObject);  procedure TGikoForm.AntiIndividualAbonActionExecute(Sender: TObject);
# Line 11823  begin Line 11851  begin
11851  {$ENDIF}  {$ENDIF}
11852                                          if IndividualForm.DeleteNG(KokoPopupMenu.Tag) then begin                                          if IndividualForm.DeleteNG(KokoPopupMenu.Tag) then begin
11853                                                  FActiveContent.Repaint := true;                                                  FActiveContent.Repaint := true;
11854                                                  InsertBrowserTab( ThreadItem, True );                                                  InsertBrowserTab( ThreadItem, '', True );
11855                                          end;                                          end;
11856                                  finally                                  finally
11857                                          wordCount.Free;                                          wordCount.Free;
# Line 11871  begin Line 11899  begin
11899  {$ENDIF}  {$ENDIF}
11900                                                  if IndividualForm.FRepaint then begin                                                  if IndividualForm.FRepaint then begin
11901                                                          FActiveContent.Repaint := true;                                                          FActiveContent.Repaint := true;
11902                                                          InsertBrowserTab( ThreadItem, True );                                                          InsertBrowserTab( ThreadItem, '', True );
11903                                                  end;                                                  end;
11904                                          finally                                          finally
11905                                                  wordCount.Free;                                                  wordCount.Free;
# Line 11937  begin Line 11965  begin
11965                  end;                  end;
11966                  FActiveContent.Repaint := true;                  FActiveContent.Repaint := true;
11967                  if ThreadItem <> nil then                  if ThreadItem <> nil then
11968                          InsertBrowserTab( ThreadItem, True );                          InsertBrowserTab( ThreadItem, '', True );
11969          finally          finally
11970                  body.Free;                  body.Free;
11971          end;          end;
# Line 12022  begin Line 12050  begin
12050    
12051          ThreadItem := GetActiveContent;          ThreadItem := GetActiveContent;
12052          if ThreadItem <> nil then          if ThreadItem <> nil then
12053                  InsertBrowserTab( ThreadItem, True );                  InsertBrowserTab( ThreadItem, '', True );
12054    
12055  end;  end;
12056    

Legend:
Removed from v.1.527  
changed lines
  Added in v.1.527.2.8

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26