123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392 |
- // 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 {
- /// <summary>
- /// Actions which can be performed by the application or bound to keys in a <see cref="View"/> control.
- /// </summary>
- public enum Command {
- /// <summary>
- /// Moves down one item (cell, line, etc...).
- /// </summary>
- LineDown,
- /// <summary>
- /// Extends the selection down one (cell, line, etc...).
- /// </summary>
- LineDownExtend,
- /// <summary>
- /// Moves down to the last child node of the branch that holds the current selection.
- /// </summary>
- LineDownToLastBranch,
- /// <summary>
- /// Scrolls down one (cell, line, etc...) (without changing the selection).
- /// </summary>
- ScrollDown,
- // --------------------------------------------------------------------
- /// <summary>
- /// Moves up one (cell, line, etc...).
- /// </summary>
- LineUp,
- /// <summary>
- /// Extends the selection up one item (cell, line, etc...).
- /// </summary>
- LineUpExtend,
- /// <summary>
- /// Moves up to the first child node of the branch that holds the current selection.
- /// </summary>
- LineUpToFirstBranch,
- /// <summary>
- /// Scrolls up one item (cell, line, etc...) (without changing the selection).
- /// </summary>
- ScrollUp,
- /// <summary>
- /// Moves the selection left one by the minimum increment supported by the <see cref="View"/> e.g. single character, cell, item etc.
- /// </summary>
- Left,
- /// <summary>
- /// Scrolls one item (cell, character, etc...) to the left
- /// </summary>
- ScrollLeft,
- /// <summary>
- /// Extends the selection left one by the minimum increment supported by the view e.g. single character, cell, item etc.
- /// </summary>
- LeftExtend,
- /// <summary>
- /// Moves the selection right one by the minimum increment supported by the view e.g. single character, cell, item etc.
- /// </summary>
- Right,
- /// <summary>
- /// Scrolls one item (cell, character, etc...) to the right.
- /// </summary>
- ScrollRight,
- /// <summary>
- /// Extends the selection right one by the minimum increment supported by the view e.g. single character, cell, item etc.
- /// </summary>
- RightExtend,
- /// <summary>
- /// Moves the caret to the start of the previous word.
- /// </summary>
- WordLeft,
- /// <summary>
- /// Extends the selection to the start of the previous word.
- /// </summary>
- WordLeftExtend,
- /// <summary>
- /// Moves the caret to the start of the next word.
- /// </summary>
- WordRight,
- /// <summary>
- /// Extends the selection to the start of the next word.
- /// </summary>
- WordRightExtend,
- /// <summary>
- /// Cuts to the clipboard the characters from the current position to the end of the line.
- /// </summary>
- CutToEndLine,
- /// <summary>
- /// Cuts to the clipboard the characters from the current position to the start of the line.
- /// </summary>
- CutToStartLine,
- /// <summary>
- /// Deletes the characters forwards.
- /// </summary>
- KillWordForwards,
- /// <summary>
- /// Deletes the characters backwards.
- /// </summary>
- KillWordBackwards,
- /// <summary>
- /// Toggles overwrite mode such that newly typed text overwrites the text that is
- /// already there (typically associated with the Insert key).
- /// </summary>
- ToggleOverwrite,
- /// <summary>
- /// Enables overwrite mode such that newly typed text overwrites the text that is
- /// already there (typically associated with the Insert key).
- /// </summary>
- EnableOverwrite,
- /// <summary>
- /// Disables overwrite mode (<see cref="EnableOverwrite"/>)
- /// </summary>
- DisableOverwrite,
- /// <summary>
- /// Move one page down.
- /// </summary>
- PageDown,
- /// <summary>
- /// Move one page page extending the selection to cover revealed objects/characters.
- /// </summary>
- PageDownExtend,
- /// <summary>
- /// Move one page up.
- /// </summary>
- PageUp,
- /// <summary>
- /// Move one page up extending the selection to cover revealed objects/characters.
- /// </summary>
- PageUpExtend,
- /// <summary>
- /// Moves to the top/home.
- /// </summary>
- TopHome,
- /// <summary>
- /// Extends the selection to the top/home.
- /// </summary>
- TopHomeExtend,
- /// <summary>
- /// Moves to the bottom/end.
- /// </summary>
- BottomEnd,
- /// <summary>
- /// Extends the selection to the bottom/end.
- /// </summary>
- BottomEndExtend,
- /// <summary>
- /// Open the selected item.
- /// </summary>
- OpenSelectedItem,
- /// <summary>
- /// Toggle the checked state.
- /// </summary>
- ToggleChecked,
- /// <summary>
- /// Accepts the current state (e.g. selection, button press etc).
- /// </summary>
- Accept,
- /// <summary>
- /// Toggles the Expanded or collapsed state of a a list or item (with subitems).
- /// </summary>
- ToggleExpandCollapse,
- /// <summary>
- /// Expands a list or item (with subitems).
- /// </summary>
- Expand,
- /// <summary>
- /// Recursively Expands all child items and their child items (if any).
- /// </summary>
- ExpandAll,
- /// <summary>
- /// Collapses a list or item (with subitems).
- /// </summary>
- Collapse,
- /// <summary>
- /// Recursively collapses a list items of their children (if any).
- /// </summary>
- CollapseAll,
- /// <summary>
- /// Cancels an action or any temporary states on the control e.g. expanding
- /// a combo list.
- /// </summary>
- Cancel,
- /// <summary>
- /// Unix emulation.
- /// </summary>
- UnixEmulation,
- /// <summary>
- /// Deletes the character on the right.
- /// </summary>
- DeleteCharRight,
- /// <summary>
- /// Deletes the character on the left.
- /// </summary>
- DeleteCharLeft,
- /// <summary>
- /// Selects all objects.
- /// </summary>
- SelectAll,
- /// <summary>
- /// Deletes all objects.
- /// </summary>
- DeleteAll,
- /// <summary>
- /// Moves the cursor to the start of line.
- /// </summary>
- StartOfLine,
- /// <summary>
- /// Extends the selection to the start of line.
- /// </summary>
- StartOfLineExtend,
- /// <summary>
- /// Moves the cursor to the end of line.
- /// </summary>
- EndOfLine,
- /// <summary>
- /// Extends the selection to the end of line.
- /// </summary>
- EndOfLineExtend,
- /// <summary>
- /// Moves the cursor to the top of page.
- /// </summary>
- StartOfPage,
- /// <summary>
- /// Moves the cursor to the bottom of page.
- /// </summary>
- EndOfPage,
- /// <summary>
- /// Moves to the left page.
- /// </summary>
- PageLeft,
- /// <summary>
- /// Moves to the right page.
- /// </summary>
- PageRight,
- /// <summary>
- /// Moves to the left begin.
- /// </summary>
- LeftHome,
- /// <summary>
- /// Extends the selection to the left begin.
- /// </summary>
- LeftHomeExtend,
- /// <summary>
- /// Moves to the right end.
- /// </summary>
- RightEnd,
- /// <summary>
- /// Extends the selection to the right end.
- /// </summary>
- RightEndExtend,
- /// <summary>
- /// Undo changes.
- /// </summary>
- Undo,
- /// <summary>
- /// Redo changes.
- /// </summary>
- Redo,
- /// <summary>
- /// Copies the current selection.
- /// </summary>
- Copy,
- /// <summary>
- /// Cuts the current selection.
- /// </summary>
- Cut,
- /// <summary>
- /// Pastes the current selection.
- /// </summary>
- Paste,
- /// <summary>
- /// Quit a <see cref="Toplevel"/>.
- /// </summary>
- QuitToplevel,
- /// <summary>
- /// Suspend a application (used on Linux).
- /// </summary>
- Suspend,
- /// <summary>
- /// Moves focus to the next view.
- /// </summary>
- NextView,
- /// <summary>
- /// Moves focuss to the previous view.
- /// </summary>
- PreviousView,
- /// <summary>
- /// Moves focus to the next view or Toplevel (case of Overlapped).
- /// </summary>
- NextViewOrTop,
- /// <summary>
- /// Moves focus to the next previous or Toplevel (case of Overlapped).
- /// </summary>
- PreviousViewOrTop,
- /// <summary>
- /// Refresh.
- /// </summary>
- Refresh,
- /// <summary>
- /// Toggles the selection.
- /// </summary>
- ToggleExtend,
- /// <summary>
- /// Inserts a new item.
- /// </summary>
- NewLine,
- /// <summary>
- /// Tabs to the next item.
- /// </summary>
- Tab,
- /// <summary>
- /// Tabs back to the previous item.
- /// </summary>
- BackTab
- }
- }
|