2014-11-03 15:34:57 +00:00
|
|
|
unit main;
|
|
|
|
|
|
|
|
{$mode objfpc}{$H+}
|
|
|
|
|
|
|
|
interface
|
|
|
|
|
|
|
|
uses
|
|
|
|
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ExtCtrls,
|
2014-11-10 16:51:22 +00:00
|
|
|
StdCtrls, ComCtrls, ActnList, Menus, StdActns,
|
2014-11-10 13:05:28 +00:00
|
|
|
fpspreadsheet, fpspreadsheetctrls, fpspreadsheetgrid, fpsActions;
|
2014-11-03 15:34:57 +00:00
|
|
|
|
|
|
|
type
|
|
|
|
|
|
|
|
{ TForm1 }
|
|
|
|
|
|
|
|
TForm1 = class(TForm)
|
2014-11-10 16:51:22 +00:00
|
|
|
ActionList: TActionList;
|
2014-11-03 15:34:57 +00:00
|
|
|
Button1: TButton;
|
2014-11-10 16:51:22 +00:00
|
|
|
AcFileExit: TFileExit;
|
|
|
|
ImageList: TImageList;
|
2014-11-10 13:05:28 +00:00
|
|
|
MainMenu: TMainMenu;
|
|
|
|
MenuItem1: TMenuItem;
|
2014-11-14 13:48:30 +00:00
|
|
|
MenuItem10: TMenuItem;
|
|
|
|
MenuItem11: TMenuItem;
|
|
|
|
MenuItem12: TMenuItem;
|
|
|
|
MenuItem13: TMenuItem;
|
|
|
|
MenuItem14: TMenuItem;
|
|
|
|
MenuItem15: TMenuItem;
|
|
|
|
MenuItem16: TMenuItem;
|
|
|
|
MenuItem17: TMenuItem;
|
|
|
|
MenuItem18: TMenuItem;
|
|
|
|
MenuItem19: TMenuItem;
|
2014-11-10 13:05:28 +00:00
|
|
|
MenuItem2: TMenuItem;
|
2014-11-14 13:48:30 +00:00
|
|
|
MenuItem20: TMenuItem;
|
|
|
|
MenuItem21: TMenuItem;
|
|
|
|
MenuItem22: TMenuItem;
|
|
|
|
MenuItem23: TMenuItem;
|
|
|
|
MenuItem24: TMenuItem;
|
|
|
|
MenuItem25: TMenuItem;
|
|
|
|
MenuItem26: TMenuItem;
|
|
|
|
MenuItem27: TMenuItem;
|
|
|
|
MenuItem28: TMenuItem;
|
|
|
|
MenuItem29: TMenuItem;
|
2014-11-10 13:05:28 +00:00
|
|
|
MenuItem3: TMenuItem;
|
2014-11-14 13:48:30 +00:00
|
|
|
MenuItem30: TMenuItem;
|
2014-11-15 22:32:51 +00:00
|
|
|
MenuItem31: TMenuItem;
|
|
|
|
MenuItem32: TMenuItem;
|
|
|
|
MenuItem33: TMenuItem;
|
|
|
|
MenuItem34: TMenuItem;
|
|
|
|
MenuItem35: TMenuItem;
|
|
|
|
MenuItem36: TMenuItem;
|
|
|
|
MenuItem37: TMenuItem;
|
|
|
|
MenuItem38: TMenuItem;
|
|
|
|
MenuItem39: TMenuItem;
|
2014-11-10 13:05:28 +00:00
|
|
|
MenuItem4: TMenuItem;
|
2014-11-15 22:32:51 +00:00
|
|
|
MenuItem40: TMenuItem;
|
|
|
|
MenuItem41: TMenuItem;
|
|
|
|
MenuItem42: TMenuItem;
|
|
|
|
MenuItem43: TMenuItem;
|
|
|
|
MenuItem44: TMenuItem;
|
|
|
|
MenuItem45: TMenuItem;
|
|
|
|
MenuItem46: TMenuItem;
|
|
|
|
MenuItem47: TMenuItem;
|
|
|
|
MenuItem48: TMenuItem;
|
2014-11-14 13:48:30 +00:00
|
|
|
MenuItem5: TMenuItem;
|
|
|
|
MenuItem6: TMenuItem;
|
|
|
|
MenuItem7: TMenuItem;
|
|
|
|
MenuItem8: TMenuItem;
|
|
|
|
MenuItem9: TMenuItem;
|
2014-11-10 13:05:28 +00:00
|
|
|
MnuFile: TMenuItem;
|
|
|
|
MnuWorksheet: TMenuItem;
|
|
|
|
MnuAddSheet: TMenuItem;
|
|
|
|
MnuEdit: TMenuItem;
|
2014-11-03 15:34:57 +00:00
|
|
|
OpenDialog: TOpenDialog;
|
|
|
|
OpenDialog1: TOpenDialog;
|
|
|
|
Panel1: TPanel;
|
|
|
|
CellEdit: TsCellEdit;
|
|
|
|
CellIndicator: TsCellIndicator;
|
2014-11-12 22:55:22 +00:00
|
|
|
AcFontBold: TsFontStyleAction;
|
|
|
|
AcFontItalic: TsFontStyleAction;
|
|
|
|
AcVertAlignTop: TsVertAlignmentAction;
|
|
|
|
AcVertAlignCenter: TsVertAlignmentAction;
|
|
|
|
AcVertAlignBottom: TsVertAlignmentAction;
|
|
|
|
AcHorAlignLeft: TsHorAlignmentAction;
|
|
|
|
AcHorAlignCenter: TsHorAlignmentAction;
|
|
|
|
AcHorAlignRight: TsHorAlignmentAction;
|
2014-11-14 13:48:30 +00:00
|
|
|
AcTextRotHor: TsTextRotationAction;
|
|
|
|
AcTextRot90CW: TsTextRotationAction;
|
|
|
|
AcTextRot90CCW: TsTextRotationAction;
|
|
|
|
AcTextRotStacked: TsTextRotationAction;
|
|
|
|
AcWordWrap: TsWordwrapAction;
|
|
|
|
AcNumFormatFixed: TsNumberFormatAction;
|
|
|
|
AcNumFormatFixedTh: TsNumberFormatAction;
|
|
|
|
AcNumFormatPercentage: TsNumberFormatAction;
|
|
|
|
AcNumFormatCurrency: TsNumberFormatAction;
|
|
|
|
AcNumFormatCurrencyRed: TsNumberFormatAction;
|
2014-11-15 22:32:51 +00:00
|
|
|
PuBorders: TPopupMenu;
|
2014-11-14 13:48:30 +00:00
|
|
|
PuTimeFormat: TPopupMenu;
|
|
|
|
PuDateFormat: TPopupMenu;
|
|
|
|
PuCurrencyFormat: TPopupMenu;
|
|
|
|
PuNumFormat: TPopupMenu;
|
|
|
|
AcNumFormatGeneral: TsNumberFormatAction;
|
|
|
|
AcNumFormatExp: TsNumberFormatAction;
|
|
|
|
AcNumFormatDateTime: TsNumberFormatAction;
|
|
|
|
AcNumFormatLongDate: TsNumberFormatAction;
|
|
|
|
AcNumFormatShortDate: TsNumberFormatAction;
|
|
|
|
AcNumFormatLongTime: TsNumberFormatAction;
|
|
|
|
AcNumFormatShortTime: TsNumberFormatAction;
|
|
|
|
AcNumFormatLongTimeAM: TsNumberFormatAction;
|
|
|
|
AcNumFormatShortTimeAM: TsNumberFormatAction;
|
|
|
|
AcNumFormatTimeInterval: TsNumberFormatAction;
|
2014-11-14 15:09:16 +00:00
|
|
|
AcIncDecimals: TsDecimalsAction;
|
|
|
|
AcDecDecimals: TsDecimalsAction;
|
2014-11-14 23:27:49 +00:00
|
|
|
AcCellFont: TsFontAction;
|
|
|
|
AcBackgroundColor: TsBackgroundColorAction;
|
2014-11-15 22:32:51 +00:00
|
|
|
AcCellBorderTop: TsCellBorderAction;
|
|
|
|
AcCellBorderBottom: TsCellBorderAction;
|
|
|
|
AcCellBorderLeft: TsCellBorderAction;
|
|
|
|
AcCellBorderRight: TsCellBorderAction;
|
|
|
|
AcCellBorderInnerHor: TsCellBorderAction;
|
|
|
|
AcCellBorderInnerVert: TsCellBorderAction;
|
|
|
|
AcCellBorderAllHor: TsCellBorderAction;
|
|
|
|
AcCellBorderBottomThick: TsCellBorderAction;
|
|
|
|
AcCellBorderBottomDbl: TsCellBorderAction;
|
|
|
|
AcCellBorderAllOuter: TsCellBorderAction;
|
|
|
|
AcCellBorderNone: TsNoCellBordersAction;
|
|
|
|
AcCellBorderAllOuterThick: TsCellBorderAction;
|
|
|
|
AcCellBorderTopBottomThick: TsCellBorderAction;
|
|
|
|
AcCellBorderTopBottomDbl: TsCellBorderAction;
|
|
|
|
AcCellBorderAll: TsCellBorderAction;
|
|
|
|
AcCellBorderAllVert: TsCellBorderAction;
|
2014-11-12 22:55:22 +00:00
|
|
|
ToolButton11: TToolButton;
|
|
|
|
ToolButton12: TToolButton;
|
|
|
|
ToolButton13: TToolButton;
|
|
|
|
ToolButton14: TToolButton;
|
|
|
|
ToolButton15: TToolButton;
|
|
|
|
ToolButton16: TToolButton;
|
|
|
|
ToolButton17: TToolButton;
|
|
|
|
ToolButton18: TToolButton;
|
|
|
|
ToolButton19: TToolButton;
|
|
|
|
AcFontUnderline: TsFontStyleAction;
|
|
|
|
AcFontStrikeout: TsFontStyleAction;
|
2014-11-03 15:34:57 +00:00
|
|
|
Splitter1: TSplitter;
|
|
|
|
Inspector: TsSpreadsheetInspector;
|
|
|
|
InspectorTabControl: TTabControl;
|
2014-11-12 22:55:22 +00:00
|
|
|
AcAddWorksheet: TsWorksheetAddAction;
|
|
|
|
AcDeleteWorksheet: TsWorksheetDeleteAction;
|
|
|
|
acRenameWorksheet: TsWorksheetRenameAction;
|
2014-11-10 16:51:22 +00:00
|
|
|
ToolBar1: TToolBar;
|
|
|
|
ToolButton1: TToolButton;
|
2014-11-12 22:55:22 +00:00
|
|
|
ToolButton10: TToolButton;
|
2014-11-10 16:51:22 +00:00
|
|
|
ToolButton2: TToolButton;
|
2014-11-14 13:48:30 +00:00
|
|
|
ToolButton20: TToolButton;
|
|
|
|
ToolButton21: TToolButton;
|
|
|
|
ToolButton22: TToolButton;
|
|
|
|
ToolButton23: TToolButton;
|
|
|
|
ToolButton24: TToolButton;
|
|
|
|
ToolButton25: TToolButton;
|
2014-11-14 15:09:16 +00:00
|
|
|
ToolButton26: TToolButton;
|
|
|
|
ToolButton27: TToolButton;
|
|
|
|
ToolButton28: TToolButton;
|
2014-11-14 23:27:49 +00:00
|
|
|
ToolButton29: TToolButton;
|
2014-11-10 16:51:22 +00:00
|
|
|
ToolButton3: TToolButton;
|
2014-11-14 23:27:49 +00:00
|
|
|
ToolButton30: TToolButton;
|
|
|
|
ToolButton31: TToolButton;
|
2014-11-15 22:32:51 +00:00
|
|
|
TbBorders: TToolButton;
|
2014-11-10 16:51:22 +00:00
|
|
|
ToolButton4: TToolButton;
|
|
|
|
ToolButton5: TToolButton;
|
2014-11-12 22:55:22 +00:00
|
|
|
ToolButton6: TToolButton;
|
|
|
|
ToolButton7: TToolButton;
|
|
|
|
ToolButton8: TToolButton;
|
|
|
|
ToolButton9: TToolButton;
|
2014-11-03 15:34:57 +00:00
|
|
|
WorkbookSource: TsWorkbookSource;
|
|
|
|
WorkbookTabControl: TsWorkbookTabControl;
|
|
|
|
WorksheetGrid: TsWorksheetGrid;
|
|
|
|
procedure Button1Click(Sender: TObject);
|
|
|
|
procedure InspectorTabControlChange(Sender: TObject);
|
|
|
|
private
|
|
|
|
{ private declarations }
|
|
|
|
public
|
|
|
|
{ public declarations }
|
|
|
|
end;
|
|
|
|
|
|
|
|
var
|
|
|
|
Form1: TForm1;
|
|
|
|
|
|
|
|
implementation
|
|
|
|
|
|
|
|
{$R *.lfm}
|
|
|
|
|
|
|
|
{ TForm1 }
|
|
|
|
|
|
|
|
procedure TForm1.Button1Click(Sender: TObject);
|
|
|
|
begin
|
|
|
|
if OpenDialog.Execute then begin
|
|
|
|
WorkbookSource.AutodetectFormat := false;
|
|
|
|
case OpenDialog.FilterIndex of
|
|
|
|
1: WorkbookSource.AutoDetectFormat := true; // All spreadsheet files
|
|
|
|
2: WorkbookSource.AutoDetectFormat := true; // All Excel files
|
|
|
|
3: WorkbookSource.FileFormat := sfOOXML; // Excel 2007+
|
|
|
|
4: WorkbookSource.FileFormat := sfExcel8; // Excel 97-2003
|
|
|
|
5: WorkbookSource.FileFormat := sfExcel5; // Excel 5.0
|
|
|
|
6: WorkbookSource.FileFormat := sfExcel2; // Excel 2.1
|
|
|
|
7: WorkbookSource.FileFormat := sfOpenDocument; // Open/LibreOffice
|
|
|
|
8: WorkbookSource.FileFormat := sfCSV; // Text files
|
|
|
|
end;
|
|
|
|
WorkbookSource.FileName := OpenDialog.FileName; // this loads the file
|
|
|
|
end;
|
|
|
|
end;
|
|
|
|
|
|
|
|
procedure TForm1.InspectorTabControlChange(Sender: TObject);
|
|
|
|
begin
|
|
|
|
Inspector.Mode := TsInspectorMode(InspectorTabControl.TabIndex);
|
|
|
|
end;
|
|
|
|
|
|
|
|
end.
|
|
|
|
|