Uranium
Application Framework
Loading...
Searching...
No Matches
UM.Settings.SettingInstance.SettingInstance Class Reference

Public Member Functions

None __init__ (self, SettingDefinition definition, ContainerInterface container, *Any args, **Any kwargs)
 
Iterable[str] getPropertyNames (self)
 
"SettingInstance" __deepcopy__ (self, Dict[int, Dict[str, Any]] memo)
 
bool __eq__ (self, object other)
 
bool __ne__ (self, object other)
 
Any __getattr__ (self, str name)
 
None setProperty (self, str name, Any value, Optional[ContainerInterface] container=None, bool emit_signals=True)
 
SettingDefinition definition (self)
 
ContainerInterface container (self)
 
Optional[ValidatorvalidationState (self)
 
InstanceState state (self)
 
None resetState (self)
 
str __repr__ (self)
 
None updateRelations (self, ContainerInterface container, bool emit_signals=True)
 

Static Public Attributes

 propertyChanged = Signal()
 

Protected Member Functions

None _addRelations (self, Set["SettingRelation"] relations_set, List["SettingRelation"] relations, List[str] roles)
 

Protected Attributes

 _definition
 
 _container
 
 _visible
 
 _validator
 
 _state
 

Detailed Description

Encapsulates all state of a setting.

The SettingInstance class contains all state related to a setting.

Constructor & Destructor Documentation

◆ __init__()

None UM.Settings.SettingInstance.SettingInstance.__init__ (   self,
SettingDefinition  definition,
ContainerInterface  container,
*Any  args,
**Any  kwargs 
)
Constructor.

:param definition: The SettingDefinition object this is an instance of.
:param container: The container of this instance. Needed for relation handling.

Member Function Documentation

◆ __deepcopy__()

"SettingInstance" UM.Settings.SettingInstance.SettingInstance.__deepcopy__ (   self,
Dict[int, Dict[str, Any]]  memo 
)
Copies the setting instance and all its properties and state.

The definition and the instance container containing this instance are not deep-copied but just taken over from
the original, since they are seen as back-links. Please set them correctly after deep-copying this instance.

◆ _addRelations()

None UM.Settings.SettingInstance.SettingInstance._addRelations (   self,
Set["SettingRelation"]  relations_set,
List["SettingRelation"]  relations,
List[str]  roles 
)
protected
Recursive function to put all settings that require eachother for changes of a property value in a list

:param relations_set: :type{set} Set of keys (strings) of settings that are influenced
:param relations: list of relation objects that need to be checked.
:param roles: list of name of the properties value of the settings

◆ container()

ContainerInterface UM.Settings.SettingInstance.SettingInstance.container (   self)
The container of this instance.

◆ definition()

SettingDefinition UM.Settings.SettingInstance.SettingInstance.definition (   self)
The SettingDefinition this instance maintains state for.

◆ getPropertyNames()

Iterable[str] UM.Settings.SettingInstance.SettingInstance.getPropertyNames (   self)
Get a list of all supported property names

◆ updateRelations()

None UM.Settings.SettingInstance.SettingInstance.updateRelations (   self,
ContainerInterface  container,
bool   emit_signals = True 
)
protected:

◆ validationState()

Optional[Validator] UM.Settings.SettingInstance.SettingInstance.validationState (   self)
Get the state of validation of this instance.

The documentation for this class was generated from the following file: