spready: Update to new folder structure in fpspreadsheet. Remove dependence on IpHtml (too buggy in old Laz versions).

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5284 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
wp_xxyyzz
2016-10-22 21:11:20 +00:00
parent 835f622ed6
commit 9c9779017b
9 changed files with 1925 additions and 79 deletions

View File

@ -86,7 +86,7 @@ var
implementation
uses
fpsRegFileFormats, fpsUtils, fpsNumFormat;
fpsUtils, fpsNumFormat;
{==============================================================================}
{ TsSYLKReader }

View File

@ -1,35 +1,40 @@
object AboutForm: TAboutForm
Left = 338
Height = 294
Height = 313
Top = 153
Width = 375
Width = 377
BorderStyle = bsSizeToolWin
Caption = 'About Spready'
ClientHeight = 294
ClientWidth = 375
ClientHeight = 313
ClientWidth = 377
Color = clWindow
Constraints.MinHeight = 275
Constraints.MinWidth = 330
OnCreate = FormCreate
Position = poMainFormCenter
LCLVersion = '1.7'
ShowHint = True
LCLVersion = '1.6.0.4'
object Panel1: TPanel
Left = 0
Height = 90
Height = 82
Top = 0
Width = 375
Width = 377
Align = alTop
BevelOuter = bvNone
ClientHeight = 90
ClientWidth = 375
ClientHeight = 82
ClientWidth = 377
Color = clWindow
ParentColor = False
TabOrder = 0
object IconImage: TImage
Left = 8
AnchorSideLeft.Control = Panel1
AnchorSideTop.Control = Panel1
Left = 10
Height = 64
Top = 16
Top = 8
Width = 64
BorderSpacing.Left = 10
BorderSpacing.Top = 8
end
object BtnClose: TButton
AnchorSideTop.Control = Panel1
@ -38,9 +43,9 @@ object AboutForm: TAboutForm
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = IconImage
AnchorSideBottom.Side = asrBottom
Left = 292
Left = 294
Height = 29
Top = 51
Top = 43
Width = 75
Anchors = [akRight, akBottom]
BorderSpacing.Right = 8
@ -56,9 +61,9 @@ object AboutForm: TAboutForm
AnchorSideTop.Side = asrBottom
AnchorSideBottom.Control = IconImage
AnchorSideBottom.Side = asrBottom
Left = 84
Left = 86
Height = 15
Top = 65
Top = 57
Width = 54
Anchors = [akLeft, akBottom]
BorderSpacing.Left = 12
@ -71,9 +76,9 @@ object AboutForm: TAboutForm
AnchorSideLeft.Control = IconImage
AnchorSideLeft.Side = asrBottom
AnchorSideBottom.Control = LblVersion
Left = 84
Left = 86
Height = 44
Top = 21
Top = 13
Width = 156
Anchors = [akLeft, akBottom]
AutoSize = True
@ -132,9 +137,233 @@ object AboutForm: TAboutForm
object Bevel1: TBevel
Left = 0
Height = 6
Top = 90
Width = 375
Top = 82
Width = 377
Align = alTop
Shape = bsTopLine
end
object LblCompilerAndLibs: TLabel
AnchorSideLeft.Control = Owner
AnchorSideTop.Control = Bevel1
AnchorSideTop.Side = asrBottom
Left = 10
Height = 32
Top = 88
Width = 254
BorderSpacing.Left = 10
Caption = 'Compiler and libraries'
Font.Color = clNavy
Font.Height = -24
Font.Style = [fsBold]
ParentColor = False
ParentFont = False
end
object LblFreePascal: TLabel
AnchorSideLeft.Control = lblBulletFreePascal
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = LblCompilerAndLibs
AnchorSideTop.Side = asrBottom
Cursor = crHandPoint
Left = 44
Height = 15
Hint = 'www.freepascal.org'
Top = 123
Width = 58
BorderSpacing.Left = 8
BorderSpacing.Top = 3
Caption = 'Free Pascal'
Font.Color = clNavy
ParentColor = False
ParentFont = False
OnClick = LabelClick
OnMouseEnter = LabelMouseEnter
OnMouseLeave = LabelMouseLeave
end
object LblLazarus: TLabel
AnchorSideLeft.Control = LblFreePascal
AnchorSideTop.Control = LblFreePascal
AnchorSideTop.Side = asrBottom
Cursor = crHandPoint
Left = 44
Height = 15
Hint = 'www.lazarus.freepascal.org'
Top = 141
Width = 39
BorderSpacing.Top = 3
Caption = 'Lazarus'
Font.Color = clNavy
ParentColor = False
ParentFont = False
OnClick = LabelClick
OnMouseEnter = LabelMouseEnter
OnMouseLeave = LabelMouseLeave
end
object LblFPSpreadsheet: TLabel
AnchorSideLeft.Control = LblFreePascal
AnchorSideTop.Control = LblLazarus
AnchorSideTop.Side = asrBottom
Cursor = crHandPoint
Left = 44
Height = 15
Hint = 'http://sourceforge.net/p/lazarus-ccr/svn/HEAD/tree/components/fpspreadsheet/'
Top = 159
Width = 77
BorderSpacing.Top = 3
Caption = 'FPSpreadsheet'
Font.Color = clNavy
ParentColor = False
ParentFont = False
OnClick = LabelClick
OnMouseEnter = LabelMouseEnter
OnMouseLeave = LabelMouseLeave
end
object lblBulletFreePascal: TLabel
AnchorSideLeft.Control = LblCompilerAndLibs
AnchorSideTop.Control = LblFreePascal
Left = 26
Height = 15
Top = 123
Width = 10
BorderSpacing.Left = 16
Caption = '⚫'
Font.Color = clNavy
ParentColor = False
ParentFont = False
end
object LblBulletLazarus: TLabel
AnchorSideLeft.Control = lblBulletFreePascal
AnchorSideTop.Control = LblLazarus
Left = 26
Height = 15
Top = 141
Width = 10
Caption = '⚫'
Font.Color = clNavy
ParentColor = False
ParentFont = False
end
object LblBulletFPSpreadsheet: TLabel
AnchorSideLeft.Control = lblBulletFreePascal
AnchorSideTop.Control = LblFPSpreadsheet
Left = 26
Height = 15
Top = 159
Width = 10
Caption = '⚫'
Font.Color = clNavy
ParentColor = False
ParentFont = False
end
object LblIcons: TLabel
AnchorSideLeft.Control = LblCompilerAndLibs
AnchorSideTop.Control = LblFPSpreadsheet
AnchorSideTop.Side = asrBottom
Left = 10
Height = 32
Top = 190
Width = 61
BorderSpacing.Top = 16
Caption = 'Icons'
Font.Color = clNavy
Font.Height = -24
Font.Style = [fsBold]
ParentColor = False
ParentFont = False
end
object LblFugueIcons: TLabel
AnchorSideLeft.Control = lblBulletFreePascal1
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = LblIcons
AnchorSideTop.Side = asrBottom
Cursor = crHandPoint
Left = 44
Height = 15
Hint = 'p.yusukekamiyamane.com'
Top = 225
Width = 64
BorderSpacing.Left = 8
BorderSpacing.Top = 3
Caption = 'Fugue icons'
Font.Color = clNavy
ParentColor = False
ParentFont = False
OnClick = LabelClick
OnMouseEnter = LabelMouseEnter
OnMouseLeave = LabelMouseLeave
end
object lblBulletFreePascal1: TLabel
AnchorSideLeft.Control = LblIcons
AnchorSideTop.Control = LblFugueIcons
Left = 26
Height = 15
Top = 225
Width = 10
BorderSpacing.Left = 16
Caption = '⚫'
Font.Color = clNavy
ParentColor = False
ParentFont = False
end
object LblBulletLazarus1: TLabel
AnchorSideLeft.Control = lblBulletFreePascal1
AnchorSideTop.Control = LblSilkIcons
Left = 26
Height = 15
Top = 243
Width = 10
Caption = '⚫'
Font.Color = clNavy
ParentColor = False
ParentFont = False
end
object LblSilkIcons: TLabel
AnchorSideLeft.Control = LblFugueIcons
AnchorSideTop.Control = LblFugueIcons
AnchorSideTop.Side = asrBottom
Cursor = crHandPoint
Left = 44
Height = 15
Hint = 'www.famfamfam.com/lab/icons/silk/'
Top = 243
Width = 114
BorderSpacing.Top = 3
Caption = 'famfamfam silk icons'
Font.Color = clNavy
ParentColor = False
ParentFont = False
OnClick = LabelClick
OnMouseEnter = LabelMouseEnter
OnMouseLeave = LabelMouseLeave
end
object LblBulletFPSpreadsheet1: TLabel
AnchorSideLeft.Control = lblBulletFreePascal1
AnchorSideTop.Control = lblTango
Left = 26
Height = 15
Top = 261
Width = 10
Caption = '⚫'
Font.Color = clNavy
ParentColor = False
ParentFont = False
end
object lblTango: TLabel
AnchorSideLeft.Control = LblFugueIcons
AnchorSideTop.Control = LblSilkIcons
AnchorSideTop.Side = asrBottom
Cursor = crHandPoint
Left = 44
Height = 15
Hint = 'tango.freedesktop.org/Tango_Icon_Library'
Top = 261
Width = 95
BorderSpacing.Top = 3
Caption = 'Tango icon library'
Font.Color = clNavy
ParentColor = False
ParentFont = False
OnClick = LabelClick
OnMouseEnter = LabelMouseEnter
OnMouseLeave = LabelMouseLeave
end
end

