From 18536b3f45cc8ffb66790b2fba3c70c08fa69ffd Mon Sep 17 00:00:00 2001 From: wp_xxyyzz Date: Wed, 6 Jul 2016 18:56:23 +0000 Subject: [PATCH] tvplanit: Cosmetic changes in VpEdFmtLst. Beginning to fix print format designer. git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4926 8e941d3f-bd1b-0410-a28a-d453659cc2b4 --- .../tvplanit/examples/demo/demomain.lfm | 25 +- .../tvplanit/examples/demo/demomain.lrt | 1 + .../tvplanit/examples/demo/demomain.pas | 10 +- components/tvplanit/languages/demo.de.po | 4 + components/tvplanit/languages/demo.po | 4 + components/tvplanit/source/vpedfmtlst.lfm | 8 +- components/tvplanit/source/vpedfmtlst.pas | 229 +++++++++--------- components/tvplanit/source/vpprtfmtdlg.pas | 14 +- 8 files changed, 162 insertions(+), 133 deletions(-) diff --git a/components/tvplanit/examples/demo/demomain.lfm b/components/tvplanit/examples/demo/demomain.lfm index dfb330a29..3a631ae34 100644 --- a/components/tvplanit/examples/demo/demomain.lfm +++ b/components/tvplanit/examples/demo/demomain.lfm @@ -784,8 +784,8 @@ object MainForm: TMainForm object ImageList1: TImageList Height = 32 Width = 32 - left = 312 - top = 365 + left = 560 + top = 368 Bitmap = { 4C69090000002000000020000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF @@ -1943,10 +1943,14 @@ object MainForm: TMainForm } end object MainMenu1: TMainMenu - left = 469 - top = 221 + left = 560 + top = 296 object MenuItem1: TMenuItem Caption = 'File' + object MnuEditPrintFormats: TMenuItem + Caption = 'Edit print formats...' + OnClick = MnuEditPrintFormatsClick + end object MnuPrintPreview: TMenuItem Caption = 'Print preview...' OnClick = MnuPrintPreviewClick @@ -2002,4 +2006,17 @@ object MainForm: TMainForm left = 560 top = 192 end + object VpPrintFormatEditDialog1: TVpPrintFormatEditDialog + Version = 'v1.04' + DataStore = VpBufDSDataStore1 + ControlLink = VpControlLink1 + Options = [] + Placement.Position = mpCenter + Placement.Top = 10 + Placement.Left = 10 + Placement.Height = 480 + Placement.Width = 640 + left = 712 + top = 192 + end end diff --git a/components/tvplanit/examples/demo/demomain.lrt b/components/tvplanit/examples/demo/demomain.lrt index 32f25be29..86bbd4581 100644 --- a/components/tvplanit/examples/demo/demomain.lrt +++ b/components/tvplanit/examples/demo/demomain.lrt @@ -23,6 +23,7 @@ TMAINFORM.COMBOBOX1.TEXT=ComboBox1 TMAINFORM.CBDRAWINGSTYLE.TEXT=flat TMAINFORM.TITLELBL.CAPTION=TitleLbl TMAINFORM.MENUITEM1.CAPTION=File +TMAINFORM.MNUEDITPRINTFORMATS.CAPTION=Edit print formats... TMAINFORM.MNUPRINTPREVIEW.CAPTION=Print preview... TMAINFORM.MENUITEM3.CAPTION=- TMAINFORM.MNUQUIT.CAPTION=Quit diff --git a/components/tvplanit/examples/demo/demomain.pas b/components/tvplanit/examples/demo/demomain.pas index a1da6c435..3c922e495 100644 --- a/components/tvplanit/examples/demo/demomain.pas +++ b/components/tvplanit/examples/demo/demomain.pas @@ -8,7 +8,7 @@ uses Classes, SysUtils, FileUtil, PrintersDlgs, Forms, Controls, Graphics, Dialogs, ExtCtrls, StdCtrls, ComCtrls, LCLTranslator, Menus, VpBaseDS, VpDayView, VpWeekView, VpTaskList, VpAbout, VpContactGrid, VpMonthView, VpResEditDlg, - VpContactButtons, VpBufDS, VpNavBar, VpData, VpPrtPrvDlg, Types; + VpContactButtons, VpBufDS, VpNavBar, VpData, VpPrtPrvDlg, VpPrtFmtDlg, Types; type @@ -36,6 +36,7 @@ type LblLanguage: TLabel; LblVisibleDays: TLabel; MenuItem3: TMenuItem; + MnuEditPrintFormats: TMenuItem; MnuPrintPreview: TMenuItem; PrintDialog1: TPrintDialog; TitleLbl: TLabel; @@ -70,6 +71,7 @@ type VpDayView1: TVpDayView; VpMonthView1: TVpMonthView; VpNavBar1: TVpNavBar; + VpPrintFormatEditDialog1: TVpPrintFormatEditDialog; VpPrintPreviewDialog1: TVpPrintPreviewDialog; VpResourceCombo1: TVpResourceCombo; VpResourceEditDialog1: TVpResourceEditDialog; @@ -90,6 +92,7 @@ type procedure FormCloseQuery(Sender: TObject; var CanClose: boolean); procedure FormCreate(Sender: TObject); procedure MnuAboutClick(Sender: TObject); + procedure MnuEditPrintFormatsClick(Sender: TObject); procedure MnuPrintPreviewClick(Sender: TObject); procedure MnuQuitClick(Sender: TObject); procedure MnuResourcesClick(Sender: TObject); @@ -354,6 +357,11 @@ begin end; end; +procedure TMainForm.MnuEditPrintFormatsClick(Sender: TObject); +begin + VpPrintFormatEditDialog1.Execute; +end; + procedure TMainForm.MnuPrintPreviewClick(Sender: TObject); var t1, t2: TDateTime; diff --git a/components/tvplanit/languages/demo.de.po b/components/tvplanit/languages/demo.de.po index 717b89653..29f6f205c 100644 --- a/components/tvplanit/languages/demo.de.po +++ b/components/tvplanit/languages/demo.de.po @@ -264,6 +264,10 @@ msgstr "" msgid "About Visual PlanIt" msgstr "Über Visual PlanIt" +#: tmainform.mnueditprintformats.caption +msgid "Edit print formats..." +msgstr "" + #: tmainform.mnumaintenance.caption msgctxt "tmainform.mnumaintenance.caption" msgid "Maintenance" diff --git a/components/tvplanit/languages/demo.po b/components/tvplanit/languages/demo.po index c080e1710..be3b118f0 100644 --- a/components/tvplanit/languages/demo.po +++ b/components/tvplanit/languages/demo.po @@ -253,6 +253,10 @@ msgstr "" msgid "About Visual PlanIt" msgstr "" +#: tmainform.mnueditprintformats.caption +msgid "Edit print formats..." +msgstr "" + #: tmainform.mnumaintenance.caption msgctxt "TMAINFORM.MNUMAINTENANCE.CAPTION" msgid "Maintenance" diff --git a/components/tvplanit/source/vpedfmtlst.lfm b/components/tvplanit/source/vpedfmtlst.lfm index 1ae618335..71d565b21 100644 --- a/components/tvplanit/source/vpedfmtlst.lfm +++ b/components/tvplanit/source/vpedfmtlst.lfm @@ -201,7 +201,7 @@ object frmPrnFormat: TfrmPrnFormat ClientWidth = 640 TabOrder = 9 object btnLoadFile: TButton - Left = 92 + Left = 88 Height = 25 Top = 8 Width = 75 @@ -210,7 +210,7 @@ object frmPrnFormat: TfrmPrnFormat TabOrder = 1 end object btnSaveFile: TButton - Left = 172 + Left = 168 Height = 25 Top = 8 Width = 75 @@ -219,7 +219,7 @@ object frmPrnFormat: TfrmPrnFormat TabOrder = 2 end object btnNewFile: TButton - Left = 12 + Left = 8 Height = 25 Top = 8 Width = 75 @@ -228,7 +228,7 @@ object frmPrnFormat: TfrmPrnFormat TabOrder = 0 end object btnOk: TButton - Left = 552 + Left = 556 Height = 25 Top = 8 Width = 75 diff --git a/components/tvplanit/source/vpedfmtlst.pas b/components/tvplanit/source/vpedfmtlst.pas index c29fb380b..4c9c01c62 100644 --- a/components/tvplanit/source/vpedfmtlst.pas +++ b/components/tvplanit/source/vpedfmtlst.pas @@ -95,41 +95,39 @@ type procedure lbElementsDragDrop(Sender, Source: TObject; X, Y: Integer); procedure lbElementsDragOver(Sender, Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean); + private - FFormatFileName : string; - FControlLink : TVpControlLink; - IsDirty : Boolean; + FFormatFileName: string; + FControlLink: TVpControlLink; + IsDirty: Boolean; LastX, LastY: Integer; - DragItem : Integer; + DragItem: Integer; + protected function DirtyPrompt: Integer; procedure DoEditElement; procedure DoEditFormat; procedure DoNewElement; procedure DoNewFile; - function DoNewFormat : Integer; + function DoNewFormat: Integer; procedure DoSave; procedure EnableElementButtons(Enable: Boolean); procedure EnableFormatButtons(Enable: Boolean); - procedure EnableMoveButtons; - procedure SetFormatFileName (const v : string); + procedure EnableMoveButtons; + procedure SetFormatFileName(const v: string); procedure UpdateFormats; procedure UpdateCaption; procedure UpdatePreview; function GetControlLink: TVpControlLink; procedure SetControlLink(const Value: TVpControlLink); - { Private declarations } + public - - property ControlLink : TVpControlLink - read FControlLink write SetControlLink; - function Execute : Boolean; - { Public declarations } + property ControlLink : TVpControlLink read FControlLink write SetControlLink; + published - property FormatFileName : string - read FFormatFileName write SetFormatFileName; + property FormatFileName : string read FFormatFileName write SetFormatFileName; end; var @@ -140,8 +138,10 @@ implementation uses VpEdFmt, VpEdElem; -{$IFNDEF LCL} -{$R *.DFM} +{$IFDEF DELPHI} + {$R *.dfm} +{$ELSE} + {$R *.lfm} {$ENDIF} {TfrmPrnFormat} @@ -152,17 +152,14 @@ begin IsDirty := False; FormatFileName := UnnamedFile; - - EnableFormatButtons(False); EnableElementButtons(False); end; {=====} -procedure TfrmPrnFormat.EnableMoveButtons; -begin - btnMoveElementUp.Enabled := lbElements.ItemIndex > 0; - btnMoveElementDn.Enabled := - lbElements.ItemIndex < lbElements.Items.Count - 1; +procedure TfrmPrnFormat.EnableMoveButtons; +begin + btnMoveElementUp.Enabled := lbElements.ItemIndex > 0; + btnMoveElementDn.Enabled := lbElements.ItemIndex < lbElements.Items.Count - 1; end; {=====} procedure TfrmPrnFormat.FormShow(Sender: TObject); @@ -182,9 +179,9 @@ end; {=====} procedure TfrmPrnFormat.btnDeleteElementClick(Sender: TObject); var - Format : TVpPrintFormatItem; - Idx : Integer; - Item : string; + Format: TVpPrintFormatItem; + Idx: Integer; + Item: string; begin Format := TVpPrintFormatItem(lbFormats.Items.Objects[lbFormats.ItemIndex]); Item := ''; @@ -205,14 +202,13 @@ end; {=====} procedure TfrmPrnFormat.btnDeleteFormatClick(Sender: TObject); var - Prn : TVpPrinter; - Idx : Integer; + Prn: TVpPrinter; + Idx: Integer; begin Prn := ControlLink.Printer; Idx := Prn.Find(lbFormats.Items[lbFormats.ItemIndex]); - if (Idx < 0) or (Idx >= Prn.PrintFormats.Count) then - ShowMessage ('Invalid print format: ' + - lbFormats.Items[lbFormats.ItemIndex]); + if (Idx < 0) or (Idx >= Prn.PrintFormats.Count) then + ShowMessage ('Invalid print format: ' + lbFormats.Items[lbFormats.ItemIndex]); Prn.PrintFormats.Items[Idx].Free; lbFormats.Items.Delete(lbFormats.ItemIndex); IsDirty := True; @@ -231,8 +227,8 @@ end; {=====} procedure TfrmPrnFormat.btnLoadFileClick(Sender: TObject); var - Prn : TVpPrinter; - Rslt : Integer; + Prn: TVpPrinter; + Rslt: Integer; begin if IsDirty then begin Rslt := DirtyPrompt; @@ -262,7 +258,7 @@ end; {=====} procedure TfrmPrnFormat.btnMoveElementDnClick(Sender: TObject); var - E : TVpPrintFormatElementItem; + E: TVpPrintFormatElementItem; begin if lbElements.ItemIndex > -1 then begin E := TVpPrintFormatElementItem(lbElements.Items.Objects[lbElements.ItemIndex]); @@ -277,7 +273,7 @@ var begin if lbElements.ItemIndex > -1 then begin E := TVpPrintFormatElementItem(lbElements.Items.Objects[lbElements.ItemIndex]); - E.Index := E.Index - 1; + E.Index := E.Index - 1; lbElements.Items.Move(lbElements.ItemIndex, lbElements.ItemIndex - 1); end; end; @@ -288,27 +284,26 @@ begin end; {=====} procedure TfrmPrnFormat.btnNewFormatClick(Sender: TObject); -var - NewFormatIdx : Integer; - i : Integer; - +var + NewFormatIdx: Integer; + i: Integer; begin - NewFormatIdx := DoNewFormat; - if (NewFormatIdx > 0) and - (Assigned (ControlLink)) and - (NewFormatIdx < ControlLink.Printer.PrintFormats.Count) then - for i := 0 to lbFormats.Items.Count - 1 do - if lbFormats.Items[i] = ControlLink.Printer.PrintFormats. - Items[NewFormatIdx].FormatName then begin - lbFormats.ItemIndex := i; - lbFormatsClick (Self); - Break; - end; + NewFormatIdx := DoNewFormat; + if (NewFormatIdx > 0) and (Assigned (ControlLink)) and + (NewFormatIdx < ControlLink.Printer.PrintFormats.Count) + then + for i := 0 to lbFormats.Items.Count - 1 do + if lbFormats.Items[i] = ControlLink.Printer.PrintFormats.Items[NewFormatIdx].FormatName then + begin + lbFormats.ItemIndex := i; + lbFormatsClick(Self); + Break; + end; end; {=====} procedure TfrmPrnFormat.btnNewFileClick(Sender: TObject); var - Rslt : Integer; + Rslt: Integer; begin if IsDirty then begin Rslt := DirtyPrompt; @@ -340,17 +335,18 @@ begin DoSave; end; {=====} -function TfrmPrnFormat.DirtyPrompt : Integer; +function TfrmPrnFormat.DirtyPrompt: Integer; begin Result := Application.MessageBox( - PChar('Save changes to ' + FormatFileName + '?'), - PChar('Inquiry'), - MB_YESNOCANCEL or MB_ICONQUESTION); + PChar('Save changes to ' + FormatFileName + '?'), + PChar('Inquiry'), + MB_YESNOCANCEL or MB_ICONQUESTION + ); end; {=====} procedure TfrmPrnFormat.DoEditElement; var - E : TVpPrintFormatElementItem; + E: TVpPrintFormatElementItem; frmEditElement: TfrmEditElement; begin if lbElements.ItemIndex > -1 then begin @@ -372,7 +368,7 @@ end; {=====} procedure TfrmPrnFormat.DoEditFormat; var - AFormat : TVpPrintFormatItem; + AFormat: TVpPrintFormatItem; frmEditFormat: TfrmEditFormat; begin if lbFormats.ItemIndex > -1 then begin @@ -392,9 +388,9 @@ end; {=====} procedure TfrmPrnFormat.DoNewElement; var - Format : TVpPrintFormatItem; - E : TVpPrintFormatElementItem; - Unique, Cancelled : Boolean; + Format: TVpPrintFormatItem; + E: TVpPrintFormatElementItem; + Unique, Cancelled: Boolean; frmEditElement: TfrmEditElement; begin Format := TVpPrintFormatItem(lbFormats.Items.Objects[lbFormats.ItemIndex]); @@ -435,7 +431,7 @@ end; {=====} procedure TfrmPrnFormat.DoNewFile; var - Prn : TVpPrinter; + Prn: TVpPrinter; begin Prn := ControlLink.Printer; Prn.PrintFormats.Clear; @@ -449,14 +445,14 @@ begin EnableElementButtons(False); end; {=====} -function TfrmPrnFormat.DoNewFormat : Integer; +function TfrmPrnFormat.DoNewFormat: Integer; var - AFormat : TVpPrintFormatItem; - Prn : TVpPrinter; - Unique, Cancelled : Boolean; + AFormat: TVpPrintFormatItem; + Prn: TVpPrinter; + Unique, Cancelled: Boolean; frmEditFormat: TfrmEditFormat; begin - Result := -1; + Result := -1; Application.CreateForm(TfrmEditFormat, frmEditFormat); Prn := ControlLink.Printer; @@ -487,8 +483,8 @@ begin { until format name is Unique or operation Cancelled } until Unique or Cancelled; - if not Cancelled then - Result := AFormat.Index; + if not Cancelled then + Result := AFormat.Index; frmEditFormat.Free; end; @@ -507,27 +503,27 @@ begin end; end; {=====} -procedure TfrmPrnFormat.EnableElementButtons(Enable : Boolean); +procedure TfrmPrnFormat.EnableElementButtons(Enable: Boolean); begin btnNewElement.Enabled := Enable; btnEditElement.Enabled := Enable; btnDeleteElement.Enabled := Enable; // btnMoveElementUp.Enabled := Enable; -// btnMoveElementDn.Enabled := Enable; - EnableMoveButtons; +// btnMoveElementDn.Enabled := Enable; + EnableMoveButtons; end; {=====} -procedure TfrmPrnFormat.EnableFormatButtons(Enable : Boolean); +procedure TfrmPrnFormat.EnableFormatButtons(Enable: Boolean); begin btnNewFormat.Enabled := Enable; btnEditFormat.Enabled := Enable; btnDeleteFormat.Enabled := Enable; end; {=====} -function TfrmPrnFormat.Execute : Boolean; +function TfrmPrnFormat.Execute: Boolean; begin if not Assigned (ControlLink) then - raise EVpPrintFormatEditorError.Create (RSNoControlLink); + raise EVpPrintFormatEditorError.Create(RSNoControlLink); Result := ShowModal = mrOk; end; @@ -535,7 +531,7 @@ end; procedure TfrmPrnFormat.FormCloseQuery(Sender: TObject; var CanClose: Boolean); var - Rslt : Integer; + Rslt: Integer; begin if IsDirty then begin Rslt := DirtyPrompt; @@ -567,9 +563,9 @@ end; {=====} procedure TfrmPrnFormat.lbFormatsClick(Sender: TObject); var - E : TVpPrintFormatElementItem; - Prn : TVpPrinter; - i, Idx : Integer; + E: TVpPrintFormatElementItem; + Prn: TVpPrinter; + i, Idx: Integer; begin lbElements.Items.Clear; Prn := ControlLink.Printer; @@ -578,6 +574,7 @@ begin Prn.CurFormat := Idx; PrintPreview.ControlLink := ControlLink; + PrintPreview.Invalidate; for i := 0 to Pred(Prn.PrintFormats.Items[Idx].Elements.Count) do begin E := Prn.PrintFormats.Items[Idx].Elements.Items[i]; @@ -600,57 +597,56 @@ end; procedure TfrmPrnFormat.lbElementsMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin - LastX:=X; - LastY:=Y; - DragItem := (Sender as TListBox).ItemAtPos(Point(LastX, LastY),True); + LastX := X; + LastY := Y; + DragItem := (Sender as TListBox).ItemAtPos(Point(LastX, LastY), True); end; {=====} -procedure TfrmPrnFormat.lbElementsDragDrop(Sender, Source: TObject; X, - Y: Integer); +procedure TfrmPrnFormat.lbElementsDragDrop(Sender, Source: TObject; X, Y: Integer); var - lb : TListBox; + lb: TListBox; Dest: Integer; - E : TVpPrintFormatElementItem; + E: TVpPrintFormatElementItem; begin lb := Source as TListBox; - Dest:=lb.ItemAtPos(Point(X, Y),True); + Dest := lb.ItemAtPos(Point(X, Y), True); lb.Items.Move(DragItem, Dest); E := TVpPrintFormatElementItem(lbElements.Items.Objects[Dest]); E.Index := Dest; lb.ItemIndex := Dest; - EnableMoveButtons; + EnableMoveButtons; end; {=====} -procedure TfrmPrnFormat.lbElementsDragOver(Sender, Source: TObject; X, - Y: Integer; State: TDragState; var Accept: Boolean); +procedure TfrmPrnFormat.lbElementsDragOver(Sender, Source: TObject; X,Y: Integer; + State: TDragState; var Accept: Boolean); var - lb : TListBox; + lb: TListBox; begin lb := (Source as TListBox); lb.Canvas.DrawFocusRect(lb.ItemRect(lb.ItemAtPos(Point(LastX, LastY), True))); lb.Canvas.DrawFocusRect(lb.ItemRect(lb.ItemAtPos(Point(X, Y), True))); LastX := X; LastY := Y; - Accept:=True; + Accept := True; end; {=====} procedure TfrmPrnFormat.SetControlLink(const Value: TVpControlLink); begin - if FControlLink <> Value then begin + if FControlLink <> Value then begin FControlLink := Value; - if Assigned (FControlLink) then - FFormatFileName := FControlLink.Printer.DefaultXMLFileName; - end; + if Assigned (FControlLink) then + FFormatFileName := FControlLink.Printer.DefaultXMLFileName; + end; end; {=====} -procedure TfrmPrnFormat.SetFormatFileName (const v : string); -begin - if v <> FFormatFileName then begin - FFormatFileName := v; - if Assigned (FControlLink) then - FControlLink.Printer.DefaultXMLFileName := v; - end; -end; +procedure TfrmPrnFormat.SetFormatFileName(const v: string); +begin + if v <> FFormatFileName then begin + FFormatFileName := v; + if Assigned(FControlLink) then + FControlLink.Printer.DefaultXMLFileName := v; + end; +end; {=====} procedure TfrmPrnFormat.UpdateCaption; begin @@ -659,30 +655,29 @@ end; {=====} procedure TfrmPrnFormat.UpdateFormats; var - i : Integer; - Prn : TVpPrinter; + i: Integer; + Prn: TVpPrinter; begin Prn := ControlLink.Printer; for i := 0 to Pred(Prn.PrintFormats.Count) do lbFormats.Items.AddObject(Prn.PrintFormats.Items[i].FormatName, Prn.PrintFormats.Items[i]); - EnableMoveButtons; + EnableMoveButtons; end; {=====} procedure TfrmPrnFormat.UpdatePreview; var - Prn : TVpPrinter; - Idx : Integer; - + Prn: TVpPrinter; + Idx: Integer; begin Prn := ControlLink.Printer; - if lbFormats.ItemIndex > -1 then begin - Idx := Prn.Find (lbFormats.Items[lbFormats.ItemIndex]); - if Idx > - 1 then - Prn.CurFormat := Idx; - {Prn.CurFormat := lbFormats.ItemIndex; } - end; + if lbFormats.ItemIndex > -1 then begin + Idx := Prn.Find(lbFormats.Items[lbFormats.ItemIndex]); + if Idx > - 1 then + Prn.CurFormat := Idx; + {Prn.CurFormat := lbFormats.ItemIndex; } + end; Prn.NotifyLinked; - EnableMoveButtons; + EnableMoveButtons; end; {=====} diff --git a/components/tvplanit/source/vpprtfmtdlg.pas b/components/tvplanit/source/vpprtfmtdlg.pas index f5694dbfa..bc4060aaa 100644 --- a/components/tvplanit/source/vpprtfmtdlg.pas +++ b/components/tvplanit/source/vpprtfmtdlg.pas @@ -77,30 +77,30 @@ implementation constructor TVpPrintFormatEditDialog.Create(AOwner: TComponent); begin inherited Create(AOwner); - FControlLink := SearchControlLink (Owner); + FControlLink := SearchControlLink (Owner); FPlacement.Height := 480; - FPlacement.Width := 640; + FPlacement.Width := 640; end; function TVpPrintFormatEditDialog.Execute: Boolean; var PrtFmtDlg : TfrmPrnFormat; begin - Application.CreateForm (TfrmPrnFormat, PrtFmtDlg); + PrtFmtDlg := TfrmPrnFormat.Create(Application); +// Application.CreateForm(TfrmPrnFormat, PrtFmtDlg); try DoFormPlacement(PrtFmtDlg); PrtFmtDlg.WindowState := WindowState; PrtFmtDlg.ControlLink := ControlLink; Result := PrtFmtDlg.Execute; - finally - PrtFmtDlg.Release; + PrtFmtDlg.Free; end; end; -procedure TVpPrintFormatEditDialog.Notification (AComponent : TComponent; - Operation : TOperation); +procedure TVpPrintFormatEditDialog.Notification(AComponent: TComponent; + Operation: TOperation); {-Handle new/deleted components} begin inherited Notification (AComponent, Operation);