* Patch from Klaus (computertechnik@web.de) to read/write columncount/columngap

git-svn-id: trunk@43627 -
This commit is contained in:
michael 2019-12-02 21:42:32 +00:00
parent 3ced30f816
commit b86b2f1b80
2 changed files with 29 additions and 8 deletions

View File

@ -2600,6 +2600,16 @@ begin
Result := TFPPenStyle(GetEnumValue(TypeInfo(TFPPenStyle), AName));
end;
function ColumnLayoutToString(AEnum: TFPReportColumnLayout): string; inline;
begin
result := GetEnumName(TypeInfo(TFPReportColumnLayout), Ord(AEnum));
end;
function StringToColumnLayout(AName: string): TFPReportColumnLayout; inline;
begin
Result := TFPReportColumnLayout(GetEnumValue(TypeInfo(TFPReportColumnLayout), AName));
end;
function OrientationToString(AEnum: TFPReportOrientation): string; inline;
begin
result := GetEnumName(TypeInfo(TFPReportOrientation), Ord(AEnum));
@ -7727,6 +7737,9 @@ procedure TFPReportCustomPage.ReadElement(AReader: TFPReportStreamer);
var
E: TObject;
begin
ColumnCount := AReader.ReadInteger('ColumnCount', 1);
ColumnGap := AReader.ReadFloat('ColumnGap', 0);
ColumnLayout := StringToColumnLayout(AReader.ReadString('ColumnLayout', 'clVertical'));
Orientation := StringToPaperOrientation(AReader.ReadString('Orientation', 'poPortrait'));
Pagesize.PaperName := AReader.ReadString('PageSize.PaperName', 'A4');
Pagesize.Width := AReader.ReadFloat('PageSize.Width', 210);
@ -7865,6 +7878,9 @@ end;
procedure TFPReportCustomPage.DoWriteLocalProperties(AWriter: TFPReportStreamer; AOriginal: TFPReportElement);
begin
inherited DoWriteLocalProperties(AWriter, AOriginal);
AWriter.WriteFloat('ColumnCount', ColumnCount);
AWriter.WriteFloat('ColumnGap', ColumnGap);
AWriter.WriteString('ColumnLayout', ColumnLayoutToString(ColumnLayout));
AWriter.WriteString('Orientation', PaperOrientationToString(Orientation));
AWriter.WriteString('PageSize.PaperName', PageSize.PaperName);
AWriter.WriteFloat('PageSize.Width', PageSize.Width);

View File

@ -1,13 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<CONFIG>
<ProjectOptions>
<Version Value="10"/>
<Version Value="12"/>
<General>
<Flags>
<LRSInOutputDirectory Value="False"/>
<CompatibilityMode Value="True"/>
</Flags>
<SessionStorage Value="InIDEConfig"/>
<MainUnit Value="0"/>
<Title Value="testfpreport"/>
</General>
<VersionInfo>
@ -25,16 +25,21 @@
</BuildModes>
<PublishOptions>
<Version Value="2"/>
<IgnoreBinaries Value="False"/>
<IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
<ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
</PublishOptions>
<RunParams>
<local>
<FormatVersion Value="1"/>
<CommandLineParams Value="--suite=TTestCustomReport.TestPagePrepareObjects"/>
<LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
<CommandLineParams Value="--suite=TTestReportMemo.TestPrepareTextBlocks_multiline_wraptext_oneword_split"/>
<LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T &apos;Lazarus Run Output&apos; -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
</local>
<FormatVersion Value="2"/>
<Modes Count="1">
<Mode0 Name="default">
<local>
<CommandLineParams Value="--suite=TTestReportMemo.TestPrepareTextBlocks_multiline_wraptext_oneword_split"/>
<LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T &apos;Lazarus Run Output&apos; -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
</local>
</Mode0>
</Modes>
</RunParams>
<RequiredPackages Count="1">
<Item1>