View File

@ -5,7 +5,7 @@ unit sAbout;
interface
uses
Classes, IpHtml, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs,
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs,
ExtCtrls, StdCtrls;
type
@ -17,13 +17,28 @@ type
BtnClose: TButton;
IconImage: TImage;
Image1: TImage;
LblBulletFPSpreadsheet1: TLabel;
lblBulletFreePascal1: TLabel;
LblBulletLazarus1: TLabel;
LblCompilerAndLibs: TLabel;
LblIcons: TLabel;
lblTango: TLabel;
LblFreePascal: TLabel;
LblFugueIcons: TLabel;
LblLazarus: TLabel;
LblFPSpreadsheet: TLabel;
lblBulletFreePascal: TLabel;
LblBulletLazarus: TLabel;
LblBulletFPSpreadsheet: TLabel;
LblSilkIcons: TLabel;
LblVersion: TLabel;
Panel1: TPanel;
procedure FormCreate(Sender: TObject);
procedure HTMLViewerHotClick(Sender: TObject);
procedure LabelClick(Sender: TObject);
procedure LabelMouseEnter(Sender: TObject);
procedure LabelMouseLeave(Sender: TObject);
private
{ private declarations }
FHTMLViewer: TIpHtmlPanel;
public
{ public declarations }
end;
@ -38,39 +53,6 @@ implementation
uses
LCLIntf, Types, resource, versiontypes, versionresource;
const
LE = LineEnding;
HTMLStr =
'<!DOCTYPE html ' +
'PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" '+
'"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> '+ LE +
'<html xmlns="http://www.w3.org/1999/xhtml">'+LE+
'<head>' + LE +
' <meta http-equiv="content-type" content="text/html; charset=UTF-8">' + LE +
' <style type="text/css">' + LE +
' body {background-color:ffffff;}' + LE +
' h3{color:003366;}' + LE +
' li{font-size:9pt}' + LE +
' </style>' + LE +
'<body>' + LE +
' <h3>Compiler and libaries:</h3>' + LE +
' <ul>'+ LE +
' <li><a href="www.freepascal.org">Free Pascal</a></li>' + LE +
' <li><a href="www.lazarus.freepascal.org">Lazarus</a></li>' + LE +
' <li><a href="http://sourceforge.net/p/lazarus-ccr/svn/HEAD/tree/components/fpspreadsheet/">fpspreadsheet</a></li>' + LE +
' </ul>' + LE +
' <h3>Icons:</h3>' + LE +
' <ul>' + LE +
' <li><a href="p.yusukekamiyamane.com">Fugue Icons</a></li>' + LE +
' <li><a href="www.famfamfam.com/lab/icons/silk/">famfamfam silk icons</a></li>' + LE +
' <li><a href="http://tango.freedesktop.org/Tango_Icon_Library">Tango icon library</a></li>' + LE +
// ' <li><a href="https://github.com/pasnox/oxygen-icons-png">Oxygen cons</a></li>' + LE +
' </ul>' + LE +
'</body>' + LE +
'</html>';
function ResourceVersionInfo: String;
var
Stream: TResourceStream;
@ -111,18 +93,30 @@ begin
IconImage.Picture.Icon := Application.Icon;
IconImage.Picture.Icon.Current := Application.Icon.GetBestIndexForSize(sz); //4;
LblVersion.Caption := 'Version ' + ResourceVersionInfo;
FHTMLViewer := TIpHtmlPanel.Create(self);
FHTMLViewer.Parent := self;
FHTMLViewer.Align := alClient;
FHTMLViewer.DefaultFontSize := 9;
FHTMLViewer.OnHotClick := @HTMLViewerHotClick;
FHTMLViewer.SetHtmlFromStr(HTMLStr);
end;
procedure TAboutForm.HTMLViewerHotClick(Sender: TObject);
procedure TAboutForm.LabelClick(Sender: TObject);
var
url: String;
begin
OpenURL((Sender as TIpHtmlPanel).HotURL);
url := TLabel(Sender).Hint;
OpenURL(url);
end;
procedure TAboutForm.LabelMouseEnter(Sender: TObject);
var
lbl: TLabel;
begin
lbl := TLabel(Sender);
lbl.Font.Style := [fsUnderline];
end;
procedure TAboutForm.LabelMouseLeave(Sender: TObject);
var
lbl: TLabel;
begin
lbl := TLabel(Sender);
lbl.Font.Style := [];
end;

