{
===============================================================================
  Copyright (©) 2006. Rodax Software.
===============================================================================
  Los contenidos de este fichero son propiedad de Rodax Software titular del
  copyright. Este fichero sólo podrá ser copiado, distribuido y utilizado,
  en su totalidad o en parte, con el permiso escrito de Rodax Software, o de
  acuerdo con los términos y condiciones establecidas en el acuerdo/contrato
  bajo el que se suministra.
  -----------------------------------------------------------------------------
  Web:  www.rodax-software.com
===============================================================================
  Fecha primera versión: 22-05-2006
  Versión actual: 1.0.0
  Fecha versión actual: 22-05-2006
===============================================================================
  Modificaciones:

    Fecha         Comentarios
    ---------------------------------------------------------------------------
===============================================================================
}

unit uViewProyectosObra;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, uViewGrid, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
  cxDataStorage, cxEdit, DB, cxDBData, dxPSGlbl, dxPSUtl, dxPSEngn,
  dxPrnPg, dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider, dxPSFillPatterns,
  dxPSEdgePatterns, dxPSCore, dxPScxCommon, dxPScxGridLnk, ActnList,
  uDADataTable, cxGridLevel, cxClasses, cxControls, cxGridCustomView,
  cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid,
  ComCtrls, ToolWin, ExtCtrls, JvExControls, JvComponent, JvNavigationPane,
  ImgList, PngImageList, Menus, cxImageComboBox;

type
  IViewProyectosObra = interface(IViewGrid)
  ['{471CFAEF-CCB6-400F-B6BD-E2CF6EE9CC10}']
  end;

  TfrViewProyectosObra = class(TfrViewGrid, IViewProyectosObra)
    ToolBar1: TToolBar;
    ToolButton1: TToolButton;
    ToolButton2: TToolButton;
    ToolButton4: TToolButton;
    actAnadir: TAction;
    actModificar: TAction;
    actEliminar: TAction;
    cxGridViewRecID: TcxGridDBColumn;
    cxGridViewCODIGO: TcxGridDBColumn;
    cxGridViewCODIGOOBRA: TcxGridDBColumn;
    cxGridViewDESCRIPCION: TcxGridDBColumn;
    cxGridViewTIPO: TcxGridDBColumn;
    cxGridViewTERMINADO: TcxGridDBColumn;
    JvNavPanelHeader: TJvNavPanelHeader;
    Image1: TImage;
    PngImageList: TPngImageList;
    cxStyleRepository: TcxStyleRepository;
    cxStyleFinalizado: TcxStyle;
    cxStylePendiente: TcxStyle;
    MenuProyectos: TPopupMenu;
    MenuItem1: TMenuItem;
    MenuItem2: TMenuItem;
    MenuItem3: TMenuItem;
    ToolButton3: TToolButton;
    ToolButton5: TToolButton;
    ToolButton6: TToolButton;
    actEliminarTodo: TAction;
    actDuplicar: TAction;
    procedure cxGridViewStylesGetContentStyle(Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
      AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);

    procedure actModificarUpdate(Sender: TObject);
    procedure actEliminarUpdate(Sender: TObject);
    procedure actEliminarTodoUpdate(Sender: TObject);
    procedure actDuplicarUpdate(Sender: TObject);
  end;

var
  frViewProyectosObra: TfrViewProyectosObra;

implementation

uses uDataModuleObras, schObrasClient_Intf, uBizObra;

{$R *.dfm}

procedure TfrViewProyectosObra.actModificarUpdate(Sender: TObject);
begin
  inherited;
  (Sender as TAction).Enabled := (cxGridView.DataController.RecordCount > 0);
end;

procedure TfrViewProyectosObra.actEliminarUpdate(Sender: TObject);
begin
  inherited;
  (Sender as TAction).Enabled := (cxGridView.DataController.RecordCount > 0);
end;

procedure TfrViewProyectosObra.cxGridViewStylesGetContentStyle(
  Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
  AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);
var
  IndiceCol : Integer;
begin
  inherited;
  if Assigned(ARecord) then
  begin
    IndiceCol := (Sender as TcxGridDBTableView).GetColumnByFieldName(fld_ProyectosObraTERMINADO).Index;
    if StrToInt(ARecord.Values[IndiceCol]) = CTE_NO then
       AStyle := cxStylePendiente
    else
       AStyle := cxStyleFinalizado;
  end;
end;

procedure TfrViewProyectosObra.actEliminarTodoUpdate(Sender: TObject);
begin
  inherited;
  (Sender as TAction).Enabled := (cxGridView.DataController.RecordCount > 0);
end;

procedure TfrViewProyectosObra.actDuplicarUpdate(Sender: TObject);
begin
  inherited;
  (Sender as TAction).Enabled := (cxGridView.DataController.RecordCount > 0);
end;

end.
