mirror of
				https://gitlab.com/freepascal.org/lazarus/lazarus.git
				synced 2025-11-04 06:20:05 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			91 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			ObjectPascal
		
	
	
	
	
	
			
		
		
	
	
			91 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			ObjectPascal
		
	
	
	
	
	
{
 | 
						|
    This file is part of the Free Component Library.
 | 
						|
    Copyright (c) 2017 Michael Van Canneyt, member of the Free Pascal development team
 | 
						|
 | 
						|
    Report property editor.
 | 
						|
 | 
						|
    See the file COPYING.FPC, included in this distribution,
 | 
						|
    for details about the copyright.
 | 
						|
 | 
						|
    This program is distributed in the hope that it will be useful,
 | 
						|
    but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
						|
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 | 
						|
 | 
						|
 **********************************************************************}
 | 
						|
unit frmfpreportproperties;
 | 
						|
 | 
						|
{$mode objfpc}{$H+}
 | 
						|
 | 
						|
interface
 | 
						|
 | 
						|
uses
 | 
						|
  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ButtonPanel,
 | 
						|
  StdCtrls, fpreport, reportdesignbaseforms;
 | 
						|
 | 
						|
type
 | 
						|
  TForm = TBaseReportEditorForm;
 | 
						|
 | 
						|
  { TReportPropertiesForm }
 | 
						|
 | 
						|
  TReportPropertiesForm = class(TForm)
 | 
						|
    BPReportProps: TButtonPanel;
 | 
						|
    CBTwoPass: TCheckBox;
 | 
						|
    ETitle: TEdit;
 | 
						|
    EAuthor: TEdit;
 | 
						|
    LLDateCreated: TLabel;
 | 
						|
    LDateCreation: TLabel;
 | 
						|
    Label2: TLabel;
 | 
						|
    LCBTwoPass: TLabel;
 | 
						|
    LTitle: TLabel;
 | 
						|
    procedure FormCloseQuery(Sender: TObject; var CanClose: boolean);
 | 
						|
  protected
 | 
						|
    procedure SetReport(AValue: TFPCustomReport); override;
 | 
						|
  Public
 | 
						|
    Procedure FormToReport; virtual;
 | 
						|
    Procedure ReportToForm; virtual;
 | 
						|
  end;
 | 
						|
 | 
						|
implementation
 | 
						|
 | 
						|
{$R *.lfm}
 | 
						|
 | 
						|
{ TReportPropertiesForm }
 | 
						|
 | 
						|
procedure TReportPropertiesForm.FormCloseQuery(Sender: TObject; var CanClose: boolean);
 | 
						|
begin
 | 
						|
  CanClose:=true;
 | 
						|
  If ModalResult=mrOK then
 | 
						|
    FormToReport;
 | 
						|
end;
 | 
						|
 | 
						|
procedure TReportPropertiesForm.SetReport(AValue: TFPCustomReport);
 | 
						|
begin
 | 
						|
  Inherited;
 | 
						|
  if Assigned(Report) then
 | 
						|
    ReportToForm;
 | 
						|
end;
 | 
						|
 | 
						|
procedure TReportPropertiesForm.FormToReport;
 | 
						|
begin
 | 
						|
  If Not Assigned(Report) then
 | 
						|
    Raise Exception.Create('No report to save to');
 | 
						|
  Report.Author  := EAuthor.Text;
 | 
						|
  Report.Title   := ETitle.Text;
 | 
						|
  Report.TwoPass := CBTWopass.Checked;
 | 
						|
end;
 | 
						|
 | 
						|
procedure TReportPropertiesForm.ReportToForm;
 | 
						|
begin
 | 
						|
  If Not Assigned(Report) then
 | 
						|
    Raise Exception.Create('No report to load');
 | 
						|
  EAuthor.Text:=Report.Author;
 | 
						|
  ETitle.Text:=Report.Title;
 | 
						|
  CBTWopass.Checked:=Report.TwoPass;
 | 
						|
  LDateCreation.Caption:=FormatDateTime('ddd yyyy-mm-dd hh:nn:ss',Report.DateCreated);
 | 
						|
end;
 | 
						|
 | 
						|
initialization
 | 
						|
  ReportPropertiesFormClass:=TReportPropertiesForm;
 | 
						|
end.
 | 
						|
 |