mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-11 17:16:01 +02:00
wiki: Fix internal links within chm files if filename contains illegal characters; fix icon of wiki template in chm file.
git-svn-id: trunk@49359 -
This commit is contained in:
parent
3d4af7e38c
commit
2a0abb0f98
@ -70,6 +70,7 @@ type
|
||||
procedure WriteIndexToStream(aStream: TStream);
|
||||
procedure OnWriterLastFileAdded(Sender: TObject);
|
||||
function GetImageLink(ImgFilename: string): string; override;
|
||||
function GetInternalImageLink(ImgFilename: String): String; override;
|
||||
function GetPageLink(Page: TW2XHTMLPage): string; override;
|
||||
procedure SaveAllPages; override;
|
||||
public
|
||||
@ -206,9 +207,15 @@ begin
|
||||
Result:=CHMImagesDir+ExtractFileName(ImgFilename);
|
||||
end;
|
||||
|
||||
function TWiki2CHMConverter.GetInternalImageLink(ImgFilename: String): String;
|
||||
begin
|
||||
Result := CHMImagesDir + 'internal/' + ExtractFilename(ImgFilename);
|
||||
end;
|
||||
|
||||
function TWiki2CHMConverter.GetPageLink(Page: TW2XHTMLPage): string;
|
||||
begin
|
||||
Result:=Page.WikiDocumentName+'.html';
|
||||
// Result:=Page.WikiDocumentName+'.html';
|
||||
Result :=Page.Filename;
|
||||
end;
|
||||
|
||||
procedure TWiki2CHMConverter.SetCHMFile(AValue: string);
|
||||
|
@ -81,6 +81,7 @@ type
|
||||
procedure OnWikiToken(Token: TWPToken); virtual;
|
||||
procedure RaiseNodeNotOpen(Token: TWPToken);
|
||||
function GetImageLink(ImgFilename: string): string; virtual;
|
||||
function GetInternalImageLink(ImgFilename: string): string; virtual;
|
||||
function FindImage(const ImgFilename: string): string; virtual;
|
||||
procedure MarkImageAsUsed(const ImgFilename: string; Page: TW2XHTMLPage); virtual;
|
||||
function GetPageLink(Page: TW2XHTMLPage): string; virtual;
|
||||
@ -845,9 +846,9 @@ begin
|
||||
Node.AppendChild(childnode1);
|
||||
childnode1.SetAttribute('class', 'icon');
|
||||
if FUseTemplateIcons then begin
|
||||
fn := FindImage('internal\'+iconfile);
|
||||
fn := FindImage('internal/'+iconfile);
|
||||
if fn <> '' then
|
||||
fn := GetImageLink(fn);
|
||||
fn := GetInternalImageLink(fn);
|
||||
MarkImageAsUsed(fn, Page);
|
||||
childnode2 := doc.CreateElement('img');
|
||||
childnode2.SetAttribute('src', fn);
|
||||
@ -922,6 +923,11 @@ begin
|
||||
Result:=CreateRelativePath(ImgFilename,OutputDir);
|
||||
end;
|
||||
|
||||
function TWiki2XHTMLConverter.GetInternalImagelink(ImgFilename: String): string;
|
||||
begin
|
||||
Result := CreateRelativepath(ImgFilename,OutputDir);
|
||||
end;
|
||||
|
||||
function TWiki2XHTMLConverter.FindImage(const ImgFilename: string): string;
|
||||
begin
|
||||
if ImagesDir='' then exit('');
|
||||
|
Loading…
Reference in New Issue
Block a user