// 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 using System; namespace Terminal.Gui { /// /// Actions which can be performed by the application or bound to keys in a control. /// public enum Command { /// /// 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 (used on Linux). /// 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 } }