OpenTAP 9.25
API Reference
|
It is recommended to inherit from this class when implementing component settings. This class uses a recurrent template pattern to exhibit a kind of "static reflection". More...
Public Member Functions | |
void | Save () |
Saves the settings held by this class to an XML file in the ComponentSettings.SetSettingsProfile(string, string). | |
void | Invalidate () |
Invalidates the cache of this type of component setting. | |
void | Reload () |
Forces the reload of this type of component setting from the XML file the next time the setting is used. | |
virtual void | Initialize () |
Called if a new ComponentSettings is instantiated and there are no corresponding settings XML. | |
Public Member Functions inherited from OpenTap.ValidatingObject | |
void | OnPropertyChanged (string propertyName) |
Triggers the PropertyChanged event. More... | |
Static Public Member Functions | |
static string | GetSettingsDirectory (string groupName, bool isProfile=true) |
The directory where the settings are loaded from / saved to. More... | |
static void | EnsureSettingsDirectoryExists (string groupName, bool isProfile=true) |
Ensures that the Settings directory exists and that the specified groupName sub directory exists. This might throw an exception if the settings directory was configured to something invalid. Like 'AUX', 'NUL', .... More... | |
static void | SetSettingsProfile (string groupName, string profileName) |
Sets the directory in which settings groups are loaded from / saved to. More... | |
static void | SaveAllCurrentSettings () |
Saves all ComponentSettings objects that have been loaded. | |
static string | GetSaveFilePath (Type type) |
Gets the current file location where a ComponentSettings type is saved. More... | |
static ComponentSettings | GetCurrent (Type settingsType) |
Gets current settings for a specified component. This is either an instance of the settings class previously loaded, or a new instance loaded from the associated file. More... | |
static void | SetCurrent (Stream xmlFileStream) |
Sets current settings for a component setting based on a stream of the file contents of a ComponentSettings XML file. More... | |
static void | SetCurrent (Stream xmlFileStream, out IEnumerable< XmlError > errors) |
Sets current settings for a component setting based on a stream of the file contents of a ComponentSettings XML file. More... | |
static ComponentSettings | GetCurrent (ITypeData settingsType) |
Gets current settings for a specified component. This is either an instance of the settings class previously loaded, or a new instance loaded from the associated file. More... | |
static ComponentSettings | GetCurrentFromCache (Type settingsType) |
Gets current settings for a specified component from cache. More... | |
Static Public Attributes | |
static bool | PersistSettingGroups = true |
Gets or sets if settings groups should be persisted between processes. | |
Properties | |
static T | Current [get] |
Get the currently loaded ComponentSettings instance for this class. | |
string? | GroupName [get] |
Settings group of this settings class. | |
static string | SettingsDirectoryRoot [getset] |
Where settings files are located. Usually this is at "[Executable location]\Settings", but it can be set to different locations. Setting this will invalidate loaded settings. | |
Properties inherited from OpenTap.ValidatingObject | |
ValidationRuleCollection | Rules [get] |
All the validation rules. Add new rules to this in order to get runtime value validation. | |
string | Error [get] |
Gets the error messages for each invalid rule and joins them with a newline. | |
Properties inherited from OpenTap.IValidatingObject | |
ValidationRuleCollection | Rules [get] |
A collection of all the currently defined validation rules. Add new rules here in order to get runtime value validation. | |
Events | |
EventHandler | CacheInvalidated |
Invokes when the cache for this settings item is invalidated for this item. The way to handle it is usually to fetch the new instance using ComponentSettings.GetCurrent(sender.GetType()). | |
Events inherited from OpenTap.ValidatingObject | |
PropertyChangedEventHandler | PropertyChanged |
Standard PropertyChanged event object. | |
Additional Inherited Members | |
Protected Member Functions inherited from OpenTap.ValidatingObject | |
virtual string | GetError (string propertyName=null) |
Return the error for a given property | |
void | ThrowOnValidationError (bool ignoreDisabledProperties) |
Checks all validation rules on this object (Rules) and throws an AggregateException on errors. More... | |
It is recommended to inherit from this class when implementing component settings. This class uses a recurrent template pattern to exhibit a kind of "static reflection".
An abstract class to implement general settings for a component. This class provides methods to load and save the settings to/from an XML file using TapSerializer.
It is also possible implement a component setting by inherriting from the non-generic ComponentSettings or IComponentSettings it is just not recommended.
T | The inheriting class. |
It is recommended to inherit from ComponentSettings<T> when possible.
T | : | ComponentSettings |
|
static |
Ensures that the Settings directory exists and that the specified groupName sub directory exists. This might throw an exception if the settings directory was configured to something invalid. Like 'AUX', 'NUL', ....
groupName | Name of the settings group. |
isProfile | Determines if the settings group uses profiles. |
|
inlinestatic |
Gets current settings for a specified component. This is either an instance of the settings class previously loaded, or a new instance loaded from the associated file.
settingsType | The type of the component settings requested (this type must be a descendant of ComponentSettings). |
|
static |
Gets current settings for a specified component. This is either an instance of the settings class previously loaded, or a new instance loaded from the associated file.
settingsType | The type of the component settings requested (this type must be a descendant of ComponentSettings). |
|
static |
Gets current settings for a specified component from cache.
settingsType | The type of the component settings requested (this type must be a descendant of ComponentSettings). |
|
static |
Gets the current file location where a ComponentSettings type is saved.
type | Must be a ComponentSettings sub-class. |
|
static |
The directory where the settings are loaded from / saved to.
groupName | Name of the settings group. |
isProfile | If the settings group uses profiles, we load the default profile. |
|
static |
Sets current settings for a component setting based on a stream of the file contents of a ComponentSettings XML file.
InvalidDataException | If the input stream is not valid XML |
xmlFileStream | The component settings stream to be set |
|
static |
Sets current settings for a component setting based on a stream of the file contents of a ComponentSettings XML file.
xmlFileStream | The component settings stream to be set |
errors | Any XML errors that occurred during deserialization |
|
static |
Sets the directory in which settings groups are loaded from / saved to.
groupName | Name of the settings group. |
profileName | Name of the selected settings profile. |
OpenTAP 9.25 API built Tue Aug 6 2024 07:49:23