fpspreadsheet: String typo fixed and adds a new convinience routine to the grid code

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@1682 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
sekelsenmat
2011-06-16 07:55:24 +00:00
parent a822873b80
commit 00260da687
6 changed files with 40 additions and 44 deletions

View File

@ -1,15 +1,10 @@
<?xml version="1.0"?>
<CONFIG>
<ProjectOptions>
<Version Value="7"/>
<Version Value="9"/>
<General>
<Flags>
<AlwaysBuild Value="False"/>
<UseDefaultCompilerOptions Value="True"/>
</Flags>
<SessionStorage Value="InProjectDir"/>
<MainUnit Value="0"/>
<TargetFileExt Value=""/>
<ResourceType Value="res"/>
<UseXPManifest Value="True"/>
<Icon Value="0"/>
@ -17,8 +12,11 @@
<VersionInfo>
<Language Value=""/>
<CharSet Value=""/>
<StringTable Comments="" CompanyName="" FileDescription="" FileVersion="" InternalName="" LegalCopyright="" LegalTrademarks="" OriginalFilename="" ProductName="" ProductVersion=""/>
<StringTable ProductVersion=""/>
</VersionInfo>
<BuildModes Count="1">
<Item1 Name="default" Default="True"/>
</BuildModes>
<PublishOptions>
<Version Value="2"/>
<IgnoreBinaries Value="False"/>
@ -59,19 +57,14 @@
</Units>
</ProjectOptions>
<CompilerOptions>
<Version Value="8"/>
<Version Value="10"/>
<Target>
<Filename Value="fpschart"/>
</Target>
<SearchPaths>
<IncludeFiles Value="$(ProjOutDir)/"/>
<IncludeFiles Value="$(ProjOutDir)"/>
<UnitOutputDirectory Value="lib/$(TargetCPU)-$(TargetOS)"/>
</SearchPaths>
<Parsing>
<SyntaxOptions>
<UseAnsiStrings Value="True"/>
</SyntaxOptions>
</Parsing>
<Linking>
<Debugging>
<GenerateDebugInfo Value="True"/>

View File

@ -7,7 +7,7 @@ object FPSChartForm: TFPSChartForm
ClientHeight = 382
ClientWidth = 700
OnCreate = FormCreate
LCLVersion = '0.9.29'
LCLVersion = '0.9.31'
object MyChart: TChart
Left = 352
Height = 240
@ -15,8 +15,7 @@ object FPSChartForm: TFPSChartForm
Width = 336
AxisList = <
item
Alignment = calLeft
Title.Font.Orientation = 900
Title.LabelFont.Orientation = 900
end
item
Alignment = calBottom
@ -31,7 +30,6 @@ object FPSChartForm: TFPSChartForm
ParentColor = False
object MyChartLineSeries: TLineSeries
LinePen.Color = clRed
SeriesColor = clRed
Source = FPSChartSource
end
end
@ -64,7 +62,7 @@ object FPSChartForm: TFPSChartForm
end
object editSourceFile: TFileNameEdit
Left = 152
Height = 22
Height = 25
Top = 48
Width = 136
DialogOptions = []
@ -79,7 +77,7 @@ object FPSChartForm: TFPSChartForm
Left = 14
Height = 18
Top = 51
Width = 130
Width = 136
Caption = 'Source Spreadsheet:'
ParentColor = False
end
@ -94,7 +92,7 @@ object FPSChartForm: TFPSChartForm
end
object editXAxis: TLabeledEdit
Left = 64
Height = 22
Height = 25
Top = 80
Width = 80
EditLabel.AnchorSideLeft.Control = editXAxis
@ -102,10 +100,10 @@ object FPSChartForm: TFPSChartForm
EditLabel.AnchorSideTop.Side = asrCenter
EditLabel.AnchorSideRight.Control = editXAxis
EditLabel.AnchorSideBottom.Control = editXAxis
EditLabel.Left = 17
EditLabel.Left = 18
EditLabel.Height = 18
EditLabel.Top = 82
EditLabel.Width = 44
EditLabel.Top = 83
EditLabel.Width = 43
EditLabel.Caption = 'X-Axis:'
EditLabel.ParentColor = False
LabelPosition = lpLeft
@ -114,7 +112,7 @@ object FPSChartForm: TFPSChartForm
end
object EditYAxis: TLabeledEdit
Left = 208
Height = 22
Height = 25
Top = 80
Width = 80
EditLabel.AnchorSideLeft.Control = EditYAxis
@ -122,10 +120,10 @@ object FPSChartForm: TFPSChartForm
EditLabel.AnchorSideTop.Side = asrCenter
EditLabel.AnchorSideRight.Control = EditYAxis
EditLabel.AnchorSideBottom.Control = EditYAxis
EditLabel.Left = 161
EditLabel.Left = 164
EditLabel.Height = 18
EditLabel.Top = 82
EditLabel.Width = 44
EditLabel.Top = 83
EditLabel.Width = 41
EditLabel.Caption = 'Y-Axis:'
EditLabel.ParentColor = False
LabelPosition = lpLeft

