fpspreadsheet: Fix hyperlinks tests under Linux

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4008 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
wp_xxyyzz
2015-03-08 17:27:52 +00:00
parent d16e0915f5
commit 072efe0a95
4 changed files with 13 additions and 6 deletions

View File

@ -1570,7 +1570,8 @@ begin
displayTxt := ATarget; displayTxt := ATarget;
if pos('file:', lowercase(displayTxt))=1 then if pos('file:', lowercase(displayTxt))=1 then
begin begin
Delete(displayTxt, 1, Length('file:///')); URIToFilename(displayTxt, displayTxt);
// Delete(displayTxt, 1, Length('file:///'));
ForcePathDelims(displayTxt); ForcePathDelims(displayTxt);
if bm <> '' then displayTxt := fn + '#' + bm; if bm <> '' then displayTxt := fn + '#' + bm;
end; end;
@ -3641,7 +3642,8 @@ begin
AText := hyperlink.Target; AText := hyperlink.Target;
if pos('file:', hyperlink.Target)=1 then if pos('file:', hyperlink.Target)=1 then
begin begin
Delete(AText, 1, Length('file:///')); URIToFileName(AText, AText);
// Delete(AText, 1, Length('file:///'));
ForcePathDelims(AText); ForcePathDelims(AText);
end; end;
end; end;

View File

@ -95,7 +95,7 @@ type
implementation implementation
uses uses
lazfileutils, fpsutils; uriparser, lazfileutils, fpsutils;
const const
HyperlinkSheet = 'Hyperlinks'; HyperlinkSheet = 'Hyperlinks';
@ -127,12 +127,15 @@ var
procedure TSpreadWriteReadHyperlinkTests.SetUp; procedure TSpreadWriteReadHyperlinkTests.SetUp;
var var
i: Integer; i: Integer;
fn: String;
begin begin
inherited SetUp; inherited SetUp;
for i:=Low(SollLinks) to High(SollLinks) do for i:=Low(SollLinks) to High(SollLinks) do
if SollLinks[i] = 'file:///' then if SollLinks[i] = 'file:///' then
begin begin
SollLinks[i] := 'file:///' + ExpandFileName('testbiff8_1899.xls'); fn := ExpandFileName('testbiff8_1899.xls');
FilenameToURI(fn);
SollLinks[i] := fn;
exit; exit;
end; end;
end; end;

View File

@ -1526,7 +1526,8 @@ begin
// An absolute path must be a fully qualified URI to be compatible with fps // An absolute path must be a fully qualified URI to be compatible with fps
if flags and MASK_HLINK_ABSOLUTE <> 0 then if flags and MASK_HLINK_ABSOLUTE <> 0 then
link := 'file:///' + link; FilenameToURI(link);
// link := 'file:///' + link;
end; end;
end; end;

View File

@ -2812,7 +2812,8 @@ begin
if target <> '' then if target <> '' then
begin begin
if (pos('file:', target) = 0) and FileNameIsAbsolute(target) then if (pos('file:', target) = 0) and FileNameIsAbsolute(target) then
target := 'file:///' + target; FileNameToURI(target);
// target := 'file:///' + target;
s := Format('Id="rId%d" Type="%s" Target="%s" TargetMode="External"', s := Format('Id="rId%d" Type="%s" Target="%s" TargetMode="External"',
[FNext_rId, SCHEMAS_HYPERLINKS, target]); [FNext_rId, SCHEMAS_HYPERLINKS, target]);
AppendToStream(FSSheetRels[FCurSheetNum], AppendToStream(FSSheetRels[FCurSheetNum],