delstat1.sct

来自「c#设计模式WithCla」· SCT 代码 · 共 68 行

SCT
68
字号
NO_OUTPUT_BEGIN
State code generation for Delphi from a state diagram
1.  Create the state diagram
2.  Generate - Generate State Code/Report
3.  Save unit file as controls.pas
4.  Compile controls.pas in Delphi
NO_OUTPUT_END

SCRIPT_NOREPEAT_HEADER_BEGIN
unit Controls ;

interface

type

States = ( [NO_RETURN STATE_LIST_NAME,DELETE_LAST_SYMBOL] ) ;

Events = ( [NO_RETURN EVENT_LIST_NAME,DELETE_LAST_SYMBOL] ) ;

Controller = class

  currentState : States;

  procedure Process ( anEvent : Events ) ;

  constructor DefaultInit;
	
  destructor Done; virtual;

end;

implementation

{-----------------------------------------------------------------------------------------------}
			
constructor Controller$.DefaultInit;
begin
  currentState := STATE_INITIAL_NAME ;
end; 

{-----------------------------------------------------------------------------------------------}
			{Update as required.}
destructor Controller$.Done;
begin
end;

{-----------------------------------------------------------------------------------------------}
			{ Process procedure  }
procedure Controller.Process ( anEvent : Events ) ; 
begin

SCRIPT_NOREPEAT_HEADER_END
[
  if ( currentState = STATE_NAME ) And ( anEvent = TRANSITION_EVENT ) And ( TRANSITION_CONDITION )
  then
    begin
      currentState := TRANSITION_NEXT_STATE ; 
      TRANSITION_ACTION 
    end;
]

SCRIPT_NOREPEAT_FOOTER_BEGIN
end;    


end.
SCRIPT_NOREPEAT_FOOTER_END

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?