File diff suppressed because it is too large Load Diff

View File

@ -8,7 +8,7 @@ uses
Classes, SysUtils, FileUtil, mrumanager, Forms, Controls, Graphics, Dialogs,
ExtCtrls, ComCtrls, ActnList, Menus, StdActns, Buttons, fpstypes,
fpspreadsheet, fpspreadsheetctrls, fpspreadsheetgrid, fpsActions,
fpsRegFileFormats, fpsSYLK, xlsxml, Grids, Types;
fpsSYLK, xlsxml, Grids, Types;
type
@ -470,7 +470,7 @@ implementation
uses
LCLIntf, inifiles, uriparser, ValEdit,
fpsUtils, fpsCSV,
fpsUtils, fpsCSV, fpsReaderWriter,
sCSVParamsForm, sCurrencyForm, sFormatSettingsForm, sSortParamsForm,
sHyperlinkForm, sNumFormatForm, sSearchForm, sColWidthForm, sRowHeightForm,
sAbout;
@ -583,13 +583,10 @@ end;
procedure TMainForm.AcFileSaveAsAccept(Sender: TObject);
var
fmt: TsSpreadFormatID;
fmts: TsSpreadFormatIDArray;
ext: String;
begin
Screen.Cursor := crHourglass;
try
fmt := FSaveFormats[AcFileSaveAs.Dialog.FilterIndex - 1];
ext := ExtractFileExt(ACFileSaveAs.Dialog.Filename);
WorkbookSource.SaveToSpreadsheetFile(UTF8ToAnsi(AcFileSaveAs.Dialog.FileName), fmt);
UpdateCaption;
finally

