home *** CD-ROM | disk | FTP | other *** search
- {**********************************************}
- { TeeChart PageNum Tool Editor }
- { Copyright (c) 2000 by David Berneda }
- {**********************************************}
- {$I teedefs.inc}
- unit TeePageNumEdit;
-
- interface
-
- uses
- Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
- TeePageNumTool, StdCtrls, ComCtrls;
-
- type
- TPageNumToolEdit = class(TForm)
- PageControl1: TPageControl;
- TabSheet1: TTabSheet;
- Label1: TLabel;
- EFormat: TEdit;
- GroupBox1: TGroupBox;
- Label4: TLabel;
- Label5: TLabel;
- ECustLeft: TEdit;
- UDLeft: TUpDown;
- ECustTop: TEdit;
- UDTop: TUpDown;
- CBCustPos: TCheckBox;
- CBPos: TComboBox;
- Label2: TLabel;
- procedure FormShow(Sender: TObject);
- procedure EFormatChange(Sender: TObject);
- procedure CBPosChange(Sender: TObject);
- procedure ECustLeftChange(Sender: TObject);
- procedure CBCustPosClick(Sender: TObject);
- procedure ECustTopChange(Sender: TObject);
- procedure FormCreate(Sender: TObject);
- private
- { Private declarations }
- CreatingForm : Boolean;
- Tool : TPageNumTool;
- Function CanChangePos:Boolean;
- Procedure EnableCustomPosition;
- public
- { Public declarations }
- end;
-
- implementation
-
- {$R *.DFM}
-
- Uses TeeCustomShapeEditor;
-
- procedure TPageNumToolEdit.FormShow(Sender: TObject);
- begin
- Tool:=TPageNumTool(Tag);
- InsertTeeObjectForm(PageControl1,Tool.Shape).RefreshControls(Tool.Shape);
- With Tool do
- begin
- EFormat.Text:=Format;
- CBPos.ItemIndex:=Ord(Position);
- With Shape do
- begin
- CBCustPos.Checked :=CustomPosition;
- UDLeft.Position :=Left;
- ECustLeft.Text :=IntToStr(Left);
- UDTop.Position :=Top;
- ECustTop.Text :=IntToStr(Top);
- end;
- end;
- EnableCustomPosition;
- CreatingForm:=False;
- end;
-
- procedure TPageNumToolEdit.EFormatChange(Sender: TObject);
- begin
- Tool.Format:=EFormat.Text;
- end;
-
- procedure TPageNumToolEdit.CBPosChange(Sender: TObject);
- begin
- Tool.Position:=TPageNumPosition(CBPos.ItemIndex);
- Tool.Shape.CustomPosition:=False;
- EnableCustomPosition;
- end;
-
- procedure TPageNumToolEdit.ECustLeftChange(Sender: TObject);
- begin
- if CanChangePos then Tool.Shape.Left:=UDLeft.Position
- end;
-
- procedure TPageNumToolEdit.CBCustPosClick(Sender: TObject);
- begin
- Tool.Shape.CustomPosition:=CBCustPos.Checked;
- EnableCustomPosition;
- end;
-
- procedure TPageNumToolEdit.ECustTopChange(Sender: TObject);
- begin
- if CanChangePos then Tool.Shape.Top:=UDTop.Position
- end;
-
- Function TPageNumToolEdit.CanChangePos:Boolean;
- begin
- result:=(not CreatingForm) and (Tool.Shape.CustomPosition);
- end;
-
- procedure TPageNumToolEdit.FormCreate(Sender: TObject);
- begin
- CreatingForm:=True;
- end;
-
- Procedure TPageNumToolEdit.EnableCustomPosition;
- var tmp : Boolean;
- Old : Boolean;
- begin
- Old:=CreatingForm;
- CreatingForm:=True;
- tmp:=Tool.Shape.CustomPosition;
- ECustLeft.Enabled :=tmp;
- ECustTop.Enabled :=tmp;
- UDLeft.Enabled :=tmp;
- UDTop.Enabled :=tmp;
- if tmp then
- begin
- UDLeft.Position :=Tool.Shape.Left;
- UDTop.Position :=Tool.Shape.Top;
- end;
- CreatingForm:=Old;
- end;
-
- initialization
- RegisterClass(TPageNumToolEdit);
- end.
-