mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-05-05 17:13:14 +02:00
129 lines
2.5 KiB
ObjectPascal
129 lines
2.5 KiB
ObjectPascal
unit frmmain;
|
|
|
|
{$mode objfpc}{$H+}
|
|
|
|
interface
|
|
|
|
uses
|
|
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, ActnList,
|
|
Menus, ComCtrls, ExtCtrls, DbCtrls, dbf, db, DBGrids, fpdataexporter, fpstdexports;
|
|
|
|
type
|
|
|
|
{ TMainForm }
|
|
|
|
TMainForm = class(TForm)
|
|
AExport: TAction;
|
|
AQuit: TAction;
|
|
AOpen: TAction;
|
|
ANew: TAction;
|
|
ALMain: TActionList;
|
|
DSData: TDatasource;
|
|
DBFData: TDbf;
|
|
Exporter: TFPDataExporter;
|
|
GData: TDBGrid;
|
|
MIExport: TMenuItem;
|
|
NBData: TDBNavigator;
|
|
ILMain: TImageList;
|
|
MMMain: TMainMenu;
|
|
MIQuit: TMenuItem;
|
|
MINew: TMenuItem;
|
|
MIOpen: TMenuItem;
|
|
MISep: TMenuItem;
|
|
MFile: TMenuItem;
|
|
ODDBF: TOpenDialog;
|
|
PButtons: TPanel;
|
|
SDExport: TSaveDialog;
|
|
SDDBF: TSaveDialog;
|
|
StandardExportFormats1: TStandardExportFormats;
|
|
TBMain: TToolBar;
|
|
ToolButton1: TToolButton;
|
|
TBRTFExport: TToolButton;
|
|
ToolButton2: TToolButton;
|
|
ToolButton3: TToolButton;
|
|
procedure AExportExecute(Sender: TObject);
|
|
procedure ANewExecute(Sender: TObject);
|
|
procedure AOpenExecute(Sender: TObject);
|
|
procedure AQuitExecute(Sender: TObject);
|
|
procedure FormCreate(Sender: TObject);
|
|
procedure HaveData(Sender: TObject);
|
|
private
|
|
{ private declarations }
|
|
FDesignCaption: string;
|
|
procedure CreateNewDataset(AFileName: String);
|
|
procedure OpenDataset(AFileName: String);
|
|
public
|
|
{ public declarations }
|
|
end;
|
|
|
|
var
|
|
MainForm: TMainForm;
|
|
|
|
implementation
|
|
|
|
{$R frmmain.lfm}
|
|
|
|
uses gendata;
|
|
|
|
{ TMainForm }
|
|
|
|
|
|
procedure TMainForm.AOpenExecute(Sender: TObject);
|
|
begin
|
|
If ODDBF.Execute then
|
|
OpenDataset(ODDBF.FileName);
|
|
end;
|
|
|
|
procedure TMainForm.AQuitExecute(Sender: TObject);
|
|
begin
|
|
Close;
|
|
end;
|
|
|
|
procedure TMainForm.ANewExecute(Sender: TObject);
|
|
begin
|
|
if SDDBF.Execute then
|
|
begin
|
|
CreateNewDataset(SDDBF.FileName);
|
|
OpenDataset(SDDBF.FileName);
|
|
end;
|
|
end;
|
|
|
|
procedure TMainForm.AExportExecute(Sender: TObject);
|
|
begin
|
|
Exporter.Execute;
|
|
end;
|
|
|
|
procedure TMainForm.CreateNewDataset(AFileName : String);
|
|
|
|
begin
|
|
With TDBFGenerator.Create do
|
|
try
|
|
OutputFile:=AFileName;
|
|
GenerateData;
|
|
finally
|
|
Free;
|
|
end;
|
|
end;
|
|
|
|
procedure TMainForm.FormCreate(Sender: TObject);
|
|
begin
|
|
FDesignCaption:=Caption;
|
|
end;
|
|
|
|
procedure TMainForm.HaveData(Sender: TObject);
|
|
begin
|
|
(Sender as TAction).Enabled:=DBFData.Active and Not (DBFData.EOF and DBFDATA.BOF);
|
|
end;
|
|
|
|
procedure TMainForm.OpenDataset(AFileName : String);
|
|
|
|
begin
|
|
DBFData.Close;
|
|
DBFData.TableName:=AFileName;
|
|
DBFData.Open;
|
|
Caption:=Format('%s (%s)',[FDesignCaption,AFileName]);
|
|
end;
|
|
|
|
end.
|
|
|