unit uViewEjercicios;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, uViewGrid, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
  cxDataStorage, cxEdit, DB, cxDBData, uDADataTable, cxGridLevel,
  cxClasses, cxControls, cxGridCustomView, cxGridCustomTableView,
  cxGridTableView, cxGridDBTableView, cxGrid, uBizEjercicios, ActnList, Menus,
  cxGridBandedTableView, cxGridDBBandedTableView, JvComponent,
  JvFormAutoSize, PngImageList, ImgList, dxPSGlbl, dxPSUtl, dxPSEngn,
  dxPrnPg, dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider, dxPSFillPatterns,
  dxPSEdgePatterns, cxIntlPrintSys3, dxPSCore, dxPScxCommon, 
  cxGridCustomPopupMenu, cxGridPopupMenu, uViewFiltroBase, TB2Item, TBX,
  TB2Toolbar, TBXDkPanels, TB2Dock, dxPgsDlg, uDAInterfaces, cxCalendar,
  cxImageComboBox, dxPScxGrid6Lnk;

type
  IViewEjercicios = interface(IViewGrid)
    ['{E6798DF7-011C-40EC-B368-160C48697445}']
    function GetEjercicios: IBizEjercicio;
    procedure SetEjercicios(const Value: IBizEjercicio);
    property Ejercicios: IBizEjercicio read GetEjercicios write SetEjercicios;
  end;

  TfrViewEjercicios = class(TfrViewGrid, IViewEjercicios)
    cxGridViewFECHA_INICIO: TcxGridDBColumn;
    cxGridViewNOMBRE: TcxGridDBColumn;
    cxGridViewFECHA_FIN: TcxGridDBColumn;
    cxGridViewID: TcxGridDBColumn;
    PngImageList: TPngImageList;
    cxGridViewESTADO: TcxGridDBColumn;
    cxGridViewACTIVO: TcxGridDBColumn;
    procedure cxGridViewIDCustomDrawCell(
      Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
      AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
  protected
    FEjercicios: IBizEjercicio;
    function GetEjercicios: IBizEjercicio; virtual;
    procedure SetEjercicios(const Value: IBizEjercicio); virtual;
  public
    property Ejercicios: IBizEjercicio read GetEjercicios write SetEjercicios;
  end;

implementation

uses uDataModuleEjercicios;


{$R *.dfm}

{ TfrViewEjercicios }

{
******************************* TfrViewEjercicios *******************************
}
function TfrViewEjercicios.GetEjercicios: IBizEjercicio;
begin
  Result := FEjercicios;
end;

procedure TfrViewEjercicios.SetEjercicios(const Value: IBizEjercicio);
begin
  FEjercicios := Value;
  if Assigned(FEjercicios) then
    dsDataSource.DataTable := FEjercicios.DataTable;
end;


procedure TfrViewEjercicios.cxGridViewIDCustomDrawCell(
  Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
  AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
var
  R : TRect;
begin
  inherited;
  R := AViewInfo.ContentBounds;
  ACanvas.FillRect(R);
  ACanvas.DrawImage(PngImageList, R.Left, R.Top, 1);
  ADone := True;
end;

end.
