Files
lazarus-ccr/components/tvplanit/source/vpprtfmtdlg.pas
christian_u c1641e380d Initial import
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@338 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2008-02-03 12:05:55 +00:00

131 lines
4.3 KiB
ObjectPascal

{*********************************************************}
{* VPPRTFMTDLG.PAS 1.03 *}
{*********************************************************}
{* ***** BEGIN LICENSE BLOCK ***** *}
{* Version: MPL 1.1 *}
{* *}
{* The contents of this file are subject to the Mozilla Public License *}
{* Version 1.1 (the "License"); you may not use this file except in *}
{* compliance with the License. You may obtain a copy of the License at *}
{* http://www.mozilla.org/MPL/ *}
{* *}
{* Software distributed under the License is distributed on an "AS IS" basis, *}
{* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License *}
{* for the specific language governing rights and limitations under the *}
{* License. *}
{* *}
{* The Original Code is TurboPower Visual PlanIt *}
{* *}
{* The Initial Developer of the Original Code is TurboPower Software *}
{* *}
{* Portions created by TurboPower Software Inc. are Copyright (C) 2002 *}
{* TurboPower Software Inc. All Rights Reserved. *}
{* *}
{* Contributor(s): *}
{* *}
{* ***** END LICENSE BLOCK ***** *}
{$I Vp.INC}
unit VpPrtFmtDlg;
interface
uses
{$IFDEF LCL}
LMessages,LCLProc,LCLType,LCLIntf,
{$ELSE}
Windows,
{$ENDIF}
Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, TypInfo, ExtCtrls,
VpPrtFmt, VpBase, VpBaseDS, VpDlg, VpDBDS,{ VpBDEDS,} VpPrtPrv, VpPrtFmtCBox,
VpEdFmtLst;
type
TVpPrintFormatEditDialog = class (TVpBaseDialog)
private
FControlLink: TVpControlLink;
FWindowState: TWindowState;
protected
procedure Notification(AComponent: TComponent; Operation: TOperation); override;
procedure SetControlLink(const Value: TVpControlLink);
public
constructor Create (AOwner : TComponent); override;
function Execute : Boolean; override;
published
property ControlLink : TVpControlLink
read FControlLink write SetControlLink;
property WindowState : TWindowState
read FWindowState write FWindowState default wsNormal;
property Options;
property Placement;
end;
implementation
{ TVpPrintFormatEditDialog }
constructor TVpPrintFormatEditDialog.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
FControlLink := SearchControlLink (Owner);
FPlacement.Height := 480;
FPlacement.Width := 640;
end;
function TVpPrintFormatEditDialog.Execute: Boolean;
var
PrtFmtDlg : TfrmPrnFormat;
begin
Application.CreateForm (TfrmPrnFormat, PrtFmtDlg);
try
DoFormPlacement(PrtFmtDlg);
PrtFmtDlg.WindowState := WindowState;
PrtFmtDlg.ControlLink := ControlLink;
Result := PrtFmtDlg.Execute;
finally
PrtFmtDlg.Release;
end;
end;
procedure TVpPrintFormatEditDialog.Notification (AComponent : TComponent;
Operation : TOperation);
{-Handle new/deleted components}
begin
inherited Notification (AComponent, Operation);
if Operation = opRemove then begin
{Owned components going away}
if AComponent = FControlLink then begin
FControlLink := nil;
end;
end else if Operation = opInsert then begin
if AComponent is TVpControlLink then begin
if not Assigned (FControlLink) then begin
FControlLink := TVpControlLink (AComponent);
end;
end;
end;
end;
procedure TVpPrintFormatEditDialog.SetControlLink(
const Value: TVpControlLink);
begin
if FControlLink <> Value then
FControlLink := Value;
end;
end.