Class TLabelEffect (unit LblEffct)

Inherits from

TCustomLabel

Constructors


constructor Create(AOwner:TComponent);

Public declarations


Functions

procedure MouseDown(MbBtn: TMouseButton; SsShift: TShiftState; X, Y: Integer);

And draw it onto the canvas

procedure MouseMove(SsShift: TShiftState; X, Y: Integer);

If left button and label isn't sunken

procedure MouseUp(MbBtn: TMouseButton; SsShift: TShiftState; X, Y: Integer);

If within label's client area

procedure Paint;

Protected declarations

Request TrueType precision } { Delphi will handle the deallocation of the old font handle


procedure SetAngle(AAngle: TAngleRange);

If not already raised, raise it

procedure SetAsButton(BBtn: Boolean);

So further changes set colour scheme to custom

procedure SetColourHighlight(ClrHighlight: TColor);

Default to custom style when changed

procedure SetColourScheme(CsScheme: TColourScheme);

So further changes set colour scheme to custom

procedure SetColourShadow(ClrShadow: TColor);

Default to custom colour scheme when changed

procedure SetDepthHighlight(IDepth: TEffectDepth);

Sin(FAngle * DDegToRad)

procedure SetDepthShadow(IDepth: TEffectDepth);

Default to custom style when changed

procedure SetDirectionHighlight(EdDirection: TEffectDirection);

Default to custom style when changed

procedure SetDirectionShadow(EdDirection: TEffectDirection);

Default to custom style when changed

procedure SetEffectStyle(EsStyle: TEffectStyle);


procedure SetGraduateFace(GoGrad: TGraduateOption);

Default to custom colour scheme when changed

procedure SetGraduateFrom(ClrGrad: TColor);


procedure SetKeepLettersVertical(BKeep: Boolean);

Cannot align when rotated

procedure SetStyleHighlight(EoStyle: TEffectOption);

Only has effect if GraduateFace is not goNone

procedure SetStyleShadow(EoStyle: TEffectOption);


procedure SetTextAngle(Cnv: TCanvas; AAngle: TAngleRange);


Properties

property Align :

Publish inherited properties

property Alignment :


property Angle : TAngleRange


property AsButton : Boolean


property Caption :


property Color :


property ColourHighlight : TColor


property ColourScheme : TColourScheme


property ColourShadow : TColor


property Cursor :


property DepthHighlight : TEffectDepth

Publish specialised properties

property DepthShadow : TEffectDepth


property DirectionHighlight : TEffectDirection


property DirectionShadow : TEffectDirection


property DragCursor :


property DragMode :


property EffectStyle : TEffectStyle


property Enabled :


property FocusControl :


property Font :


property GraduateFace : TGraduateOption


property GraduateFrom : TColor


property KeepLettersVertical : Boolean


property ParentColor :


property ParentFont :


property ParentShowHint :


property ShowAccelChar :


property ShowHint :


property StyleHighlight : TEffectOption


property StyleShadow : TEffectOption


property Transparent :


property Visible :


property WordWrap :


property Version : String


Events

event OnClick :


event OnDblClick :


event OnDragDrop :


event OnDragOver :


event OnEndDrag :


event OnMouseDown :


event OnMouseMove :


event OnMouseUp :


Variables

BChangingScheme : Boolean;

Is preset style being invoked ?

BChangingStyle : Boolean;


ClrSchemes : array [TColourScheme,TColourPosition] of TColor;

Is preset colour scheme being invoked ?

DCosAngle : Double;


DCosSquared : Double;


DDegToRad : Double;


DSinAngle : Double;


DSinSquared : Double;


FAngle : TAngleRange;


FAsButton : Boolean;


FColourHighlight : TColor;


FColourScheme : TColourScheme;


FColourShadow : TColor;


FDepthHighlight : TEffectDepth;

Private declarations

FDepthShadow : TEffectDepth;


FDirectionHighlight : TEffectDirection;


FDirectionShadow : TEffectDirection;


FEffectStyle : TEffectStyle;


FGraduateFace : TGraduateOption;


FGraduateFrom : TColor;


FKeepLettersVertical : Boolean;


FStyleHighlight : TEffectOption;


FStyleShadow : TEffectOption;


FVersion : String;



Constructors


constructor Create(AOwner:TComponent);

Public declarations


Functions


procedure MouseDown(MbBtn: TMouseButton; SsShift: TShiftState; X, Y: Integer);

And draw it onto the canvas


procedure MouseMove(SsShift: TShiftState; X, Y: Integer);

If left button and label isn't sunken


procedure MouseUp(MbBtn: TMouseButton; SsShift: TShiftState; X, Y: Integer);

If within label's client area


procedure Paint;

Protected declarations

Request TrueType precision } { Delphi will handle the deallocation of the old font handle


procedure SetAngle(AAngle: TAngleRange);

If not already raised, raise it


procedure SetAsButton(BBtn: Boolean);

So further changes set colour scheme to custom


procedure SetColourHighlight(ClrHighlight: TColor);

Default to custom style when changed


procedure SetColourScheme(CsScheme: TColourScheme);

So further changes set colour scheme to custom


procedure SetColourShadow(ClrShadow: TColor);

Default to custom colour scheme when changed


procedure SetDepthHighlight(IDepth: TEffectDepth);

Sin(FAngle * DDegToRad)


procedure SetDepthShadow(IDepth: TEffectDepth);

Default to custom style when changed


procedure SetDirectionHighlight(EdDirection: TEffectDirection);

Default to custom style when changed


procedure SetDirectionShadow(EdDirection: TEffectDirection);

Default to custom style when changed


procedure SetEffectStyle(EsStyle: TEffectStyle);


procedure SetGraduateFace(GoGrad: TGraduateOption);

Default to custom colour scheme when changed


procedure SetGraduateFrom(ClrGrad: TColor);


procedure SetKeepLettersVertical(BKeep: Boolean);

Cannot align when rotated


procedure SetStyleHighlight(EoStyle: TEffectOption);

Only has effect if GraduateFace is not goNone


procedure SetStyleShadow(EoStyle: TEffectOption);


procedure SetTextAngle(Cnv: TCanvas; AAngle: TAngleRange);


Properties


property Align :

Publish inherited properties


property Alignment :


property Angle : TAngleRange


property AsButton : Boolean


property Caption :


property Color :


property ColourHighlight : TColor


property ColourScheme : TColourScheme


property ColourShadow : TColor


property Cursor :


property DepthHighlight : TEffectDepth

Publish specialised properties


property DepthShadow : TEffectDepth


property DirectionHighlight : TEffectDirection


property DirectionShadow : TEffectDirection


property DragCursor :


property DragMode :


property EffectStyle : TEffectStyle


property Enabled :


property FocusControl :


property Font :


property GraduateFace : TGraduateOption


property GraduateFrom : TColor


property KeepLettersVertical : Boolean


property ParentColor :


property ParentFont :


property ParentShowHint :


property ShowAccelChar :


property ShowHint :


property StyleHighlight : TEffectOption


property StyleShadow : TEffectOption


property Transparent :


property Visible :


property WordWrap :


property Version : String


Events


event OnClick :


event OnDblClick :


event OnDragDrop :


event OnDragOver :


event OnEndDrag :


event OnMouseDown :


event OnMouseMove :


event OnMouseUp :


Variables


BChangingScheme : Boolean;

Is preset style being invoked ?


BChangingStyle : Boolean;


ClrSchemes : array [TColourScheme,TColourPosition] of TColor;

Is preset colour scheme being invoked ?


DCosAngle : Double;


DCosSquared : Double;


DDegToRad : Double;


DSinAngle : Double;


DSinSquared : Double;


FAngle : TAngleRange;


FAsButton : Boolean;


FColourHighlight : TColor;


FColourScheme : TColourScheme;


FColourShadow : TColor;


FDepthHighlight : TEffectDepth;

Private declarations


FDepthShadow : TEffectDepth;


FDirectionHighlight : TEffectDirection;


FDirectionShadow : TEffectDirection;


FEffectStyle : TEffectStyle;


FGraduateFace : TGraduateOption;


FGraduateFrom : TColor;


FKeepLettersVertical : Boolean;


FStyleHighlight : TEffectOption;


FStyleShadow : TEffectOption;


FVersion : String;