// These classes use a keybinding system based on the design implemented in Scintilla.Net which is an // MIT licensed open source project https://github.com/jacobslusser/ScintillaNET/blob/master/src/ScintillaNET/Command.cs namespace Terminal.Gui; /// Actions which can be performed by the application or bound to keys in a control. public enum Command { /// The default command. For this focuses the view. Default, /// Moves down one item (cell, line, etc...). LineDown, /// Extends the selection down one (cell, line, etc...). LineDownExtend, /// Moves down to the last child node of the branch that holds the current selection. LineDownToLastBranch, /// Scrolls down one (cell, line, etc...) (without changing the selection). ScrollDown, // -------------------------------------------------------------------- /// Moves up one (cell, line, etc...). LineUp, /// Extends the selection up one item (cell, line, etc...). LineUpExtend, /// Moves up to the first child node of the branch that holds the current selection. LineUpToFirstBranch, /// Scrolls up one item (cell, line, etc...) (without changing the selection). ScrollUp, /// /// Moves the selection left one by the minimum increment supported by the e.g. single /// character, cell, item etc. /// Left, /// Scrolls one item (cell, character, etc...) to the left ScrollLeft, /// /// Extends the selection left one by the minimum increment supported by the view e.g. single character, cell, /// item etc. /// LeftExtend, /// /// Moves the selection right one by the minimum increment supported by the view e.g. single character, cell, item /// etc. /// Right, /// Scrolls one item (cell, character, etc...) to the right. ScrollRight, /// /// Extends the selection right one by the minimum increment supported by the view e.g. single character, cell, /// item etc. /// RightExtend, /// Moves the caret to the start of the previous word. WordLeft, /// Extends the selection to the start of the previous word. WordLeftExtend, /// Moves the caret to the start of the next word. WordRight, /// Extends the selection to the start of the next word. WordRightExtend, /// Cuts to the clipboard the characters from the current position to the end of the line. CutToEndLine, /// Cuts to the clipboard the characters from the current position to the start of the line. CutToStartLine, /// Deletes the characters forwards. KillWordForwards, /// Deletes the characters backwards. KillWordBackwards, /// /// Toggles overwrite mode such that newly typed text overwrites the text that is already there (typically /// associated with the Insert key). /// ToggleOverwrite, /// /// Enables overwrite mode such that newly typed text overwrites the text that is already there (typically /// associated with the Insert key). /// EnableOverwrite, /// Disables overwrite mode () DisableOverwrite, /// Move one page down. PageDown, /// Move one page page extending the selection to cover revealed objects/characters. PageDownExtend, /// Move one page up. PageUp, /// Move one page up extending the selection to cover revealed objects/characters. PageUpExtend, /// Moves to the top/home. TopHome, /// Extends the selection to the top/home. TopHomeExtend, /// Moves to the bottom/end. BottomEnd, /// Extends the selection to the bottom/end. BottomEndExtend, /// Open the selected item. OpenSelectedItem, /// Toggle the checked state. ToggleChecked, /// Accepts the current state (e.g. selection, button press etc). Accept, /// Toggles the Expanded or collapsed state of a a list or item (with subitems). ToggleExpandCollapse, /// Expands a list or item (with subitems). Expand, /// Recursively Expands all child items and their child items (if any). ExpandAll, /// Collapses a list or item (with subitems). Collapse, /// Recursively collapses a list items of their children (if any). CollapseAll, /// Cancels an action or any temporary states on the control e.g. expanding a combo list. Cancel, /// Unix emulation. UnixEmulation, /// Deletes the character on the right. DeleteCharRight, /// Deletes the character on the left. DeleteCharLeft, /// Selects all objects. SelectAll, /// Deletes all objects. DeleteAll, /// Moves the cursor to the start of line. StartOfLine, /// Extends the selection to the start of line. StartOfLineExtend, /// Moves the cursor to the end of line. EndOfLine, /// Extends the selection to the end of line. EndOfLineExtend, /// Moves the cursor to the top of page. StartOfPage, /// Moves the cursor to the bottom of page. EndOfPage, /// Moves to the left page. PageLeft, /// Moves to the right page. PageRight, /// Moves to the left begin. LeftHome, /// Extends the selection to the left begin. LeftHomeExtend, /// Moves to the right end. RightEnd, /// Extends the selection to the right end. RightEndExtend, /// Undo changes. Undo, /// Redo changes. Redo, /// Copies the current selection. Copy, /// Cuts the current selection. Cut, /// Pastes the current selection. Paste, /// Quit a . QuitToplevel, /// Suspend a application (Only implemented in ). Suspend, /// Moves focus to the next view. NextView, /// Moves focuss to the previous view. PreviousView, /// Moves focus to the next view or Toplevel (case of Overlapped). NextViewOrTop, /// Moves focus to the next previous or Toplevel (case of Overlapped). PreviousViewOrTop, /// Refresh. Refresh, /// Toggles the selection. ToggleExtend, /// Inserts a new item. NewLine, /// Tabs to the next item. Tab, /// Tabs back to the previous item. BackTab, /// Saves the current document. Save, /// Saves the current document with a new name. SaveAs, /// Creates a new document. New, /// Moves selection to an item (e.g. highlighting a different menu item) without necessarily accepting it. Select, /// Shows context about the item (e.g. a context menu). ShowContextMenu }