unit TorpedoDeLaPradera;
interface
uses Windows, Messages, SysUtils, Classes;
type
TTipoJander = ( NoPuedor, Comorl, Fistro);
TPropiedadJander = class(TPersistent)
private
FGrijander: String;
FCobarde: Boolean;
FTipoJander: TTipoJander;
FOwner: TPersistent;
protected
function GetOwner: TPersistent; override;
public
constructor Create(AOwner: TPersistent);
published
property Grijander: String read FGrijander write FGrijander;
property Cobarde: Boolean read FCobarde write FCobarde;
property TipoJander: TTipoJander read FTipoJander write FTipoJander default NoPuedor;
end;
TTorpedoDeLaPradera = class(TComponent)
private
FJander: TPropiedadJander;
protected
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
published
property Jander: TPropiedadJander read FJander write FJander;
end;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents('ClubDelphi', [TTorpedoDeLaPradera]);
end;
constructor TPropiedadJander.Create(AOwner: TPersistent);
begin
inherited Create;
FGrijander := 'Jaaarl';
FTipoJander := NoPuedor;
FOwner := AOwner;
end;
function TPropiedadJander.GetOwner: TPersistent;
begin
Result := FOwner;
end;
constructor TTorpedoDeLaPradera.Create(AOwner: TComponent);
begin
inherited;
FJander:= TPropiedadJander.Create(Self);
end;
destructor TTorpedoDeLaPradera.Destroy;
begin
if Assigned(FJander) then FJander.Free;
inherited;
end;
end.