Namespace Terminal.Gui
Classes
- Application
A static, singleton class providing the main application driver for Terminal.Gui apps.
- Application.ResizedEventArgs
Event arguments for the Resized event.
- Application.RunState
Captures the execution state for the provided Toplevel view.
- Autocomplete
Renders an overlay on another view at a given point that allows selecting from a range of 'autocomplete' options.
- Border
Draws a border, background, or both around another element.
- Border.ToplevelContainer
A sealed Toplevel derived class to implement Border feature. This is only a wrapper to get borders on a toplevel and is recommended using another derived, like Window where is possible to have borders with or without border line or spacing around.
- Clipboard
Provides cut, copy, and paste support for the OS clipboard.
- ClipboardBase
Shared abstract class to enforce rules from the implementation of the IClipboard interface.
- CollectionNavigator
Navigates a collection of items using keystrokes. The keystrokes are used to build a search string. The SearchString is used to find the next item in the collection that matches the search string when GetNextMatchingItem(int, char) is called.
If the user types keystrokes that can't be found in the collection, the search string is cleared and the next item is found that starts with the last keystroke.
If the user pauses keystrokes for a short time (see TypingDelay), the search string is cleared.
- CollectionNavigator.KeystrokeNavigatorEventArgs
Event arguments for the SearchStringChanged event.
- ColorPicker
The ColorPickerView Color picker.
- ColorScheme
Defines the color Attributes for common visible elements in a View. Containers such as Window and FrameView use ColorScheme to determine the colors used by sub-views.
- Colors
The default ColorSchemes for the application.
- ComboBox
Provides a drop-down list of items the user can select from.
- ConsoleDriver
ConsoleDriver is an abstract class that defines the requirements for a console driver.
There are currently three implementations: CursesDriver (for Unix and Mac), WindowsDriver, and NetDriver that uses the .NET Console API.
- ConsoleKeyMapping
Helper class to handle the scan code and virtual key from a ConsoleKey.
- ContextMenu
ContextMenu provides a pop-up menu that can be positioned anywhere within a View. ContextMenu is analogous to MenuBar and, once activated, works like a sub-menu of a MenuBarItem (but can be positioned anywhere).
By default, a ContextMenu with sub-menus is displayed in a cascading manner, where each sub-menu pops out of the ContextMenu frame (either to the right or left, depending on where the ContextMenu is relative to the edge of the screen). By setting UseSubMenusSingleFrame to true, this behavior can be changed such that all sub-menus are drawn within the ContextMenu frame.
ContextMenus can be activated using the Shift-F10 key (by default; use the Key to change to another key).
Callers can cause the ContextMenu to be activated on a right-mouse click (or other interaction) by calling Show().
ContextMenus are located using screen using screen coordinates and appear above all other Views.
- DateTimeEventArgs<T>
Defines the event arguments for DateChanged and TimeChanged events.
- Dialog
The DialogView is a Window that by default is centered and contains one or more Buttons. It defaults to the Dialog color scheme and has a 1 cell padding around the edges.
- EscSeqReqProc
Manages a list of EscSeqReqStatus.
- EscSeqReqStatus
Represents the state of an ANSI escape sequence request.
- EscSeqUtils
Provides a platform-independent API for managing ANSI escape sequence codes.
- FakeDriver
Implements a mock ConsoleDriver for unit testing
- FileDialog
Base class for the OpenDialog and the SaveDialog
- FrameView
The FrameView is a container frame that draws a frame around the contents. It is similar to a GroupBox in Windows.
- GraphView
Control for rendering graphs (bar, scatter etc)
- HexView.HexViewEventArgs
Defines the event arguments for PositionChanged event.
- KeyEvent
Describes a keyboard event.
- KeyModifiers
Identifies the state of the "shift"-keys within a event.
- Label
The Label View displays a string at a given position and supports multiple lines separated by newline characters. Multi-line Labels support word wrap.
- LineView
A straight line control either horizontal or vertical
- ListView
ListView View renders a scrollable list of data where each item can be activated to perform an action.
- ListWrapper
Supports all classes in the .NET Framework class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all classes in the .NET Framework; it is the root of the type hierarchy.To browse the .NET Framework source code for this type, see the Reference Source.
- MainLoop
Simple main loop implementation that can be used to monitor file descriptor, run timers and idle handlers.
- MainLoop.Timeout
Provides data for timers running manipulation.
- MenuBar
Provides a menu bar that spans the top of a Toplevel View with drop-down and cascading menus.
By default, any sub-sub-menus (sub-menus of the MenuItems added to MenuBarItems) are displayed in a cascading manner, where each sub-sub-menu pops out of the sub-menu frame (either to the right or left, depending on where the sub-menu is relative to the edge of the screen). By setting UseSubMenusSingleFrame to true, this behavior can be changed such that all sub-sub-menus are drawn within a single frame below the MenuBar.
- MenuBarItem
MenuBarItem is a menu item on an app's MenuBar. MenuBarItems do not support Shortcut.
- MenuClosingEventArgs
An EventArgs which allows passing a cancelable menu closing event.
- MenuItem
A MenuItem has title, an associated help text, and an action to execute on activation. MenuItems can also have a checked indicator (see Checked).
- MenuOpeningEventArgs
An EventArgs which allows passing a cancelable menu opening event or replacing with a new MenuBarItem.
- MessageBox
MessageBox displays a modal message to the user, with a title, a message and a series of options that the user can choose from.
- MouseEvent
Low-level construct that conveys the details of mouse events, such as coordinates and button state, from ConsoleDrivers up to Application and Views.
- OpenDialog
The OpenDialogprovides an interactive dialog box for users to select files or directories.
- PanelView
A container for single Child that will allow to drawn Border in two ways. If UsePanelFrame the borders and the child will be accommodated in the available panel size, otherwise the panel will be resized based on the child and borders thickness sizes.
- Pos
Describes the position of a View which can be an absolute value, a percentage, centered, or relative to the ending dimension. Integer values are implicitly convertible to an absolute Pos. These objects are created using the static methods Percent, AnchorEnd, and Center. The Pos objects can be combined with the addition and subtraction operators.
- ProgressBar
A Progress Bar view that can indicate progress of an activity visually.
- RadioGroup
Displays a group of labels each with a selected indicator. Only one of those can be selected at a given time.
- Responder
Responder base class implemented by objects that want to participate on keyboard and mouse input.
- SaveDialog
The SaveDialog provides an interactive dialog box for users to pick a file to save.
- ScrollBarView
ScrollBarViews are views that display a 1-character scrollbar, either horizontal or vertical
- ScrollView
Scrollviews are views that present a window into a virtual space where subviews are added. Similar to the iOS UIScrollView.
- SelectedItemChangedArgs
Event arguments for the SelectedItemChagned event.
- ShortcutHelper
Represents a helper to manipulate shortcut keys used on views.
- StackExtensions
Extension of Stack<T> helper to work with specific IEqualityComparer<T>
- StatusBar
A status bar is a View that snaps to the bottom of a Toplevel displaying set of StatusItems. The StatusBar should be context sensitive. This means, if the main menu and an open text editor are visible, the items probably shown will be ~F1~ Help ~F2~ Save ~F3~ Load. While a dialog to ask a file to load is executed, the remaining commands will probably be ~F1~ Help. So for each context must be a new instance of a statusbar.
- StatusItem
StatusItem objects are contained by StatusBarViews. Each StatusItem has a title, a shortcut (hotkey), and an Action that will be invoked when the Shortcut is pressed. The Shortcut will be a global hotkey for the application in the current context of the screen. The colour of the Title will be changed after each ~ (can be customized using HotTextSpecifier). A Title set to
~F1~ Help
will render as F1 using HotNormal and Help as Normal.
- TabView
Control that hosts multiple sub views, presenting a single one at once
- TabView.Tab
A single tab in a TabView
- TabView.TabChangedEventArgs
Describes a change in SelectedTab
- TabView.TabMouseEventArgs
Describes a mouse event over a specific TabView.Tab in a TabView.
- TabView.TabStyle
Describes render stylistic selections of a TabView
- TableView.CellActivatedEventArgs
Defines the event arguments for CellActivated event
- TableView.CellColorGetterArgs
Arguments for a TableView.CellColorGetterDelegate. Describes a cell for which a rendering ColorScheme is being sought
- TableView.ColumnStyle
Describes how to render a given column in a TableView including Alignment and textual representation of cells (e.g. date formats)
- TableView.RowColorGetterArgs
Arguments for TableView.RowColorGetterDelegate. Describes a row of data in a DataTable for which ColorScheme is sought.
- TableView.SelectedCellChangedEventArgs
Defines the event arguments for SelectedCellChanged
- TableView.TableSelection
Describes a selected region of the table
- TableView.TableStyle
Defines rendering options that affect how the table is displayed.
- TextChangingEventArgs
An EventArgs which allows passing a cancelable new text value event.
- TextFieldAutocomplete
Renders an overlay on another view at a given point that allows selecting from a range of 'autocomplete' options. An implementation on a TextField.
- TextFormatter
Provides text formatting capabilities for console apps. Supports, hotkeys, horizontal alignment, multiple lines, and word-based line wrap.
- TextValidateField
Text field that validates input through a ITextValidateProvider
- TextView.ContentsChangedEventArgs
Event arguments for events for when the contents of the TextView change. E.g. the ContentsChanged event.
- TextViewAutocomplete
Renders an overlay on another view at a given point that allows selecting from a range of 'autocomplete' options. An implementation on a TextView.
- Toplevel
Toplevel views can be modally executed. They are used for both an application's main view (filling the entire screen and for pop-up views such as Dialog, MessageBox, and Wizard.
- ToplevelComparer
Implements the IComparer<T> to sort the Toplevel from the MdiChildes if needed.
- ToplevelEqualityComparer
Implements the IEqualityComparer<T> for comparing two Toplevels used by StackExtensions.
- TreeView
Convenience implementation of generic TreeView<T> for any tree were all nodes implement ITreeNode.
- TreeViewTextFilter<T>
ITreeViewFilter<T> implementation which searches the AspectGetter of the model for the given Text.
- TreeView<T>
Hierarchical tree view with expandable branches. Branch objects are dynamically determined when expanded using a user defined ITreeBuilder<T>.
- TrueColor
Indicates the RGB for true colors.
- View
View is the base class for all views on the screen and represents a visible element that can render itself and contains zero or more nested views.
- View.FocusEventArgs
Defines the event arguments for SetFocus(View)
- View.KeyEventEventArgs
Defines the event arguments for KeyEvent
- View.LayoutEventArgs
Event arguments for the LayoutComplete event.
- View.MouseEventArgs
Specifies the event arguments for MouseEvent. This is a higher-level construct than the wrapped MouseEvent class and is used for the events defined on View and subclasses of View (e.g. MouseEnter and MouseClick).
- Window.TitleEventArgs
An EventArgs which allows passing a cancelable new Title value event.
- Wizard
Provides navigation and a user interface (UI) to collect related data across multiple steps. Each step (Wizard.WizardStep) can host arbitrary Views, much like a Dialog. Each step also has a pane for help text. Along the bottom of the Wizard view are customizable buttons enabling the user to navigate forward and backward through the Wizard.
- Wizard.StepChangeEventArgs
EventArgs for Wizard.WizardStep events.
- Wizard.WizardButtonEventArgs
EventArgs for Wizard.WizardStep transition events.
- Wizard.WizardStep
Represents a basic step that is displayed in a Wizard. The Wizard.WizardStep view is divided horizontally in two. On the left is the content view where Views can be added, On the right is the help for the step. Set HelpText to set the help text. If the help text is empty the help pane will not be shown.
If there are no Views added to the WizardStep the HelpText (if not empty) will fill the wizard step.
- Wizard.WizardStep.TitleEventArgs
An EventArgs which allows passing a cancelable new Title value event.
Structs
- Attribute
Attributes are used as elements that contain both a foreground and a background or platform specific features.
- Point
Represents an ordered pair of integer x- and y-coordinates that defines a point in a two-dimensional plane.
- PointF
Represents an ordered pair of x and y coordinates that define a point in a two-dimensional plane.
- Rect
Stores a set of four integers that represent the location and size of a rectangle
- RectangleF
Stores the location and size of a rectangular region.
- Size
Stores an ordered pair of integers, which specify a Height and Width.
- SizeF
Represents the size of a rectangular region with an ordered pair of width and height.
- Thickness
Describes the thickness of a frame around a rectangle. Four int values describe the Left, Top, Right, and Bottom sides of the rectangle, respectively.
Interfaces
- IAutocomplete
Renders an overlay on another view at a given point that allows selecting from a range of 'autocomplete' options.
- IClipboard
Definition to interact with the OS clipboard.
- IListDataSource
Implement IListDataSource to provide custom rendering for a ListView.
- IMainLoopDriver
Public interface to create your own platform specific main loop driver.
- ITreeView
Interface for all non generic members of TreeView<T>.
- ITreeViewFilter<T>
Provides filtering for a TreeView.
Enums
- BorderStyle
Specifies the border style for a View and to be used by the Border class.
- Color
Colors that can be used to set the foreground and background colors in console applications.
- ConsoleDriver.DiagnosticFlags
Enables diagnostic functions
- CursorVisibility
Cursors Visibility that are displayed
- Dialog.ButtonAlignments
Determines the horizontal alignment of the Dialog buttons.
- DisplayModeLayout
Used for choose the display mode of this RadioGroup
- Key
The Key enumeration contains special encoding for some keys, but can also encode all the unicode values that can be passed.
- LayoutStyle
Determines the LayoutStyle for a View, if Absolute, during LayoutSubviews(), the value from the Frame will be used, if the value is Computed, then Frame will be updated from the X, Y Pos objects and the Width and Height Dim objects.
- MenuItemCheckStyle
Specifies how a MenuItem shows selection state.
- MouseFlags
Mouse flags reported in MouseEvent.
- OpenDialog.OpenMode
Determine which System.IO type to open.
- ProgressBarFormat
Specifies the format that a ProgressBar uses to indicate the visual presentation.
- ProgressBarStyle
Specifies the style that a ProgressBar uses to indicate the progress of an operation.
- TextAlignment
Text alignment enumeration, controls how text is displayed.
- TextDirection
Text direction enumeration, controls how text is displayed.
- VerticalTextAlignment
Vertical text alignment enumeration, controls how text is displayed.
Delegates
- TableView.CellColorGetterDelegate
Delegate for providing color to TableView cells based on the value being rendered
- TableView.RowColorGetterDelegate
Delegate for providing color for a whole row of a TableView