View File

@ -54,19 +54,8 @@ begin
end;
procedure TFPSChartForm.btnLoadSpreadsheetClick(Sender: TObject);
var
Format: TsSpreadsheetFormat;
lExt: string;
begin
// First some logic to detect the format from the extension
lExt := ExtractFileExt(editSourceFile.Text);
if lExt = STR_EXCEL_EXTENSION then Format := sfExcel2
else if lExt = STR_OOXML_EXCEL_EXTENSION then Format := sfOOXML
else if lExt = STR_OPENDOCUMENT_CALC_EXTENSION then Format := sfOpenDocument
else raise Exception.Create('Invalid File Extension');
// Now the actual loading
WorksheetGrid.LoadFromSpreadsheetFile(editSourceFile.Text, Format);
WorksheetGrid.LoadFromSpreadsheetFile(editSourceFile.Text);
end;
procedure TFPSChartForm.FormCreate(Sender: TObject);

View File

@ -10,7 +10,8 @@ program test_write_formula;
{$mode delphi}{$H+}
uses
Classes, SysUtils, fpspreadsheet, xlsbiff8, fpsopendocument,
Classes, SysUtils,
fpspreadsheet, xlsbiff5, xlsbiff8, fpsopendocument,
laz_fpspreadsheet, fpsconvencoding;
var

View File

@ -751,8 +751,8 @@ begin
FWorksheets := TFPList.Create;
// In the future: add support for translations
lpUnsupportedReadFormat := 'Tryed to read a spreadsheet using an unsupported format';
lpUnsupportedWriteFormat := 'Tryed to write a spreadsheet using an unsupported format';
lpUnsupportedReadFormat := 'Tried to read a spreadsheet using an unsupported format';
lpUnsupportedWriteFormat := 'Tried to write a spreadsheet using an unsupported format';
end;
{@@

View File

@ -31,7 +31,8 @@ type
{ methods }
constructor Create(AOwner: TComponent); override;
procedure LoadFromWorksheet(AWorksheet: TsWorksheet);
procedure LoadFromSpreadsheetFile(AFileName: string; AFormat: TsSpreadsheetFormat; AWorksheetIndex: Integer = 0);
procedure LoadFromSpreadsheetFile(AFileName: string; AFormat: TsSpreadsheetFormat; AWorksheetIndex: Integer = 0); overload;
procedure LoadFromSpreadsheetFile(AFileName: string; AWorksheetIndex: Integer = 0); overload;
procedure SaveToWorksheet(AWorksheet: TsWorksheet);
property DisplayFixedColRow: Boolean read FDisplayFixedColRow write SetDisplayFixedColRow;
end;
@ -236,6 +237,20 @@ begin
end;
end;
procedure TsCustomWorksheetGrid.LoadFromSpreadsheetFile(AFileName: string;
AWorksheetIndex: Integer);
var
lWorkbook: TsWorkbook;
begin
lWorkbook := TsWorkbook.Create;
try
lWorkbook.ReadFromFile(AFileName);
LoadFromWorksheet(lWorkbook.GetWorksheetByIndex(AWorksheetIndex));
finally
lWorkbook.Free;
end;
end;
procedure TsCustomWorksheetGrid.SaveToWorksheet(AWorksheet: TsWorksheet);
var
x, y: Integer;