Tecsitel_FactuGES2/Source/Modulos/Contactos/Views/uEditorElegirProveedores.pas
2009-07-09 11:21:22 +00:00

133 lines
4.1 KiB
ObjectPascal

unit uEditorElegirProveedores;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uEditorProveedores, DB, uDADataTable, Menus, JvAppStorage,
JvAppRegistryStorage, JvComponentBase, JvFormPlacement, ImgList, PngImageList,
StdActns, ActnList, uCustomView, uViewBase, uViewGridBase, uViewGrid,
uViewContactos, uViewProveedores, ComCtrls, TB2ExtItems, TBXExtItems, TBX,
TB2Item, TB2Dock, TB2Toolbar, pngimage, ExtCtrls, JvExControls, JvComponent,
JvNavigationPane, uIEditorElegirProveedores, uViewBarraSeleccion,
StdCtrls, uBizContactos, TBXStatusBars, JvExComCtrls, JvStatusBar, JSDialog,
uDAInterfaces;
type
TfEditorElegirProveedores = class(TfEditorProveedores, IEditorElegirProveedores)
frViewBarraSeleccion1: TfrViewBarraSeleccion;
lblTitle: TLabel;
lblComments: TLabel;
EditorSeleccionActionList: TActionList;
actBuscar2: TAction;
actQuitarFiltro2: TAction;
actAnchoAuto2: TAction;
procedure frViewBarraSeleccion1actSeleccionarUpdate(Sender: TObject);
procedure frViewBarraSeleccion1actCancelarExecute(Sender: TObject);
procedure frViewBarraSeleccion1actSeleccionarExecute(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure actQuitarFiltro2Execute(Sender: TObject);
procedure actAnchoAuto2Execute(Sender: TObject);
protected
procedure SetMultiSelect (AValue : Boolean);
function GetMultiSelect : Boolean;
function GetContactosSeleccionados: IBizContacto;
procedure SetViewGrid(const Value: IViewGridBase); override;
procedure SetMensaje (const AValue: String);
function GetMensaje: String;
public
property Mensaje : String read GetMensaje write SetMensaje;
property ContactosSeleccionados: IBizContacto read GetContactosSeleccionados;
property MultiSelect : Boolean read GetMultiSelect write SetMultiSelect;
end;
implementation
uses
uEditorGridBase, cxGridCustomTableView, uIntegerListUtils, uEditorContactos,
uGridStatusUtils, uEditorBase, cxControls, uDBSelectionListUtils;
{$R *.dfm}
{ TfEditorElegirProveedores }
procedure TfEditorElegirProveedores.actAnchoAuto2Execute(Sender: TObject);
begin
inherited;
actAnchoAuto.Execute;
end;
procedure TfEditorElegirProveedores.actQuitarFiltro2Execute(Sender: TObject);
begin
inherited;
actQuitarFiltro.Execute;
end;
procedure TfEditorElegirProveedores.FormShow(Sender: TObject);
begin
inherited;
EditorActionList.State := asSuspended;
frViewProveedores1.cxViewGridPopupMenu.PopupMenus.Items[0].HitTypes := [];
end;
procedure TfEditorElegirProveedores.frViewBarraSeleccion1actCancelarExecute(
Sender: TObject);
begin
inherited;
Close;
end;
procedure TfEditorElegirProveedores.frViewBarraSeleccion1actSeleccionarExecute(
Sender: TObject);
begin
inherited;
ModalResult := mrOk;
end;
procedure TfEditorElegirProveedores.frViewBarraSeleccion1actSeleccionarUpdate(
Sender: TObject);
begin
inherited;
(Sender as TAction).Enabled := (ViewGrid._FocusedView.Controller.SelectedRowCount > 0)
end;
function TfEditorElegirProveedores.GetContactosSeleccionados: IBizContacto;
begin
ShowHourglassCursor;
try
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Contactos as ISeleccionable).SelectedRecords);
// En Contactos.SelectedRecords tengo los ID de las filas seleccionadas del grid
Result := Controller.ExtraerSeleccionados(Contactos);
finally
HideHourglassCursor;
end;
end;
function TfEditorElegirProveedores.GetMensaje: String;
begin
Result := lblComments.Caption;
end;
function TfEditorElegirProveedores.GetMultiSelect: Boolean;
begin
Result := ViewGrid.MultiSelect;
end;
procedure TfEditorElegirProveedores.SetMensaje(const AValue: String);
begin
lblComments.Caption := AValue;
end;
procedure TfEditorElegirProveedores.SetMultiSelect(AValue: Boolean);
begin
ViewGrid.MultiSelect := AValue;
end;
procedure TfEditorElegirProveedores.SetViewGrid(const Value: IViewGridBase);
begin
inherited;
ViewGrid.OnDblClick := frViewBarraSeleccion1.actSeleccionar.OnExecute;
end;
end.