unit uPluginMontajes;

interface

uses
  uModuleController, uInterfaces, uHostManager, Menus, Classes, ActnList,
  ImgList, Controls, PngImageList;

type
  IMCMontajes = interface(IInterface)
  ['{ED6B467B-B6DD-4E2E-8E54-BCEB8FD0A012}']
  end;

  TPluginMontajes = class(TModuleController, IMCMontajes)
    actMontajes: TAction;
    ExtraImages: TPngImageList;
    LargeImages: TPngImageList;
    MainMenu: TMainMenu;
    ModuleActionList: TActionList;
    SmallImages: TPngImageList;
    procedure actMontajesExecute(Sender: TObject);
  public
    constructor Create(AOwner: TComponent); override;
    destructor Destroy; override;
  end;

implementation

{$R *.dfm}

uses
  Forms, Dialogs, SysUtils,
  uMontajesController, uBizMontajes, uMontajesViewRegister;

function GetModule : TModuleController;
begin
  Result := TPluginMontajes.Create(NIL);
end;

exports
  GetModule name GET_MODULE_FUNC;

procedure TPluginMontajes.actMontajesExecute(Sender: TObject);
var
  AMontajesController : IMontajesController;
  AMontajes : IBizMontaje;

begin
  AMontajesController := TMontajesController.Create;
  AMontajes := (AMontajesController.BuscarTodos as IBizMontaje);
  AMontajesController.VerTodos(AMontajes);
end;

constructor TPluginMontajes.Create(AOwner: TComponent);
begin
  inherited;
  uMontajesViewRegister.RegisterViews;
end;

destructor TPluginMontajes.Destroy;
begin
  uMontajesViewRegister.UnregisterViews;
  inherited;
end;

initialization
  RegisterModuleClass(TPluginMontajes);

finalization
  UnRegisterModuleClass(TPluginMontajes);

end.
