A Scheme is named a mapping from VisualRoles (e.g. VisualRole.Focus) to Attributes, defining how a View should look based on its purpose (e.g. Menu or Dialog). @Terminal.Gui.SchemeManager.Schemes is a dictionary of Schemes, indexed by name.
A Scheme defines how Views look based on their semantic purpose. The following schemes are supported:
| Scheme Name | Description |
|---|---|
| Base | The base scheme used for most Views. |
| Dialog | The dialog scheme; used for Dialog, MessageBox, and other views dialog-like views. |
| Error | The scheme for showing errors, such as in ErrorQuery. |
| Menu | The menu scheme; used for Terminal.Gui.Menu, MenuBar, and StatusBar. |
| TopLevel | The application TopLevel scheme; used for the TopLevel View. |
@Terminal.Gui.SchemeManager manages the set of available schemes and provides a set of convenience methods for getting the current scheme and for overriding the default values for these schemes.
Scheme dialogScheme = SchemeManager.GetScheme (Schemes.Dialog);
ConfigurationManager can be used to override the default values for these schemes and add additional schemes.