|
|
(4 intermediate revisions by the same user not shown) |
Line 6: |
Line 6: |
| | | |
| '''Ultibo Generic Shell unit''' | | '''Ultibo Generic Shell unit''' |
− |
| |
− | ''To be documented''
| |
| | | |
| === Constants === | | === Constants === |
Line 61: |
Line 59: |
| </div></div> | | </div></div> |
| <br /> | | <br /> |
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;"> |
| + | <div style="font-size: 14px; padding-left: 12px;">'''Shell cursor mode''' <code> SHELL_CURSOR_MODE_* </code></div> |
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> |
| + | {| class="wikitable" style="font-size: 14px; background: white;" |
| + | |- |
| + | | <code>SHELL_CURSOR_MODE_INSERT = 0;</code> |
| + | | style="width: 50%;"| |
| + | |- |
| + | | <code>SHELL_CURSOR_MODE_OVERWRITE = 1;</code> |
| + | | |
| + | |- |
| + | |} |
| + | </div></div> |
| + | <br /> |
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;"> |
| + | <div style="font-size: 14px; padding-left: 12px;">'''Shell cursor shape''' <code> SHELL_CURSOR_SHAPE_* </code></div> |
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> |
| + | {| class="wikitable" style="font-size: 14px; background: white;" |
| + | |- |
| + | | <code>SHELL_CURSOR_SHAPE_LINE = 0;</code> |
| + | | style="width: 50%;"| |
| + | |- |
| + | | <code>SHELL_CURSOR_SHAPE_BAR = 1;</code> |
| + | | |
| + | |- |
| + | | <code>SHELL_CURSOR_SHAPE_BLOCK = 2;</code> |
| + | | |
| + | |- |
| + | |} |
| + | </div></div> |
| + | <br /> |
| <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;"> | | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;"> |
| <div style="font-size: 14px; padding-left: 12px;">'''Shell session flag''' <code> SHELL_SESSION_FLAG_* </code></div> | | <div style="font-size: 14px; padding-left: 12px;">'''Shell session flag''' <code> SHELL_SESSION_FLAG_* </code></div> |
Line 94: |
Line 123: |
| | <code>SHELL_COMMAND_FLAG_EXTENDED = $00000008;</code> | | | <code>SHELL_COMMAND_FLAG_EXTENDED = $00000008;</code> |
| | Extended command, pass command name to command for extended handling | | | Extended command, pass command name to command for extended handling |
| + | |- |
| + | | <code>SHELL_COMMAND_FLAG_COMPLETION = $00000008;</code> |
| + | | Command supports auto completion |
| |- | | |- |
| |} | | |} |
Line 171: |
Line 203: |
| |- | | |- |
| | <code>SHELL_ALIAS_CLEAR = 'CLEAR';</code> | | | <code>SHELL_ALIAS_CLEAR = 'CLEAR';</code> |
| + | | |
| + | |- |
| + | | <code>SHELL_ALIAS_REBOOT = 'REBOOT';</code> |
| | | | | |
| + | |- |
| + | |} |
| + | </div></div> |
| + | <br /> |
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;"> |
| + | <div style="font-size: 14px; padding-left: 12px;">'''Shell history''' <code> SHELL_HISTORY_* </code></div> |
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> |
| + | {| class="wikitable" style="font-size: 14px; background: white;" |
| + | |- |
| + | | <code>SHELL_HISTORY_MAX_COUNT = 100;</code> |
| + | | style="width: 50%;"| |
| |- | | |- |
| |} | | |} |
Line 186: |
Line 232: |
| | <code>SHELL_LOG_LEVEL_INFO = LOG_LEVEL_INFO;</code> | | | <code>SHELL_LOG_LEVEL_INFO = LOG_LEVEL_INFO;</code> |
| | Shell informational messages | | | Shell informational messages |
| + | |- |
| + | | <code>SHELL_LOG_LEVEL_WARN = LOG_LEVEL_WARN;</code> |
| + | | Shell warning messages |
| |- | | |- |
| | <code>SHELL_LOG_LEVEL_ERROR = LOG_LEVEL_ERROR;</code> | | | <code>SHELL_LOG_LEVEL_ERROR = LOG_LEVEL_ERROR;</code> |
Line 206: |
Line 255: |
| | | |
| | | |
− | '''Shell manager''' | + | '''Shell specific classes |
| | | |
− | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;" |
− | | + | |
− | <code>TShellManager = class(TObject)</code>
| + | |
− | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
| + | |
− | {| class="wikitable" style="font-size: 14px; background: white;"
| + | |
| |- | | |- |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div> | + | | [[TShellManager|<code>TShellManager = class(TObject)</code>]] |
| |- | | |- |
− | | <code>constructor Create;</code> | + | |} |
− | | style="width: 50%;"| | + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;" |
| |- | | |- |
− | | <code>destructor Destroy; override;</code> | + | | [[TShell|<code>TShell = class(TListObject)</code>]] |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
| + | |
− | |-
| + | |
− | | <code>FLock:TCriticalSectionHandle;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>FShells:TLinkedList;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>FCommands:TLinkedList;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
| + | |
− | |-
| + | |
− | | <code>function AcquireLock:Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function ReleaseLock:Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
| + | |
− | |-
| + | |
− | | <code>function GetShell(APrevious:TShell; ALock,AUnlock:Boolean):TShell;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function FindShell(const AName:String):TShell;</code> | + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function RegisterShell(AShell:TShell):Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DeregisterShell(AShell:TShell):Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function GetCommand(APrevious:TShellCommand; ALock,AUnlock:Boolean):TShellCommand;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function FindCommand(const AName:String):TShellCommand;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DefaultCommand:TShellCommand;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function RegisterCommand(ACommand:TShellCommand):Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DeregisterCommand(ACommand:TShellCommand):Boolean;</code>
| + | |
− | |
| + | |
| |- | | |- |
| |} | | |} |
− | </div></div>
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;" |
− | | + | |
− | '''Shell'''
| + | |
− | | + | |
− | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
| + | |
− | | + | |
− | <code>TShell = class(TListObject)</code>
| + | |
− | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
| + | |
− | {| class="wikitable" style="font-size: 14px; background: white;"
| + | |
| |- | | |- |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div> | + | | [[TShellSession|<code>TShellSession = class(TListObject)</code>]] |
− | |-
| + | |
− | | <code>constructor Create;</code>
| + | |
− | | style="width: 50%;"|
| + | |
− | |-
| + | |
− | | <code>destructor Destroy; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
| + | |
− | |-
| + | |
− | | <code>FManager:TShellManager;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>FAuthenticator:TAuthenticator;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>FLock:TCriticalSectionHandle;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>FSessions:TLinkedList;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>FCommands:TLinkedList;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>FBanner:String;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>FPrompt:String;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>FError:String;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>FName:String;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>FHash:LongWord;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>FFlags:LongWord;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>procedure SetAuthenticator(AAuthenticator:TAuthenticator);</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function GetBanner:String;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>procedure SetBanner(const ABanner:String);</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function GetPrompt:String;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>procedure SetPrompt(const APrompt:String);</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function GetError:String;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>procedure SetError(const AError:String);</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function GetName:String;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>procedure SetName(const AName:String);</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>procedure SetFlags(AFlags:LongWord);</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
| + | |
− | |-
| + | |
− | | <code>function AcquireLock:Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function ReleaseLock:Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
| + | |
− | |-
| + | |
− | | <code>property Manager:TShellManager read FManager;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>property Authenticator:TAuthenticator read FAuthenticator write SetAuthenticator;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>property Banner:String read GetBanner write SetBanner;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>property Prompt:String read GetPrompt write SetPrompt;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>property Error:String read GetError write SetError;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>property Name:String read GetName write SetName;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>property Hash:LongWord read FHash;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>property Flags:LongWord read FFlags write SetFlags;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function DoClear(ASession:TShellSession):Boolean; virtual;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function DoBanner(ASession:TShellSession):Boolean; virtual;</code> | + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoPrompt(ASession:TShellSession):Boolean; virtual;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoError(ASession:TShellSession):Boolean; virtual;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function DoInput(ASession:TShellSession; var AInput:String):Boolean; virtual;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function DoOutput(ASession:TShellSession; const AOutput:String):Boolean; virtual;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoOutputEx(ASession:TShellSession; const AOutput:String; AReturn:Boolean):Boolean; virtual;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function DoGetSize(ASession:TShellSession; var ARows,ACols:LongWord):Boolean; virtual;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoSetSize(ASession:TShellSession; ARows,ACols:LongWord):Boolean; virtual;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function DoGetCursor(ASession:TShellSession; var ARow,ACol:LongWord):Boolean; virtual;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoSetCursor(ASession:TShellSession; ARow,ACol:LongWord):Boolean; virtual;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function DoGetColors(ASession:TShellSession; var AForecolor,ABackcolor:LongWord):Boolean; virtual;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoSetColors(ASession:TShellSession; AForecolor,ABackcolor:LongWord):Boolean; virtual;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function DoGetCoordinates(ASession:TShellSession; var ARow,ACol:LongWord):Boolean; virtual;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoSetCoordinates(ASession:TShellSession; ARow,ACol:LongWord):Boolean; virtual;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function GetSession(APrevious:TShellSession; ALock,AUnlock:Boolean):TShellSession;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function FindSession(AIdentifier:LongWord):TShellSession;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function CreateSession(AIdentifier:LongWord):TShellSession;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DestroySession(ASession:TShellSession):Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function RegisterSession(ASession:TShellSession):Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DeregisterSession(ASession:TShellSession):Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function GetCommand(APrevious:TShellCommand; ALock,AUnlock:Boolean):TShellCommand;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function FindCommand(const AName:String):TShellCommand;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DefaultCommand:TShellCommand;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function RegisterCommand(ACommand:TShellCommand):Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DeregisterCommand(ACommand:TShellCommand):Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function MatchCommand(const ACommand:String; var AContinue:Boolean):TShellCommand; virtual;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function ProcessCommand(ASession:TShellSession; const ACommand:String):Boolean; virtual;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function CommandName(const ACommand:String):String;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function CommandSplit(const ACommand:String):TStrings;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function CommandParse(const ACommand:String; var AName:String; var AParameters:TStrings):Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function CommandIndex(AIndex:Integer; const ACommand:String):String;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function ParameterIndex(AIndex:Integer; AParameters:TStrings):String;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function ParameterValue(const AParameter:String; AParameters:TStrings):String;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function ParameterExists(const AParameter:String; AParameters:TStrings):Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function ParameterValueEx(const AParameter:String; AParameters:TStrings; APlus,AMinus:Boolean):String;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function ParameterExistsEx(const AParameter:String; AParameters:TStrings; APlus,AMinus:Boolean):Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function AddOutput(var AOutput:String; ACol:LongWord; const AValue:String):Boolean;</code>
| + | |
− | |
| + | |
| |- | | |- |
| |} | | |} |
− | </div></div>
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;" |
− | | + | |
− | '''Shell session'''
| + | |
− |
| + | |
− | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
| + | |
− | | + | |
− | <code>TShellSession = class(TListObject)</code>
| + | |
− | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
| + | |
− | {| class="wikitable" style="font-size: 14px; background: white;"
| + | |
| |- | | |- |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div> | + | | [[TShellCommand|<code>TShellCommand = class(TListObject)</code>]] |
− | |-
| + | |
− | | <code>constructor Create(AShell:TShell; AIdentifier:LongWord);</code> | + | |
− | | style="width: 50%;"|
| + | |
− | |-
| + | |
− | | <code>destructor Destroy; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
| + | |
− | |-
| + | |
− | | <code>FShell:TShell;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>FLock:TCriticalSectionHandle; </code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>FIdentifier:LongWord;</code>
| + | |
− | | Unique identifier for this session
| + | |
− | |-
| + | |
− | | <code>FFlags:LongWord;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>FPrompt:String;</code>
| + | |
− | | Current prompt for this session
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>FData:Pointer;</code>
| + | |
− | | Shell private data for this session
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>procedure SetFlags(AFlags:LongWord);</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>procedure SetData(AData:Pointer);</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function GetPrompt:String;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>procedure SetPrompt(const APrompt:String);</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
| + | |
− | |-
| + | |
− | | <code>function AcquireLock:Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function ReleaseLock:Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
| + | |
− | |-
| + | |
− | | <code>property Shell:TShell read FShell;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>property Identifier:LongWord read FIdentifier;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>property Flags:LongWord read FFlags write SetFlags;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>property Prompt:String read GetPrompt write SetPrompt;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>property Data:Pointer read FData write SetData;</code>
| + | |
− | |
| + | |
| |- | | |- |
| |} | | |} |
− | </div></div>
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;" |
− | | + | |
− | '''Shell command'''
| + | |
− | | + | |
− | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
| + | |
− | | + | |
− | <code>TShellCommand = class(TListObject)</code>
| + | |
− | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
| + | |
− | {| class="wikitable" style="font-size: 14px; background: white;"
| + | |
| |- | | |- |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div> | + | | [[TShellAlias|<code>TShellAlias = class(TListObject)</code>]] |
− | |-
| + | |
− | | <code>constructor Create;</code>
| + | |
− | | style="width: 50%;"|
| + | |
− | |-
| + | |
− | | <code>destructor Destroy; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
| + | |
− | |-
| + | |
− | | <code>FManager:TShellManager;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>FLock:TCriticalSectionHandle; </code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>FAliases:TLinkedList;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>FName:String;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>FHash:LongWord;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>FFlags:LongWord;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function GetName:String;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>procedure SetName(const AName:String);</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>procedure SetFlags(AFlags:LongWord);</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
| + | |
− | |-
| + | |
− | | <code>function AcquireLock:Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function ReleaseLock:Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
| + | |
− | |-
| + | |
− | | <code>property Manager:TShellManager read FManager;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>property Name:String read GetName write SetName;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>property Hash:LongWord read FHash;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>property Flags:LongWord read FFlags write SetFlags;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function DoHelp(AShell:TShell; ASession:TShellSession):Boolean; virtual;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoInfo(AShell:TShell; ASession:TShellSession):Boolean; virtual;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoCommand(AShell:TShell; ASession:TShellSession; AParameters:TStrings):Boolean; virtual;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoDefault(AShell:TShell; ASession:TShellSession; const AName:String; AParameters:TStrings):Boolean; virtual;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoExtended(AShell:TShell; ASession:TShellSession; const AName:String; AParameters:TStrings):Boolean; virtual;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function GetAlias(APrevious:TShellAlias; ALock,AUnlock:Boolean):TShellAlias;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function FindAlias(const AName:String):TShellAlias;</code> | + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function RegisterAlias(AAlias:TShellAlias):Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DeregisterAlias(AAlias:TShellAlias):Boolean;</code>
| + | |
− | |
| + | |
| |- | | |- |
| |} | | |} |
− | </div></div>
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;" |
− | | + | |
− | '''Shell alias'''
| + | |
− |
| + | |
− | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
| + | |
− | | + | |
− | <code>TShellAlias = class(TListObject)</code>
| + | |
− | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
| + | |
− | {| class="wikitable" style="font-size: 14px; background: white;"
| + | |
| |- | | |- |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div> | + | | [[TShellHistory|<code>TShellHistory = class(TListObject)</code>]] |
− | |-
| + | |
− | | <code>constructor Create;</code> | + | |
− | | style="width: 50%;"|
| + | |
− | |-
| + | |
− | | <code>destructor Destroy; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
| + | |
− | |-
| + | |
− | | <code>FLock:TCriticalSectionHandle; </code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>FName:String;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>FHash:LongWord;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>FFlags:LongWord;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | | <code>function GetName:String;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>procedure SetName(const AName:String);</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>procedure SetFlags(AFlags:LongWord);</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
| + | |
− | |-
| + | |
− | | <code>function AcquireLock:Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function ReleaseLock:Boolean;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
| + | |
− | |-
| + | |
− | | <code>property Name:String read GetName write SetName;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>property Hash:LongWord read FHash;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>property Flags:LongWord read FFlags write SetFlags;</code>
| + | |
− | |
| + | |
| |- | | |- |
| |} | | |} |
− | </div></div>
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;" |
− | | + | |
− | '''Shell command help'''
| + | |
− | | + | |
− | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
| + | |
− | | + | |
− | <code>TShellCommandHelp = class(TShellCommand)</code>
| + | |
− | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
| + | |
− | {| class="wikitable" style="font-size: 14px; background: white;"
| + | |
| |- | | |- |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div> | + | | [[TShellCommandHelp|<code>TShellCommandHelp = class(TShellCommand)</code>]] |
− | |-
| + | |
− | | <code>constructor Create;</code> | + | |
− | | style="width: 50%;"|
| + | |
− | |-
| + | |
− | | <code>destructor Destroy; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
| + | |
− | |-
| + | |
− | | <code>function DoInfo(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
| + | |
− | |
| + | |
| |- | | |- |
| |} | | |} |
− | </div></div>
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;" |
− | | + | |
− | '''Shell command information'''
| + | |
− | | + | |
− | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
| + | |
− | | + | |
− | <code>TShellCommandInfo = class(TShellCommand)</code>
| + | |
− | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
| + | |
− | {| class="wikitable" style="font-size: 14px; background: white;"
| + | |
| |- | | |- |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div> | + | | [[TShellCommandInfo|<code>TShellCommandInfo = class(TShellCommand)</code>]] |
− | |-
| + | |
− | | <code>constructor Create;</code> | + | |
− | | style="width: 50%;"|
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
| + | |
− | |-
| + | |
− | | <code>function DoInfo(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoCommand(AShell:TShell; ASession:TShellSession; AParameters:TStrings):Boolean; override;</code>
| + | |
− | |
| + | |
| |- | | |- |
| |} | | |} |
− | </div></div>
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;" |
− | | + | |
− | '''Shell command version'''
| + | |
− | | + | |
− | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
| + | |
− | | + | |
− | <code>TShellCommandVer = class(TShellCommand)</code>
| + | |
− | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
| + | |
− | {| class="wikitable" style="font-size: 14px; background: white;"
| + | |
| |- | | |- |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div> | + | | [[TShellCommandVer|<code>TShellCommandVer = class(TShellCommand)</code>]] |
− | |-
| + | |
− | | <code>constructor Create;</code> | + | |
− | | style="width: 50%;"|
| + | |
− | |-
| + | |
− | | <code>destructor Destroy; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
| + | |
− | |-
| + | |
− | | <code>function DoHelp(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoInfo(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoCommand(AShell:TShell; ASession:TShellSession; AParameters:TStrings):Boolean; override;</code>
| + | |
− | |
| + | |
| |- | | |- |
| |} | | |} |
− | </div></div>
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;" |
− | | + | |
− | '''Shell command time'''
| + | |
− | | + | |
− | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
| + | |
− | | + | |
− | <code>TShellCommandTime = class(TShellCommand)</code>
| + | |
− | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
| + | |
− | {| class="wikitable" style="font-size: 14px; background: white;"
| + | |
| |- | | |- |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div> | + | | [[TShellCommandTime|<code>TShellCommandTime = class(TShellCommand)</code>]] |
− | |-
| + | |
− | | <code>constructor Create;</code> | + | |
− | | style="width: 50%;"|
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
| + | |
− | |-
| + | |
− | | <code>function DoHelp(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoInfo(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoCommand(AShell:TShell; ASession:TShellSession; AParameters:TStrings):Boolean; override;</code>
| + | |
− | |
| + | |
| |- | | |- |
| |} | | |} |
− | </div></div>
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;" |
− | | + | |
− | '''Shell command clear'''
| + | |
− | | + | |
− | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
| + | |
− | | + | |
− | <code>TShellCommandClear = class(TShellCommand)</code>
| + | |
− | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
| + | |
− | {| class="wikitable" style="font-size: 14px; background: white;"
| + | |
| |- | | |- |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div> | + | | [[TShellCommandClear|<code>TShellCommandClear = class(TShellCommand)</code>]] |
− | |-
| + | |
− | | <code>constructor Create;</code> | + | |
− | | style="width: 50%;"|
| + | |
− | |-
| + | |
− | | <code>destructor Destroy; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
| + | |
− | |-
| + | |
− | | <code>function DoHelp(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoInfo(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoCommand(AShell:TShell; ASession:TShellSession; AParameters:TStrings):Boolean; override;</code>
| + | |
− | |
| + | |
| |- | | |- |
| |} | | |} |
− | </div></div>
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;" |
− | | + | |
− | '''Shell command restart'''
| + | |
− | | + | |
− | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
| + | |
− | | + | |
− | <code>TShellCommandRestart = class(TShellCommand)</code>
| + | |
− | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
| + | |
− | {| class="wikitable" style="font-size: 14px; background: white;"
| + | |
| |- | | |- |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div> | + | | [[TShellCommandRestart|<code>TShellCommandRestart = class(TShellCommand)</code>]] |
− | |-
| + | |
− | | <code>constructor Create;</code> | + | |
− | | style="width: 50%;"|
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
| + | |
− | |-
| + | |
− | | <code>function DoHelp(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoInfo(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoCommand(AShell:TShell; ASession:TShellSession; AParameters:TStrings):Boolean; override;</code>
| + | |
− | |
| + | |
| |- | | |- |
| |} | | |} |
− | </div></div>
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;" |
− | | + | |
− | '''Shell command shutdown'''
| + | |
− | | + | |
− | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
| + | |
− | | + | |
− | <code>TShellCommandShutdown = class(TShellCommand)</code>
| + | |
− | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
| + | |
− | {| class="wikitable" style="font-size: 14px; background: white;"
| + | |
| |- | | |- |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div> | + | | [[TShellCommandShutdown|<code>TShellCommandShutdown = class(TShellCommand)</code>]] |
− | |-
| + | |
− | | <code>constructor Create;</code> | + | |
− | | style="width: 50%;"|
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
| + | |
− | |-
| + | |
− | | <code>function DoHelp(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoInfo(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoCommand(AShell:TShell; ASession:TShellSession; AParameters:TStrings):Boolean; override;</code>
| + | |
− | |
| + | |
| |- | | |- |
| |} | | |} |
− | </div></div>
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;" |
− |
| + | |
− | '''Shell command uptime'''
| + | |
− | | + | |
− | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
| + | |
− | | + | |
− | <code>TShellCommandUptime = class(TShellCommand)</code>
| + | |
− | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
| + | |
− | {| class="wikitable" style="font-size: 14px; background: white;"
| + | |
| |- | | |- |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div> | + | | [[TShellCommandUptime|<code>TShellCommandUptime = class(TShellCommand)</code>]] |
− | |-
| + | |
− | | <code>constructor Create;</code> | + | |
− | | style="width: 50%;"|
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
| + | |
− | |-
| + | |
− | | <code>function DoHelp(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoInfo(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoCommand(AShell:TShell; ASession:TShellSession; AParameters:TStrings):Boolean; override;</code>
| + | |
− | |
| + | |
| |- | | |- |
| |} | | |} |
− | </div></div>
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;" |
− | | + | |
− | '''Shell command threads'''
| + | |
− | | + | |
− | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
| + | |
− | | + | |
− | <code>TShellCommandThreads = class(TShellCommand)</code>
| + | |
− | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
| + | |
− | {| class="wikitable" style="font-size: 14px; background: white;"
| + | |
| |- | | |- |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div> | + | | [[TShellCommandThreads|<code>TShellCommandThreads = class(TShellCommand)</code>]] |
− | |-
| + | |
− | | <code>constructor Create;</code> | + | |
− | | style="width: 50%;"|
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
| + | |
− | |-
| + | |
− | | <code>function DoHelp(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoInfo(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoCommand(AShell:TShell; ASession:TShellSession; AParameters:TStrings):Boolean; override;</code>
| + | |
− | |
| + | |
| |- | | |- |
| |} | | |} |
− | </div></div>
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;" |
− | | + | |
− | '''Shell command memory'''
| + | |
− | | + | |
− | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
| + | |
− | | + | |
− | <code>TShellCommandMemory = class(TShellCommand)</code>
| + | |
− | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
| + | |
− | {| class="wikitable" style="font-size: 14px; background: white;"
| + | |
| |- | | |- |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div> | + | | [[TShellCommandMemory|<code>TShellCommandMemory = class(TShellCommand)</code>]] |
− | |-
| + | |
− | | <code>constructor Create;</code> | + | |
− | | style="width: 50%;"|
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
| + | |
− | |-
| + | |
− | | <code>function DoHelp(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoInfo(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoCommand(AShell:TShell; ASession:TShellSession; AParameters:TStrings):Boolean; override;</code>
| + | |
− | |
| + | |
| |- | | |- |
| |} | | |} |
− | </div></div>
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;" |
− | | + | |
− | '''Shell command devices'''
| + | |
− | | + | |
− | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
| + | |
− | | + | |
− | <code>TShellCommandDevices = class(TShellCommand)</code>
| + | |
− | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
| + | |
− | {| class="wikitable" style="font-size: 14px; background: white;"
| + | |
| |- | | |- |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div> | + | | [[TShellCommandDevices|<code>TShellCommandDevices = class(TShellCommand)</code>]] |
− | |-
| + | |
− | | <code>constructor Create;</code> | + | |
− | | style="width: 50%;"|
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
| + | |
− | |-
| + | |
− | |colspan="2"|
| + | |
− | |-
| + | |
− | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
| + | |
− | |-
| + | |
− | | <code>function DoHelp(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoInfo(AShell:TShell; ASession:TShellSession):Boolean; override;</code>
| + | |
− | |
| + | |
− | |-
| + | |
− | | <code>function DoCommand(AShell:TShell; ASession:TShellSession; AParameters:TStrings):Boolean; override;</code>
| + | |
− | |
| + | |
| |- | | |- |
| |} | | |} |
− | </div></div>
| |
| <br /> | | <br /> |
| | | |
Line 1,213: |
Line 376: |
| {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| |- | | |- |
− | ! '''Note''' | + | ! Note |
| | None documented | | | None documented |
| |- | | |- |
Line 1,228: |
Line 391: |
| {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| |- | | |- |
− | ! '''Note''' | + | ! Note |
| | None documented | | | None documented |
| |- | | |- |
Line 1,240: |
Line 403: |
| {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| |- | | |- |
− | ! '''Note''' | + | ! Note |
| | None documented | | | None documented |
| |- | | |- |
Line 1,252: |
Line 415: |
| {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| |- | | |- |
− | ! '''Note''' | + | ! Note |
| | None documented | | | None documented |
| |- | | |- |
Line 1,264: |
Line 427: |
| {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| |- | | |- |
− | ! '''Note''' | + | ! Note |
| | None documented | | | None documented |
| |- | | |- |
Line 1,276: |
Line 439: |
| {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| |- | | |- |
− | ! '''Note''' | + | ! Note |
| | None documented | | | None documented |
| |- | | |- |
Line 1,288: |
Line 451: |
| {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| |- | | |- |
− | ! '''Note''' | + | ! Note |
| | None documented | | | None documented |
| |- | | |- |
Line 1,300: |
Line 463: |
| {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| |- | | |- |
− | ! '''Note''' | + | ! Note |
| | None documented | | | None documented |
| |- | | |- |
Line 1,312: |
Line 475: |
| {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| |- | | |- |
− | ! '''Note''' | + | ! Note |
| | None documented | | | None documented |
| |- | | |- |
Line 1,327: |
Line 490: |
| {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| |- | | |- |
− | ! '''Note''' | + | ! Note |
| + | | None documented |
| + | |- |
| + | |} |
| + | </div></div> |
| + | <br /> |
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> |
| + | <pre style="border: 0; padding-bottom:0px;">procedure ShellLogInfo(const AText:String); inline;</pre> |
| + | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div> |
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> |
| + | {| class="wikitable" style="font-size: 14px; background: white;" |
| + | |- |
| + | ! Note |
| | None documented | | | None documented |
| |- | | |- |
Line 1,334: |
Line 509: |
| <br /> | | <br /> |
| <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> |
− | <pre style="border: 0; padding-bottom:0px;">procedure ShellLogInfo(const AText:String);</pre> | + | <pre style="border: 0; padding-bottom:0px;">procedure ShellLogWarn(const AText:String); inline;</pre> |
| <div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div> | | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div> |
| <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> |
| {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| |- | | |- |
− | ! '''Note''' | + | ! Note |
| | None documented | | | None documented |
| |- | | |- |
Line 1,346: |
Line 521: |
| <br /> | | <br /> |
| <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> |
− | <pre style="border: 0; padding-bottom:0px;">procedure ShellLogError(const AText:String);</pre> | + | <pre style="border: 0; padding-bottom:0px;">procedure ShellLogError(const AText:String); inline;</pre> |
| <div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div> | | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div> |
| <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> |
| {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| |- | | |- |
− | ! '''Note''' | + | ! Note |
| | None documented | | | None documented |
| |- | | |- |
Line 1,358: |
Line 533: |
| <br /> | | <br /> |
| <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> | | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;"> |
− | <pre style="border: 0; padding-bottom:0px;">procedure ShellLogDebug(const AText:String);</pre> | + | <pre style="border: 0; padding-bottom:0px;">procedure ShellLogDebug(const AText:String); inline;</pre> |
| <div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div> | | <div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div> |
| <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> | | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;"> |
| {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| |- | | |- |
− | ! '''Note''' | + | ! Note |
| | None documented | | | None documented |
| |- | | |- |