- Repaso general git-svn-id: https://192.168.0.254/svn/Proyectos.Varela_PuntosVenta/trunk@117 1c943782-d109-9647-9548-93b3ac332352
219 lines
6.0 KiB
ObjectPascal
219 lines
6.0 KiB
ObjectPascal
{*******************************************************}
|
|
{ }
|
|
{ Administración de puntos de venta }
|
|
{ }
|
|
{ Copyright (C) 2006 Rodax Software S.L. }
|
|
{ }
|
|
{*******************************************************}
|
|
|
|
unit uEditorGridBase;
|
|
|
|
interface
|
|
|
|
uses
|
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
Dialogs, uEditorBase, ToolWin, ComCtrls, JvExControls, JvComponent,
|
|
JvNavigationPane, ActnList, TB2Dock, TB2Toolbar, TBX, TB2Item,
|
|
ImgList, PngImageList, StdActns, TB2ExtItems, TBXExtItems, uViewGridBase,
|
|
uEditorDBBase, DB, uDADataTable, Menus, JvFormAutoSize,
|
|
uDAScriptingProvider, uDACDSDataTable, AppEvnts, JvAppStorage,
|
|
JvAppRegistryStorage, JvFormPlacement, pngimage, ExtCtrls,
|
|
JvComponentBase, uDAInterfaces;
|
|
|
|
type
|
|
IEditorGridBase = interface(IEditorDBBase)
|
|
['{CB8CDE00-B225-4A1D-9A5C-EC6FBE2C854B}']
|
|
end;
|
|
|
|
TfEditorGridBase = class(TfEditorDBBase, IEditorGridBase)
|
|
tbxEditFiltro: TTBXEditItem;
|
|
tbxFiltro: TTBXToolbar;
|
|
TBXItem7: TTBXItem;
|
|
GridPopupMenu: TPopupMenu;
|
|
Modificar1: TMenuItem;
|
|
Eliminar1: TMenuItem;
|
|
N1: TMenuItem;
|
|
Nuevo1: TMenuItem;
|
|
TBXLabelItem1: TTBXLabelItem;
|
|
actQuitarFiltro: TAction;
|
|
N2: TMenuItem;
|
|
Previsualizar1: TMenuItem;
|
|
Imprimir1: TMenuItem;
|
|
TBXSeparatorItem14: TTBXSeparatorItem;
|
|
TBXItem33: TTBXItem;
|
|
actDuplicar: TAction;
|
|
TBXSeparatorItem15: TTBXSeparatorItem;
|
|
TBXItem34: TTBXItem;
|
|
Duplicar1: TMenuItem;
|
|
TimerParaFiltro: TTimer;
|
|
procedure tbxEditFiltroChange(Sender: TObject; const Text: String);
|
|
procedure FormShow(Sender: TObject); override;
|
|
procedure actPrevisualizarExecute(Sender: TObject);
|
|
procedure actConfPaginaExecute(Sender: TObject);
|
|
procedure actImprimirExecute(Sender: TObject);
|
|
procedure actQuitarFiltroExecute(Sender: TObject);
|
|
procedure actDuplicarUpdate(Sender: TObject);
|
|
procedure JvFormStorageSavePlacement(Sender: TObject);
|
|
procedure JvFormStorageRestorePlacement(Sender: TObject);
|
|
procedure actRefrescarExecute(Sender: TObject);
|
|
procedure TimerParaFiltroTimer(Sender: TObject);
|
|
procedure actQuitarFiltroUpdate(Sender: TObject);
|
|
private
|
|
FViewGrid : IViewGridBase;
|
|
protected
|
|
procedure SetViewGrid(const Value : IViewGridBase); virtual;
|
|
function GetViewGrid: IViewGridBase;
|
|
public
|
|
property ViewGrid: IViewGridBase read GetViewGrid write SetViewGrid;
|
|
constructor Create(AOwner : TComponent); override;
|
|
|
|
destructor Destroy; override;
|
|
end;
|
|
|
|
implementation
|
|
|
|
uses
|
|
uDMBase, uCustomEditor, cxGridTableView;
|
|
|
|
{$R *.dfm}
|
|
|
|
var
|
|
FTextoFiltro : String;
|
|
|
|
{
|
|
********************************* TfEditorGridBase *****************************
|
|
}
|
|
destructor TfEditorGridBase.Destroy;
|
|
begin
|
|
TimerParaFiltro.Enabled := False;
|
|
FViewGrid := NIL;
|
|
inherited;
|
|
end;
|
|
|
|
function TfEditorGridBase.GetViewGrid: IViewGridBase;
|
|
begin
|
|
Result := FViewGrid;
|
|
end;
|
|
|
|
procedure TfEditorGridBase.SetViewGrid(const Value: IViewGridBase);
|
|
begin
|
|
FViewGrid := Value;
|
|
if Assigned(FViewGrid) then
|
|
begin
|
|
FViewGrid.PopupMenu := GridPopupMenu;
|
|
FViewGrid.OnDblClick := actModificar.OnExecute;
|
|
end;
|
|
end;
|
|
|
|
procedure TfEditorGridBase.tbxEditFiltroChange(Sender: TObject; const Text: String);
|
|
begin
|
|
TimerParaFiltro.Enabled := False;
|
|
FTextoFiltro := Text;
|
|
TimerParaFiltro.Enabled := True;
|
|
end;
|
|
|
|
procedure TfEditorGridBase.TimerParaFiltroTimer(Sender: TObject);
|
|
begin
|
|
inherited;
|
|
TimerParaFiltro.Enabled := False;
|
|
if Assigned(ViewGrid) then
|
|
ViewGrid.Filter := FTextoFiltro;
|
|
end;
|
|
|
|
procedure TfEditorGridBase.FormShow(Sender: TObject);
|
|
begin
|
|
inherited;
|
|
ViewGrid.ShowEmbedded(Self);
|
|
end;
|
|
|
|
procedure TfEditorGridBase.actPrevisualizarExecute(Sender: TObject);
|
|
begin
|
|
inherited;
|
|
ViewGrid.Preview;
|
|
end;
|
|
|
|
procedure TfEditorGridBase.actConfPaginaExecute(Sender: TObject);
|
|
begin
|
|
inherited;
|
|
ViewGrid.PrintSetup;
|
|
end;
|
|
|
|
procedure TfEditorGridBase.actImprimirExecute(Sender: TObject);
|
|
begin
|
|
inherited;
|
|
ViewGrid.Print;
|
|
end;
|
|
|
|
procedure TfEditorGridBase.actQuitarFiltroExecute(Sender: TObject);
|
|
begin
|
|
TimerParaFiltro.Enabled := False;
|
|
if Assigned(ViewGrid) then
|
|
begin
|
|
tbxEditFiltro.Text := '';
|
|
ViewGrid.Filter := '';
|
|
end;
|
|
end;
|
|
|
|
procedure TfEditorGridBase.actQuitarFiltroUpdate(Sender: TObject);
|
|
begin
|
|
inherited;
|
|
(Sender as TAction).Enabled := (Length(tbxEditFiltro.Text) > 0);
|
|
end;
|
|
|
|
constructor TfEditorGridBase.Create(AOwner: TComponent);
|
|
begin
|
|
inherited;
|
|
FTextoFiltro := '';
|
|
actModificar.ShortCut := ShortCut(VK_RETURN, []);
|
|
end;
|
|
|
|
procedure TfEditorGridBase.actDuplicarUpdate(Sender: TObject);
|
|
begin
|
|
if Assigned(dsDataTable.DataTable) then
|
|
(Sender as TAction).Enabled := (not dsDataTable.DataTable.IsEmpty)
|
|
and not (dsDataTable.DataTable.State = dsInsert)
|
|
else
|
|
(Sender as TAction).Enabled := False;
|
|
end;
|
|
|
|
procedure TfEditorGridBase.JvFormStorageSavePlacement(Sender: TObject);
|
|
begin
|
|
inherited;
|
|
if Assigned(ViewGrid) then
|
|
ViewGrid.StoreToRegistry(JvAppRegistryStorage.Root);
|
|
end;
|
|
|
|
procedure TfEditorGridBase.JvFormStorageRestorePlacement(Sender: TObject);
|
|
begin
|
|
inherited;
|
|
if Assigned(ViewGrid) then
|
|
begin
|
|
ViewGrid.RestoreFromRegistry(JvAppRegistryStorage.Root);
|
|
end;
|
|
end;
|
|
|
|
procedure TfEditorGridBase.actRefrescarExecute(Sender: TObject);
|
|
var
|
|
FocusedRow, TopRow : Integer;
|
|
begin
|
|
TopRow := ViewGrid._FocusedView.Controller.TopRowIndex;
|
|
FocusedRow := ViewGrid._FocusedView.DataController.FocusedRowIndex;
|
|
ViewGrid._FocusedView.BeginUpdate;
|
|
try
|
|
inherited;
|
|
finally
|
|
ViewGrid._FocusedView.EndUpdate;
|
|
ViewGrid._FocusedView.DataController.FocusedRowIndex := FocusedRow;
|
|
ViewGrid._FocusedView.Controller.TopRowIndex := TopRow;
|
|
end;
|
|
end;
|
|
|
|
initialization
|
|
RegisterClass(TfEditorGridBase);
|
|
|
|
finalization
|
|
UnRegisterClass(TfEditorGridBase);
|
|
|
|
end.
|
|
|