mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-14 16:59:21 +02:00
LazReport, improve export facilites
git-svn-id: trunk@22908 -
This commit is contained in:
parent
f358340f56
commit
ffcb9ab6f3
@ -251,6 +251,7 @@ type
|
|||||||
IsPrinting: Boolean;
|
IsPrinting: Boolean;
|
||||||
Flags: Word;
|
Flags: Word;
|
||||||
DRect: TRect;
|
DRect: TRect;
|
||||||
|
ParentBandType: TfrBandType; // identify parent band type on exporting view
|
||||||
|
|
||||||
constructor Create; override;
|
constructor Create; override;
|
||||||
destructor Destroy; override;
|
destructor Destroy; override;
|
||||||
@ -1070,7 +1071,10 @@ function GetDefaultDataSet: TfrTDataSet;
|
|||||||
procedure SetBit(var w: Word; e: Boolean; m: Integer);
|
procedure SetBit(var w: Word; e: Boolean; m: Integer);
|
||||||
|
|
||||||
const
|
const
|
||||||
frCurrentVersion = 24; // this is current version (2.4)
|
frCurrentVersion = 25;
|
||||||
|
// version 2.5: lazreport: added to binary stream ParentBandType variable
|
||||||
|
// on TfrView, used to extend export facilities
|
||||||
|
|
||||||
frSpecCount = 9;
|
frSpecCount = 9;
|
||||||
frSpecFuncs: Array[0..frSpecCount - 1] of String = ('PAGE#', '',
|
frSpecFuncs: Array[0..frSpecCount - 1] of String = ('PAGE#', '',
|
||||||
'DATE', 'TIME', 'LINE#', 'LINETHROUGH#', 'COLUMN#', 'CURRENT#', 'TOTALPAGES');
|
'DATE', 'TIME', 'LINE#', 'LINETHROUGH#', 'COLUMN#', 'CURRENT#', 'TOTALPAGES');
|
||||||
@ -1769,6 +1773,7 @@ procedure TfrView.LoadFromStream(Stream: TStream);
|
|||||||
var
|
var
|
||||||
wb : Word;
|
wb : Word;
|
||||||
S : Single;
|
S : Single;
|
||||||
|
i : Integer;
|
||||||
begin
|
begin
|
||||||
{$IFDEF DebugLR}
|
{$IFDEF DebugLR}
|
||||||
DebugLn('%s%s.TfrView.LoadFromStream begin StreamMode=%d ClassName=%s',
|
DebugLn('%s%s.TfrView.LoadFromStream begin StreamMode=%d ClassName=%s',
|
||||||
@ -1811,6 +1816,12 @@ begin
|
|||||||
Read(wb,2);
|
Read(wb,2);
|
||||||
Visible:=(Wb<>0);
|
Visible:=(Wb<>0);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
if (frVersion >= 25) then begin
|
||||||
|
Read(I, 4);
|
||||||
|
ParentBandType := TfrBandType(I);
|
||||||
|
end;
|
||||||
|
|
||||||
end;
|
end;
|
||||||
{$IFDEF DebugLR}
|
{$IFDEF DebugLR}
|
||||||
DebugLn('%s%s.TfrView.LoadFromStream end',[sspc,name]);
|
DebugLn('%s%s.TfrView.LoadFromStream end',[sspc,name]);
|
||||||
@ -1863,6 +1874,7 @@ end;
|
|||||||
procedure TfrView.SaveToStream(Stream: TStream);
|
procedure TfrView.SaveToStream(Stream: TStream);
|
||||||
var
|
var
|
||||||
S: Single;
|
S: Single;
|
||||||
|
B: Integer;
|
||||||
begin
|
begin
|
||||||
{$IFDEF DebugLR}
|
{$IFDEF DebugLR}
|
||||||
DebugLn('%s%s.SaveToStream begin',[sspc,name]);
|
DebugLn('%s%s.SaveToStream begin',[sspc,name]);
|
||||||
@ -1894,7 +1906,15 @@ begin
|
|||||||
frWriteMemo(Stream, Script);
|
frWriteMemo(Stream, Script);
|
||||||
Write(Visible, 2);
|
Write(Visible, 2);
|
||||||
end
|
end
|
||||||
else frWriteMemo(Stream, Memo1);
|
else
|
||||||
|
frWriteMemo(Stream, Memo1);
|
||||||
|
|
||||||
|
// parent band type new in stream format 25
|
||||||
|
B := 0;
|
||||||
|
if Parent<>nil then
|
||||||
|
B := ord(Parent.Typ);
|
||||||
|
Write(B, 4);
|
||||||
|
|
||||||
end;
|
end;
|
||||||
{$IFDEF DebugLR}
|
{$IFDEF DebugLR}
|
||||||
Debugln('%s%s.SaveToStream end',[sspc,name]);
|
Debugln('%s%s.SaveToStream end',[sspc,name]);
|
||||||
@ -7751,7 +7771,7 @@ begin
|
|||||||
if frVersion <= frCurrentVersion then
|
if frVersion <= frCurrentVersion then
|
||||||
try
|
try
|
||||||
{$IFDEF FREEREP2217READ}
|
{$IFDEF FREEREP2217READ}
|
||||||
if FRE_COMPATIBLE_READ and (frVersion = 23) then
|
if FRE_COMPATIBLE_READ and (frVersion >= 23) then
|
||||||
frVersion := 22;
|
frVersion := 22;
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
Pages.LoadFromStream(Stream);
|
Pages.LoadFromStream(Stream);
|
||||||
@ -7790,7 +7810,7 @@ begin
|
|||||||
if frVersion <= frCurrentVersion then
|
if frVersion <= frCurrentVersion then
|
||||||
try
|
try
|
||||||
{$IFDEF FREEREP2217READ}
|
{$IFDEF FREEREP2217READ}
|
||||||
if FRE_COMPATIBLE_READ and (frVersion = 23) then
|
if FRE_COMPATIBLE_READ and (frVersion >= 23) then
|
||||||
frVersion := 22;
|
frVersion := 22;
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
pages.LoadFromXML(XML, Path+'Pages/');
|
pages.LoadFromXML(XML, Path+'Pages/');
|
||||||
|
Loading…
Reference in New Issue
Block a user