Creates a new CommandExecutor instance.
The command execution context
Whether the current scope binds a command, so that executeCommand would run it. Runs nothing.
The key representing the command
True when the current scope's keymap has the command
Executes a command based on the provided key if it's valid for the current scope.
The key representing the command to execute
Whether the current scope binds the command, and so whether it was run
No resources to release; kept so the Controller's uniform dispose sequence can treat every registered component alike.
Executes commands based on key bindings within the current scope.
The current scope is always read live from the underlying Context, so it stays in sync when Context.toggleScope() is called.