unit uEditorAlbaranesClienteReport;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, uEditorPreview, frxExportImage, frxExportPDF, frxDCtrl, frxClass,
//  frxDMPExport, frxGradient, frxChBox, frxCross, frxRich, frxChart, frxOLE,
//  frxBarcode, JvAppStorage, JvAppRegistryStorage, JvComponentBase,
  JvFormPlacement, ImgList, PngImageList, StdActns, ActnList, ComCtrls,
  TB2ExtItems, TBXExtItems, TBX, TB2Item, TB2Dock, TB2Toolbar, pngimage,
  ExtCtrls, JvExControls, JvComponent, JvNavigationPane, uIEditorAlbaranesClientePreview,
  JvExComCtrls, JvStatusBar, frxDMPExport, frxGradient, frxChBox, frxCross,
  frxRich, frxOLE, frxBarcode, JvAppStorage, JvAppRegistryStorage,
  JvComponentBase, frxExportText, frxExportRTF, frxExportMail, frxExportXLS;

type
  TfEditorAlbaranesClientePreview = class(TfEditorPreview, IEditorAlbaranesClientePreview)
    TBXItem58: TTBXItem;
    procedure actExportarRTFExecute(Sender: TObject);
  private
    FVerPrecios : Boolean;
    FVerRefProveedor : Boolean;
    FVerObservaciones : Boolean;
    FVerIncidencias : Boolean;
    function GetVerPrecios: Boolean;
    function GetVerRefProveedor: Boolean;
    function GetVerIncidencias: Boolean;
    function GetVerObservaciones: Boolean;
    procedure SetVerPrecios(const Value: Boolean);
    procedure SetVerRefProveedor(const Value: Boolean);
    procedure SetObservaciones(const Value: Boolean);
    procedure SetVerIncidencias(const Value: Boolean);
    { Private declarations }
  public
    property VerPrecios : Boolean read GetVerPrecios write SetVerPrecios;
    property VerRefProveedor : Boolean read GetVerRefProveedor write SetVerRefProveedor;
    property VerObservaciones : Boolean read GetVerObservaciones write SetObservaciones;
    property VerIncidencias : Boolean read GetVerIncidencias write SetVerIncidencias;
  end;


implementation

{$R *.dfm}

uses
  uAlbaranesClienteReportController, uDialogUtils;

procedure TfEditorAlbaranesClientePreview.actExportarRTFExecute(
  Sender: TObject);
var
  I: Integer;
begin
  // inherited; <- No llamar al padre
  if not Assigned(Controller) then
    raise Exception.Create('No se ha asignado el controlador necesario');

  for I := 0 to ListaID.Count - 1 do
    if (Controller as IAlbaranesClienteReportController).ExportToWord(ListaID[I]) then
      ShowInfoMessage('El albarán se ha exportado correctamente.');    
end;

function TfEditorAlbaranesClientePreview.GetVerIncidencias: Boolean;
begin
Result := FVerIncidencias;
end;

function TfEditorAlbaranesClientePreview.GetVerObservaciones: Boolean;
begin
Result := FVerObservaciones;
end;

function TfEditorAlbaranesClientePreview.GetVerPrecios: Boolean;
begin
Result := FVerPrecios;
end;

function TfEditorAlbaranesClientePreview.GetVerRefProveedor: Boolean;
begin
Result := FVerRefProveedor;
end;

procedure TfEditorAlbaranesClientePreview.SetObservaciones(
  const Value: Boolean);
begin
  FVerObservaciones := Value;
end;

procedure TfEditorAlbaranesClientePreview.SetVerIncidencias(
  const Value: Boolean);
begin
  FVerIncidencias := Value;
end;

procedure TfEditorAlbaranesClientePreview.SetVerPrecios(const Value: Boolean);
begin
  FVerPrecios := Value;
end;

procedure TfEditorAlbaranesClientePreview.SetVerRefProveedor(
  const Value: Boolean);
begin
  FVerRefProveedor := Value;
end;

end.
