unit uVirtObj;

//////////////////////////////////////
///  Lina Virtual Object Unit      ///
///  ****************************  ///
///  (c) 2014 Dennis Göhlert a.o.  ///
//////////////////////////////////////

interface

uses
  { Standard-Units }
  SysUtils, Classes,
  { Andere Package-Units }
  uBase;

type
  { Hauptklassen }

  { VirtualObject }
  TVirtualObject = class

  end;

  TVirtualObjects = array of TVirtualObject;

  { VirtualMethod }
  TVirtualMethod = class

  end;

  TVirtualMethods = array of TVirtualMethod;

  { VirtualLirary }
  TVirtualLibray = class

  end;

  TVirtualLibraries = array of TVirtualLibray;

  { VirtualClass }
  TVirtualClass = class

  end;

  TVirtualClasses = array of TVirtualClass;

  { VirtualProgram }
  TVirtualProgram = class(TComponent)
  private
    { Private-Deklarationen }
    FObjects: TVirtualObjects;
    FAbout: TComponentAbout;
  public
    { Public-Deklarationen }
    constructor Create(AOwner: TComponent); override;
    destructor Destroy; override;
  published
    { Published-Deklarationen }
   // property Objects [Index: Integer]: TVirtualObject read FObjects write FObjects;
    { Meta-Daten }
    property About: TComponentAbout read FAbout;
  end;

  procedure Register;

const
  { Meta-Daten }
  VirtualProgramComponent_Name = 'ScriptManager';
  VirtualProgramComponent_Version = 1.0;
  VirtualProgramComponent_Copyright = 'Copyright © 2014';
  VirtualProgramComponent_Author = 'Dennis Göhlert a.o.';

implementation

procedure Register;
begin
  RegisterComponents(ComponentsPage,[TVirtualProgram]);
end;

constructor TVirtualProgram.Create(AOwner: TComponent);
begin
  inherited;
  //...
end;

destructor TVirtualProgram.Destroy;
begin
  //...
  inherited;
end;

end.
