| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- namespace Terminal.Gui.Configuration;
- /// <summary>
- /// Describes the location of the configuration settings. The constants can be combined (bitwise) to specify multiple
- /// locations. The more significant the bit, the higher the priority the location, meaning that the last location will
- /// override the
- /// earlier ones.
- /// </summary>
- [Flags]
- public enum ConfigLocations
- {
- /// <summary>
- /// No locaitons are specified. This is the default value.
- /// </summary>
- None = 0b_0000_0000,
- /// <summary>
- /// Settings of the <see cref="ConfigurationPropertyAttribute"/> static properites when the module is
- /// initiallly loaded.
- /// <para>
- /// When the module is initialized, the <see cref="ConfigurationManager"/> will retrieve the values of the
- /// configuration
- /// properties
- /// from their corresponding static properties. These are default settigs available even if
- /// <see cref="ConfigurationManager.IsEnabled"/>
- /// is <see langword="false"/>.
- /// </para>
- /// </summary>
- HardCoded = 0b_0000_0001,
- /// <summary>
- /// Settings defined in <c>Terminal.Gui.dll</c>'s resources (<c>Terminal.Gui.Resources.config.json</c>).
- /// </summary>
- LibraryResources = 0b_0000_0010,
- /// <summary>
- /// App resources (e.g. <c>MyApp.Resources.config.json</c>). See <see cref="AppSettingsScope"/>.
- /// </summary>
- AppResources = 0b_0000_0100,
- /// <summary>
- /// Settings in the <see cref="ConfigurationManager.RuntimeConfig"/> static property.
- /// </summary>
- Runtime = 0b_0000_1000,
- /// <summary>
- /// Global settings in the current directory (e.g. <c>./.tui/config.json</c>).
- /// </summary>
- GlobalCurrent = 0b_0001_0000,
- /// <summary>
- /// Global settings in the home directory (e.g. <c>~/.tui/config.json</c>).
- /// </summary>
- GlobalHome = 0b_0010_0000,
- /// <summary>
- /// App settings in the current directory (e.g. <c>./.tui/MyApp.config.json</c>).
- /// </summary>
- AppCurrent = 0b_0100_0000,
- /// <summary>
- /// App settings in the home directory (e.g. <c>~/.tui/MyApp.config.json</c>).
- /// </summary>
- AppHome = 0b_1000_0000,
- /// <summary>This constant is a combination of all locations</summary>
- All = 0b_1111_1111
- }
|