lazarus/components/googleapis/demo/discovery/frmgenoptions.pp
michael 6fc243643c Google APIs on component palette
git-svn-id: trunk@48961 -
2015-05-07 20:41:16 +00:00

107 lines
2.3 KiB
ObjectPascal

unit frmgenoptions;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
ButtonPanel, EditBtn;
type
{ TGenCodeFormOptions }
TGenCodeFormOptions = class(TForm)
ButtonPanel1: TButtonPanel;
CBView: TCheckBox;
EBaseClass: TEdit;
EUnitName: TEdit;
EExtraUnits: TEdit;
EPrefix: TEdit;
EFileName: TFileNameEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
LFileName: TLabel;
procedure EUnitNameEditingDone(Sender: TObject);
private
function GetB: Boolean;
function GetS(AIndex: Integer): String;
procedure SetB(AValue: Boolean);
procedure SetS(AIndex: Integer; AValue: String);
{ private declarations }
public
{ public declarations }
Property FileName : String index 0 read GetS Write SetS;
Property UnitName : String index 1 read GetS Write SetS;
Property ExtraUnits : String index 2 read GetS Write SetS;
Property Prefix : String index 3 read GetS Write SetS;
Property BaseClass : String index 4 read GetS Write SetS;
Property DoPreview : Boolean Read GetB Write SetB;
end;
var
GenCodeFormOptions: TGenCodeFormOptions;
implementation
{$R *.lfm}
{ TGenCodeFormOptions }
procedure TGenCodeFormOptions.EUnitNameEditingDone(Sender: TObject);
Var
E,FN : String;
begin
E:=ExtractFileExt(EFileName.FileName);
if E='' then
E:=EFileName.DefaultExt;
FN:=ExtractFilePath(EFileName.FileName);
if FN='' then
FN:=IncludeTrailingPathDelimiter(Application.Location);
FN:=FN+EUnitName.Text+E;
EFileName.FileName:=FN;
end;
function TGenCodeFormOptions.GetB: Boolean;
begin
Result:=CBView.Checked;
end;
function TGenCodeFormOptions.GetS(AIndex: Integer): String;
begin
Case AIndex of
0 : Result:=EFileName.Text;
1 : Result:=EUnitName.Text;
2 : Result:=EExtraUnits.Text;
3 : Result:=EPRefix.Text;
4 : Result:=EBaseClass.Text;
end;
end;
procedure TGenCodeFormOptions.SetB(AValue: Boolean);
begin
CBView.Checked:=AValue
end;
procedure TGenCodeFormOptions.SetS(AIndex: Integer; AValue: String);
begin
Case AIndex of
0 : EFileName.Text:=Avalue;
1 : begin
EUnitName.Text:=AValue;
EUnitNameEditingDone(EUnitName);
end;
2 : EExtraUnits.Text:=AValue;
3 : EPRefix.Text:=AValue;
4 : EBaseClass.Text:=AValue;
end;
end;
end.