unit [!UnitName];

interface

uses
  System.Drawing, System.Collections, System.ComponentModel;

type
[!if=(AncestorName, "<NONE>")]
  T[!ClassName] = class(System.ComponentModel.Component)
[!else]
  T[!ClassName] = class([!AncestorName])
[!endif]
  {$REGION 'Designer Managed Code'}
  strict private
    /// <summary>
    /// Required designer variable.
    /// </summary>
    Components: System.ComponentModel.Container;
    /// <summary>
    /// Required method for Designer support - do not modify
    /// the contents of this method with the code editor.
    /// </summary>
    procedure InitializeComponent;
  {$ENDREGION}
  strict protected
    /// <summary>
    /// Clean up any resources being used.
    /// </summary>
    procedure Dispose(Disposing: Boolean); override;
  private
    { Private Declarations }
  public
    constructor Create; overload;
    constructor Create(Container: System.ComponentModel.IContainer); overload;
  end;

implementation

uses
  System.Globalization;

{$REGION 'Windows Form Designer generated code'}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
procedure T[!ClassName].InitializeComponent;
begin
  Self.Components := System.ComponentModel.Container.Create;
end;
{$ENDREGION}

constructor T[!ClassName].Create;
begin
  inherited Create;
  //
  // Required for Windows Form Designer support
  //
  InitializeComponent;
  //
  // TODO: Add any constructor code after InitializeComponent call
  //
end;

constructor T[!ClassName].Create(Container: System.ComponentModel.IContainer);
begin
  inherited Create;
  //
  // Required for Windows Form Designer support
  //
  Container.Add(Self);
  InitializeComponent;
  //
  // TODO: Add any constructor code after InitializeComponent call
  //
end;

procedure T[!ClassName].Dispose(Disposing: Boolean);
begin
  if Disposing then
  begin
    if Components <> nil then
      Components.Dispose();
  end;
  inherited Dispose(Disposing);
end;

end.