View File

@ -92,7 +92,7 @@ implementation
uses
LCLType, Math, DateUtils, TypInfo, variants,
fpsUtils, fpsNumFormatParser, fpsCurrency,
fpsUtils, fpsCurrency,
sCurrencyForm;
const

View File

@ -19,7 +19,7 @@
<AutoIncrementBuild Value="True"/>
<MajorVersionNr Value="1"/>
<MinorVersionNr Value="7"/>
<BuildNr Value="2"/>
<BuildNr Value="3"/>
<StringTable InternalName="Spready" ProductName="Spready" ProductVersion="0.0.0.0"/>
</VersionInfo>
<BuildModes Count="2">
@ -56,16 +56,13 @@
<FormatVersion Value="1"/>
</local>
</RunParams>
<RequiredPackages Count="3">
<RequiredPackages Count="2">
<Item1>
<PackageName Value="TurboPowerIPro"/>
<PackageName Value="laz_fpspreadsheet_visual"/>
</Item1>
<Item2>
<PackageName Value="laz_fpspreadsheet_visual"/>
</Item2>
<Item3>
<PackageName Value="LCL"/>
</Item3>
</Item2>
</RequiredPackages>
<Units Count="14">
<Unit0>
@ -106,12 +103,18 @@
<Unit7>
<Filename Value="snumformatform.pas"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="NumFormatForm"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="sNumFormatForm"/>
</Unit7>
<Unit8>
<Filename Value="ssearchform.pas"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="SearchForm"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="sSearchForm"/>
</Unit8>
<Unit9>
<Filename Value="ssortparamsform.pas"/>

Binary file not shown.

View File

@ -50,6 +50,9 @@ implementation
{$R *.lfm}
uses
fpsPatches;
{ TRowHeightForm }
procedure TRowHeightForm.CbUnitsChange(Sender: TObject);