
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6781 8e941d3f-bd1b-0410-a28a-d453659cc2b4
57 lines
1.5 KiB
ObjectPascal
57 lines
1.5 KiB
ObjectPascal
unit uMySubComponent;
|
|
|
|
{$mode objfpc}{$H+}
|
|
|
|
interface
|
|
|
|
uses
|
|
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs;
|
|
|
|
type
|
|
TMySubComponent = class(TComponent)
|
|
private
|
|
{ Private declarations }
|
|
fSubproperty1,fSubproperty2,fSubproperty3,fSubproperty4:String;
|
|
protected
|
|
{ Protected declarations }
|
|
public
|
|
{ Public declarations }
|
|
constructor Create(AOwner: TComponent); override; // Constructor must be public
|
|
destructor Destroy; override; // Destructor must be public
|
|
procedure DoSomething;
|
|
published
|
|
{ Published declarations }
|
|
property Subproperty1:String read fSubproperty1 write fSubproperty1;
|
|
property Subproperty2:String read fSubproperty2 write fSubproperty2;
|
|
property Subproperty3:String read fSubproperty3 write fSubproperty3;
|
|
property Subproperty4:String read fSubproperty4 write fSubproperty4;
|
|
end;
|
|
|
|
procedure Register;
|
|
|
|
implementation
|
|
procedure TMySubComponent.DoSomething;
|
|
begin
|
|
ShowMessageFmt('TMySubComponent.DoSomething called: Subproperty1=%s',[fSubproperty1]);
|
|
end;
|
|
|
|
Constructor TMySubComponent.Create(AOwner:TComponent);
|
|
begin
|
|
inherited Create(AOwner);
|
|
fSubproperty1:='One';
|
|
fSubproperty2:='Two';
|
|
end;
|
|
destructor TMySubComponent.Destroy;
|
|
begin
|
|
// Clean-up code goes here
|
|
// FreeandNil any user-created objects here
|
|
inherited Destroy;
|
|
end;
|
|
procedure Register;
|
|
begin
|
|
{$I umysubcomponent_icon.lrs}
|
|
RegisterComponents('Additional',[TMySubComponent]);
|
|
end;
|
|
|
|
end.
|