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.2.7 by h677, Sat Nov 5 00:24:49 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 3581  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);
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);
# 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 4675  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 5809  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 5822  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 6537  begin Line 6541  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 7334  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 7495  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 7512  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 7596  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 7627  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 8327  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 10533  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 11078  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 11786  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 11815  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 11863  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 11929  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 12014  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.2.7  
changed lines
  Added in v.1.527.2.8

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