Class TStateMachine (unit statmach)

Inherits from

TCustomPanel

Constructors


constructor Create(AOwner: TComponent);

****************************************************************************** ** ** TStateMachine **


Functions

destructor Destroy;


procedure ChangeState(Transition: TStateControl);

State change without transition

procedure Execute;

FConnector: TStateConnector;

procedure PostStateChange(State: TStateControl);

Check transitions

procedure Stop;


procedure CMDesignHitTest(var Msg: TWMMouse);


procedure DoOnChangeState(FromState, ToState: TStateControl);


procedure DoOnException(Node: TStateControl; E: Exception);


procedure DoSetState(Value :TStateControl);

PostStateChange(Value);

procedure MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer);


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

Confine cursor

procedure MouseUp(Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

Paint new

procedure Notification(AComponent: TComponent; Operation: TOperation);


procedure Paint;


procedure SetState(Value :TStateControl);

Active := False;

procedure SMStateTransition(var Message: TMessage);


Properties

property Active : boolean


property Align :


property Color :


property Font :


property Options : TStateMachineOptions


property State : TStateControl


property StopSignalled : Boolean


Events

event OnChangeState : TChangeStateEvent


event OnException : TStateExceptionEvent


Variables

FActive : boolean;


FConnector : TStateConnector;


FDesignMoving : TDesignMove;


FOnChangeState : TChangeStateEvent;


FOnException : TStateExceptionEvent;


FOptions : TStateMachineOptions;


FState : TStateControl;


FStopSignalled : Boolean;


Lines : TConnectorLines;


StateChanged : boolean;



Constructors


constructor Create(AOwner: TComponent);

****************************************************************************** ** ** TStateMachine **


Functions


destructor Destroy;


procedure ChangeState(Transition: TStateControl);

State change without transition


procedure Execute;

FConnector: TStateConnector;


procedure PostStateChange(State: TStateControl);

Check transitions


procedure Stop;


procedure CMDesignHitTest(var Msg: TWMMouse);


procedure DoOnChangeState(FromState, ToState: TStateControl);


procedure DoOnException(Node: TStateControl; E: Exception);


procedure DoSetState(Value :TStateControl);

PostStateChange(Value);


procedure MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer);


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

Confine cursor


procedure MouseUp(Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

Paint new


procedure Notification(AComponent: TComponent; Operation: TOperation);


procedure Paint;


procedure SetState(Value :TStateControl);

Active := False;


procedure SMStateTransition(var Message: TMessage);


Properties


property Active : boolean


property Align :


property Color :


property Font :


property Options : TStateMachineOptions


property State : TStateControl


property StopSignalled : Boolean


Events


event OnChangeState : TChangeStateEvent


event OnException : TStateExceptionEvent


Variables


FActive : boolean;


FConnector : TStateConnector;


FDesignMoving : TDesignMove;


FOnChangeState : TChangeStateEvent;


FOnException : TStateExceptionEvent;


FOptions : TStateMachineOptions;


FState : TStateControl;


FStopSignalled : Boolean;


Lines : TConnectorLines;


StateChanged : boolean;