ElementSelectionRule
class compolyx.ElementSelectionRule(graph, obj, parent=None)
Base class for rules.
This acts as an interface to the cpp object of the rules.
The base class implements \_py_update which is called after the cpp update. It sets the changed flag.
Since NameGraph derives from Observable, observers can listen on changed.
In order to support csv_serialization, the classes have to implement a _dict method
and a list named _csv_parameters.
The \_dict method specifies which properties are written and \_csv_parameters specifies which parameters are read and
how they are parsed. The keys in \_dict and the elements in \_parameters_csv have to be consistent.
If the conversion from the string to an object is more than simple type conversion,
it can be implemented in \_update_rule_from_csv.
Attributes
| Name | Description |
|---|---|
ElementSelectionRule.active | Active status of object |
ElementSelectionRule.changed | Triggers Observable to dispatch changed message |
ElementSelectionRule.enabled | Whether this object is currently enabled or not |
ElementSelectionRule.extent | extent of the rule |
ElementSelectionRule.id | ID of object |
ElementSelectionRule.include_rule_type | Include type |
ElementSelectionRule.is_dict_item | Specifies whether the object is an item of a dict |
ElementSelectionRule.is_list_item | Specifies whether the object is an item of a list |
ElementSelectionRule.link_path | Root path of the current node in the tree for links to this object |
ElementSelectionRule.name | Name of object |
ElementSelectionRule.parent | Parent object in tree |
ElementSelectionRule.relative_rule_type | Relative type |
ElementSelectionRule.root_path | Root path of the current node in the tree |
ElementSelectionRule.status | Status of the object |
ElementSelectionRule.status_changed | Boolean flag which is set to true in C++ when up-to-date status of object changes |
ElementSelectionRule.uid | UID of object |
ElementSelectionRule.vertex | Throws an error if the object has been removed from the graph |
Methods
| Name | Description |
|---|---|
ElementSelectionRule.find_parent(type) | Steps up the tree and returns the first parent with given type |
ElementSelectionRule.obj_exists() | Checks if __obj still references the C++ object (i.e. has not been reset to None by self._delete) and exists in the graph |
ElementSelectionRule.serialize_name_and_id() | Helper function to serialize name and ID |
ElementSelectionRule.serialize_rule_types() | |
ElementSelectionRule.update() | |
ElementSelectionRule.visit(visitor) | Walk through the tree and let the visitor perform an action on every descendant node |