unit uViewPerfilUsuario;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, uViewBase, uUsuariosController, cxGraphics, ImgList, PngImageList,
  dxLayoutControl, cxCurrencyEdit, uCustomView, cxControls, DB, uDAInterfaces,
  uDADataTable, ActnList, cxCheckBox, cxDBEdit, cxMaskEdit, cxSpinEdit,
  cxHyperLinkEdit, cxContainer, cxEdit, cxTextEdit, Buttons, PngSpeedButton,
  uBizUsuarios, cxDropDownEdit;

type
  IViewPerfilUsuario = interface(IViewBase)
  ['{555B4B64-BE32-4036-B741-DCC7AD80D7B9}']
    function GetController : IUsuariosController;
    procedure SetController (const Value : IUsuariosController);
    property Controller : IUsuariosController read GetController write SetController;

    function GetPerfilUsuario: IBizPerfilUsuario;
    procedure SetPerfilUsuario(const Value: IBizPerfilUsuario);
    property PerfilUsuario: IBizPerfilUsuario read GetPerfilUsuario write SetPerfilUsuario;
  end;

  TfrViewPerfilUsuario = class(TfrViewBase, IViewPerfilUsuario)
    dsUsuario: TDADataSource;
    dxLayoutControlArticulo: TdxLayoutControl;
    eNombre: TcxDBTextEdit;
    dxLayoutGroup1: TdxLayoutGroup;
    dxLayoutGroup2: TdxLayoutGroup;
    dxLayoutControlArticuloItem3: TdxLayoutItem;
    dxLayoutControlArticuloGroup3: TdxLayoutGroup;
  protected
    FController: IUsuariosController;
    FPerfilUsuario : IBizPerfilUsuario;

    function GetController : IUsuariosController;
    procedure SetController (const Value : IUsuariosController);

    function GetPerfilUsuario: IBizPerfilUsuario;
    procedure SetPerfilUsuario(const Value: IBizPerfilUsuario);
  public
    property PerfilUsuario: IBizPerfilUsuario read GetPerfilUsuario write SetPerfilUsuario;
    property Controller : IUsuariosController read GetController write SetController;
  end;

implementation

{$R *.dfm}


{ TfrViewUsuario }

function TfrViewPerfilUsuario.GetController: IUsuariosController;
begin
  Result := FController;
end;

function TfrViewPerfilUsuario.GetPerfilUsuario: IBizPerfilUsuario;
begin
  Result := FPerfilUsuario;
end;

procedure TfrViewPerfilUsuario.SetController(const Value: IUsuariosController);
begin
  FController := Value;
end;

procedure TfrViewPerfilUsuario.SetPerfilUsuario(const Value: IBizPerfilUsuario);
begin
  FPerfilUsuario := Value;

  if Assigned(FPerfilUsuario) then
    dsUsuario.DataTable := FPerfilUsuario.DataTable
  else begin
    dsUsuario.DataTable := NIL;
    FPerfilUsuario := NIL;
  end;
end;


end.
