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

View File

@ -1,13 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<CONFIG> <CONFIG>
<ProjectOptions> <ProjectOptions>
<Version Value="10"/> <Version Value="12"/>
<General> <General>
<Flags> <Flags>
<LRSInOutputDirectory Value="False"/> <LRSInOutputDirectory Value="False"/>
<CompatibilityMode Value="True"/>
</Flags> </Flags>
<SessionStorage Value="InIDEConfig"/> <SessionStorage Value="InIDEConfig"/>
<MainUnit Value="0"/>
<Title Value="testfpreport"/> <Title Value="testfpreport"/>
</General> </General>
<VersionInfo> <VersionInfo>
@ -25,16 +25,21 @@
</BuildModes> </BuildModes>
<PublishOptions> <PublishOptions>
<Version Value="2"/> <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> </PublishOptions>
<RunParams> <RunParams>
<local> <local>
<FormatVersion Value="1"/> <CommandLineParams Value="--suite=TTestReportMemo.TestPrepareTextBlocks_multiline_wraptext_oneword_split"/>
<CommandLineParams Value="--suite=TTestCustomReport.TestPagePrepareObjects"/> <LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T &apos;Lazarus Run Output&apos; -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
<LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
</local> </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> </RunParams>
<RequiredPackages Count="1"> <RequiredPackages Count="1">
<Item1> <Item1>