From a63c9ad4a5dbec3697936dd10207641684b0b143 Mon Sep 17 00:00:00 2001 From: wp_xxyyzz Date: Sun, 31 May 2015 16:41:34 +0000 Subject: [PATCH] fpspreadsheet: Make unit fpsnumformat.pas independent of fpspreadsheet.pas git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4169 8e941d3f-bd1b-0410-a28a-d453659cc2b4 --- components/fpspreadsheet/fpsnumformat.pas | 21 ++++++++++++--------- components/fpspreadsheet/fpspreadsheet.pas | 2 +- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/components/fpspreadsheet/fpsnumformat.pas b/components/fpspreadsheet/fpsnumformat.pas index 61623728d..9f7c1eec9 100644 --- a/components/fpspreadsheet/fpsnumformat.pas +++ b/components/fpspreadsheet/fpsnumformat.pas @@ -8,7 +8,7 @@ interface uses Classes, SysUtils, - fpstypes, fpspreadsheet; + fpstypes; type { TsNumFormatList } @@ -19,11 +19,11 @@ type function GetItem(AIndex: Integer): TsNumFormatParams; procedure SetItem(AIndex: Integer; const AValue: TsNumFormatParams); protected - FWorkbook: TsWorkbook; + FFormatSettings: TFormatSettings; FClass: TsNumFormatParamsClass; procedure AddBuiltinFormats; virtual; public - constructor Create(AWorkbook: TsWorkbook; AOwnsData: Boolean); + constructor Create(AFormatSettings: TFormatSettings; AOwnsData: Boolean); destructor Destroy; override; function AddFormat(ASections: TsNumFormatSections): Integer; overload; function AddFormat(AFormatStr: String): Integer; overload; @@ -35,7 +35,7 @@ type {@@ Workbook from which the number formats are collected in the list. It is mainly needed to get access to the FormatSettings for easy localization of some formatting strings. } - property Workbook: TsWorkbook read FWorkbook; +// property Workbook: TsWorkbook read FWorkbook; end; @@ -216,13 +216,16 @@ begin end; -{ TsNumFormatList } +{ -----------------------------------------------------------------------------} +{ TsNumFormatList } +{ -----------------------------------------------------------------------------} -constructor TsNumFormatList.Create(AWorkbook: TsWorkbook; AOwnsData: Boolean); +constructor TsNumFormatList.Create(AFormatSettings: TFormatSettings; + AOwnsData: Boolean); begin inherited Create; FClass := TsNumFormatParams; - FWorkbook := AWorkbook; + FFormatSettings := AFormatSettings; FOwnsData := AOwnsData; end; @@ -250,7 +253,7 @@ var newSections: TsNumFormatSections; i: Integer; begin - parser := TsNumFormatParser.Create(AFormatStr, FWorkbook.FormatSettings); + parser := TsNumFormatParser.Create(AFormatStr, FFormatSettings); try SetLength(newSections, parser.ParsedSectionCount); for i:=0 to High(newSections) do @@ -301,7 +304,7 @@ function TsNumFormatList.Find(AFormatStr: String): Integer; var nfp: TsNumFormatParams; begin - nfp := CreateNumFormatParams(AFormatStr, FWorkbook.FormatSettings); + nfp := CreateNumFormatParams(AFormatStr, FFormatSettings); if nfp = nil then Result := -1 else diff --git a/components/fpspreadsheet/fpspreadsheet.pas b/components/fpspreadsheet/fpspreadsheet.pas index da01996ae..266949c3e 100755 --- a/components/fpspreadsheet/fpspreadsheet.pas +++ b/components/fpspreadsheet/fpspreadsheet.pas @@ -6092,7 +6092,7 @@ begin SetDefaultFont(DEFAULT_FONTNAME, DEFAULT_FONTSIZE); InitFonts; - FNumFormatList := TsNumFormatList.Create(self, true); + FNumFormatList := TsNumFormatList.Create(FormatSettings, true); FCellFormatList := TsCellFormatList.Create(false); // Add default cell format