Develop and Download Open Source Software

Browse CVS Repository

Diff of /gikonavigoeson/gikonavi/HTMLCreate.pas

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

revision 1.26 by h677, Sun Feb 26 16:40:52 2006 UTC revision 1.27 by h677, Sat Mar 4 12:20:33 2006 UTC
# Line 38  type Line 38  type
38                  destructor Destory;                  destructor Destory;
39                  procedure Open;                  procedure Open;
40                  procedure Close;                  procedure Close;
41                    procedure Flush;
42                  function Add(const S: string): Integer; override;                  function Add(const S: string): Integer; override;
43          end;          end;
44          THTMLCreate = class(TObject)          THTMLCreate = class(TObject)
# Line 53  type Line 54  type
54                  constructor Create;                  constructor Create;
55    
56                  function AddBeProfileLink(AID : string; ANum: Integer):string ;                  function AddBeProfileLink(AID : string; ANum: Integer):string ;
57                  procedure CreateUsePluginHTML(html:TStringList; ThreadItem: TThreadItem; var sTitle: string);                  procedure CreateUsePluginHTML(html:TBufferedWebBrowser; ThreadItem: TThreadItem; var sTitle: string);
58                  procedure CreateUseSKINHTML(html:TStringList; ThreadItem: TThreadItem; ReadList: TStringList);                  procedure CreateUseSKINHTML(html:TBufferedWebBrowser; ThreadItem: TThreadItem; ReadList: TStringList);
59                  procedure CreateUseCSSHTML(html:TStringList; ThreadItem: TThreadItem; ReadList: TStringList; sTitle: string );                  procedure CreateUseCSSHTML(html:TBufferedWebBrowser; ThreadItem: TThreadItem; ReadList: TStringList; sTitle: string );
60                  procedure CreateDefaultHTML (html:TStringList; ThreadItem: TThreadItem; ReadList: TStringList; sTitle: string );                  procedure CreateDefaultHTML (html:TBufferedWebBrowser; ThreadItem: TThreadItem; ReadList: TStringList; sTitle: string );
61                  procedure ConvertResAnchor(PRes: PResRec);                  procedure ConvertResAnchor(PRes: PResRec);
62                  procedure separateNumber(var st: String; var et: String; const Text, Separator: String);                  procedure separateNumber(var st: String; var et: String; const Text, Separator: String);
63                  function checkComma(const s : String; var j : Integer; var No  : String) : boolean;                  function checkComma(const s : String; var j : Integer; var No  : String) : boolean;
# Line 295  begin Line 296  begin
296                                  if pos = nil then                                  if pos = nil then
297                                          b := Length(REF_MARK[idx2])                                          b := Length(REF_MARK[idx2])
298                                  else                                  else
299                                          b := pos - pp + 1;                                          b := pos - (pp  + idx) + 1;
300    
301                                  len := Length(PRes.FBody);                                  len := Length(PRes.FBody);
302                                  SetLength(PRes.FBody, len + idx + b);                                  SetLength(PRes.FBody, len + idx + b );
303                                  Move(pp^, PRes.FBody[len + 1], idx + b);                                  Move(pp^, PRes.FBody[len + 1], idx + b);
304                                  Delete(s, 1, idx + b);                                  Delete(s, 1, idx + b);
305                          end else begin                          end else begin
# Line 793  begin Line 794  begin
794  end;  end;
795    
796  //Pluginを利用するBoardのスレッドのHTMLを作成してdocに書き込む  //Pluginを利用するBoardのスレッドのHTMLを作成してdocに書き込む
797  procedure THTMLCreate.CreateUsePluginHTML(html:TStringList; ThreadItem: TThreadItem; var sTitle: string);  procedure THTMLCreate.CreateUsePluginHTML(html:TBufferedWebBrowser; ThreadItem: TThreadItem; var sTitle: string);
798  var  var
799          i: integer;          i: integer;
800          NewReceiveNo: Integer;          NewReceiveNo: Integer;
# Line 808  begin Line 809  begin
809          html.add(boardPlugIn.GetHeader( DWORD( threadItem ),          html.add(boardPlugIn.GetHeader( DWORD( threadItem ),
810                  '<style type="text/css">body {' + UserOptionalStyle + '}</style>' ));                  '<style type="text/css">body {' + UserOptionalStyle + '}</style>' ));
811          html.Add('<p id="idSearch"></p>');          html.Add('<p id="idSearch"></p>');
812            html.Flush;
813            
814          for i := 0 to threadItem.Count - 1 do begin          for i := 0 to threadItem.Count - 1 do begin
815                  // 1 は必ず表示                  // 1 は必ず表示
816                  if i <> 0 then begin                  if i <> 0 then begin
# Line 877  begin Line 879  begin
879  end;  end;
880    
881    
882  procedure THTMLCreate.CreateUseSKINHTML(html:TStringList; ThreadItem: TThreadItem; ReadList: TStringList);  procedure THTMLCreate.CreateUseSKINHTML(html:TBufferedWebBrowser; ThreadItem: TThreadItem; ReadList: TStringList);
883  const  const
884          KOKO_TAG = '<a name="koko"></a>';          KOKO_TAG = '<a name="koko"></a>';
885          NEW_TAG = '<a name="new"></a>';          NEW_TAG = '<a name="new"></a>';
# Line 912  begin Line 914  begin
914          SkinRes := LoadFromSkin( GikoSys.GetSkinResFileName, ThreadItem, ThreadItem.Size );          SkinRes := LoadFromSkin( GikoSys.GetSkinResFileName, ThreadItem, ThreadItem.Size );
915    
916          html.Add('<p id="idSearch"></p>'#13#10'<a name="top"></a>');          html.Add('<p id="idSearch"></p>'#13#10'<a name="top"></a>');
917            html.Flush;
918    
919          for i := 0 to ReadList.Count - 1 do begin          for i := 0 to ReadList.Count - 1 do begin
920                  // 1 は必ず表示                  // 1 は必ず表示
# Line 966  begin Line 969  begin
969          html.Add( LoadFromSkin( GikoSys.GetSkinFooterFileName, ThreadItem, ThreadItem.Size ) );          html.Add( LoadFromSkin( GikoSys.GetSkinFooterFileName, ThreadItem, ThreadItem.Size ) );
970  end;  end;
971    
972  procedure THTMLCreate.CreateUseCSSHTML(html:TStringList; ThreadItem: TThreadItem; ReadList: TStringList; sTitle: string );  procedure THTMLCreate.CreateUseCSSHTML(html:TBufferedWebBrowser; ThreadItem: TThreadItem; ReadList: TStringList; sTitle: string );
973  const  const
974          FORMAT_NOMAIL  = '<a name="%s"></a><div class="header"><span class="no"><a href="menu:%s">%s</a></span>'          FORMAT_NOMAIL  = '<a name="%s"></a><div class="header"><span class="no"><a href="menu:%s">%s</a></span>'
975                                          + '<span class="name_label"> 名前: </span> <span class="name"><b>%s</b></span>'                                          + '<span class="name_label"> 名前: </span> <span class="name"><b>%s</b></span>'
# Line 1010  begin Line 1013  begin
1013                  html.Add('</head>'#13#10'<body>');                  html.Add('</head>'#13#10'<body>');
1014                  html.Add('<a name="top"></a>'#13#10'<p id="idSearch"></p>');                  html.Add('<a name="top"></a>'#13#10'<p id="idSearch"></p>');
1015                  html.Add('<div class="title">' + sTitle + '</div>');                  html.Add('<div class="title">' + sTitle + '</div>');
1016                    html.Flush;
1017                  for i := 0 to ReadList.Count - 1 do begin                  for i := 0 to ReadList.Count - 1 do begin
1018                          // 1 は必ず表示                          // 1 は必ず表示
1019                          if i <> 0 then begin                          if i <> 0 then begin
# Line 1057  begin Line 1061  begin
1061          end;          end;
1062  end;  end;
1063    
1064  procedure THTMLCreate.CreateDefaultHTML (html:TStringList; ThreadItem: TThreadItem; ReadList: TStringList; sTitle: string );  procedure THTMLCreate.CreateDefaultHTML (html:TBufferedWebBrowser; ThreadItem: TThreadItem; ReadList: TStringList; sTitle: string );
1065  var  var
1066          i: integer;          i: integer;
1067          No: string;          No: string;
# Line 1078  begin Line 1082  begin
1082          html.Add('<font size=+1 color="#FF0000">' + sTitle + '</font>');          html.Add('<font size=+1 color="#FF0000">' + sTitle + '</font>');
1083          html.Add('<dl>');          html.Add('<dl>');
1084          html.Add('<p id="idSearch"></p>');          html.Add('<p id="idSearch"></p>');
1085            html.Flush;
1086          for i := 0 to ReadList.Count - 1 do begin          for i := 0 to ReadList.Count - 1 do begin
1087                  // 1 は必ず表示                  // 1 は必ず表示
1088                  if i <> 0 then begin                  if i <> 0 then begin
# Line 1716  begin Line 1721  begin
1721          end else begin          end else begin
1722                  FBuffSize := BuffSize;                  FBuffSize := BuffSize;
1723          end;          end;
1724          Self.Capacity := FBuffSize + 1;          Self.Capacity := FBuffSize + 10;
1725  end;  end;
1726  procedure TBufferedWebBrowser.Open;  procedure TBufferedWebBrowser.Open;
1727  begin  begin
# Line 1726  begin Line 1731  begin
1731  end;  end;
1732  procedure TBufferedWebBrowser.Close;  procedure TBufferedWebBrowser.Close;
1733  begin  begin
1734          if (Self.Count > 0) then begin          Self.Flush;
                 FBrowserDoc.Write(Self.Text);  
                 Self.Clear;  
         end;  
1735          try          try
1736                  FBrowserDoc.Close;                  FBrowserDoc.Close;
1737          except          except
# Line 1738  begin Line 1740  begin
1740  end;  end;
1741  function TBufferedWebBrowser.Add(const S: string): Integer;  function TBufferedWebBrowser.Add(const S: string): Integer;
1742  begin  begin
1743          Result := inherited Add(S);          Result := inherited Add(TrimRight(s));
1744          if (Self.Count > FBuffSize) then begin          if (Self.Count > FBuffSize) then begin
1745                  FBrowserDoc.Write(Self.Text);                  FBrowserDoc.Write(Self.Text);
1746                  Self.Clear;                  Self.Clear;
1747          end;          end;
1748    end;
1749    procedure TBufferedWebBrowser.Flush ;
1750    begin
1751            if (Self.Count > 0) then begin
1752                    FBrowserDoc.Write(Self.Text);
1753                    Self.Clear;
1754            end;
1755  end;  end;
1756  destructor TBufferedWebBrowser.Destory;  destructor TBufferedWebBrowser.Destory;
1757  begin  begin

Legend:
Removed from v.1.26  
changed lines
  Added in v.1.27

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