Filtering¶
Criteria¶
Module providing the UI4.Widgets.SceneGraphView.Filtering.Criteria.Criteria class.
- class UI4.Widgets.SceneGraphView.Filtering.Criteria.Criteria(numberOfElements=1)¶
Bases:
objectA wrapper for a set of arbitrary indexed values which can be retrieved as a tuple of Integers, Floats or Strings.
- __init__(numberOfElements=1)¶
Initializes an instance of the class.
- getAsFloat()¶
- Return type:
tupleoffloat- Returns:
The value(s) stored in this Criteria object as an ordered tuple of float.
- getAsInt()¶
- Return type:
tupleofint- Returns:
The value(s) stored in this Criteria object as an ordered tuple of integers.
- getAsObject()¶
- Return type:
tupleofobject- Returns:
The value(s) stored in this Criteria object as an ordered tuple in their original form.
- getAsString()¶
- Return type:
tupleofstring- Returns:
The value(s) stored in this Criteria object as an ordered tuple of string.
- setValue(index, value)¶
Set the value at the given index.
- Parameters:
index (
int) – The numeric index which determines the position of the value set.value (Any value capable of converting to Integer, Double or String) – The value to be set at the specified index.
Evaluator¶
Module providing the Evaluator base class.
- UI4.Widgets.SceneGraphView.Filtering.Evaluator.GetEvaluatorCriteria(name)¶
Return the list of criteria for the evaluator registered under the given name.
- Parameters:
name (
str) – The registered name of the Evaluator.- Return type:
listofdict- Returns:
Ordered list specifying the criteria accepted by the evaluator or None if the evaluator is not registered.
- See:
- UI4.Widgets.SceneGraphView.Filtering.Evaluator.RegisterEvaluator(name, evaluatorClass)¶
Register the evaluator class type, evaluatorClass, against the specified name.
- Parameters:
name (
str) – Name to register the evaluator.evaluatorClass (
Evaluator) – The class type so instances of the evaluator can be created.
- class UI4.Widgets.SceneGraphView.Filtering.Evaluator.Evaluator¶
Bases:
objectThe Evaluator class contains the method signatures that subclasses of Evaluator must implement.
- __init__()¶
Initializes an instance of the class.
- clearCriteria()¶
Clears the criteria for this evaluator.
- evaluate(value)¶
This method will be passed a value which you should evaluated against the criteria that have been set and return True or False.
- Return type:
bool- Returns:
TrueorFalsedepending on the input and criteria specified.
- getCriteria()¶
- Return type:
dictofdict- Returns:
A dictionary of dictionaries describing the currently set criteria for the Evaluator.
- getDefaultCriteria()¶
- Return type:
tupleof (str,UI4.Widgets.SceneGraphView.Filtering.Criteria.Criteria)- Returns:
A tuple describing the criteria and it’s value that can be used where nothing has been supplied.
- classmethod getName()¶
- Return type:
str- Returns:
The name used to describe this evaluator.
- classmethod registerCriteriaList()¶
This method should return an ordered list of dictionaries which describe the criteria this evaluator can accept.
The dictionary must specify the following key, value pairs:
name: :py:obj:`str` prefix: :py:obj:`str` suffix: :py:obj:`str` type: :py:obj:`ColumnDataType` default: :py:obj:`object` num_elements: :py:obj:`int`
e.g.:
{ "name": "Color", "prefix": "(RGB)", "suffix": None, "type": ColumnDataType.Color, "default": [255, 255, 255], "num_elements": 3 }
Users will create valid criteria based on the list you return from this function. name, prefix and suffix are human readable values that can be used to display in UIs.
- Return type:
listofdict- Returns:
A list of dictionaries as specified above.
- setCriteria(name, criteria)¶
Sets the criteria specified by name to the instance of the Criteria object, criteria.
- Parameters:
name (
str) – A name used to describe the criteria being set obtained from the list of criteria registered via registerCriteria().criteria (
UI4.Widgets.SceneGraphView.Filtering.Criteria.Criteria) – An instance of aUI4.Widgets.SceneGraphView.Filtering.Criteria.Criteriaclass.
- See:
registerCriteriaList(),UI4.Widgets.SceneGraphView.Filtering.Criteria.Criteria
- class UI4.Widgets.SceneGraphView.Filtering.Evaluator.CelEvaluator¶
Bases:
EvaluatorThis Evaluator will evntually containg CEL matching evaluation (basically handing off its criteria to a CEL matching function yet we don’t have matching functions exposed in Python yet.
- CriteriaList = [{'name': 'CEL Expression', 'prefix': None, 'suffix': None, 'type': <class 'UI4.Widgets.SceneGraphView.ItemDelegates.ParameterItemDelegate.ParameterItemDelegate'>, 'default': '//', 'num_elements': 1}]¶
- __init__()¶
Initializes an instance of the class.
- evaluate(value)¶
This method will be passed a value which you should evaluated against the criteria that have been set and return True or False.
- Return type:
bool- Returns:
TrueorFalsedepending on the input and criteria specified.
- getDefaultCriteria()¶
- Return type:
tupleof (str,UI4.Widgets.SceneGraphView.Filtering.Criteria.Criteria)- Returns:
A tuple describing the criteria and it’s value that can be used where nothing has been supplied.
- classmethod getName()¶
- Return type:
str- Returns:
The name used to describe this evaluator.
- classmethod registerCriteriaList()¶
This method should return an ordered list of dictionaries which describe the criteria this evaluator can accept.
The dictionary must specify the following key, value pairs:
name: :py:obj:`str` prefix: :py:obj:`str` suffix: :py:obj:`str` type: :py:obj:`ColumnDataType` default: :py:obj:`object` num_elements: :py:obj:`int`
e.g.:
{ "name": "Color", "prefix": "(RGB)", "suffix": None, "type": ColumnDataType.Color, "default": [255, 255, 255], "num_elements": 3 }
Users will create valid criteria based on the list you return from this function. name, prefix and suffix are human readable values that can be used to display in UIs.
- Return type:
listofdict- Returns:
A list of dictionaries as specified above.
- class UI4.Widgets.SceneGraphView.Filtering.Evaluator.RegexEvaluator¶
Bases:
EvaluatorEvaluator to provide regular expression matching.
Internally this evaluator uses Python’s
remodule.- CriteriaList = [{'name': 'Regex', 'prefix': None, 'suffix': None, 'type': <class 'UI4.Widgets.SceneGraphView.ItemDelegates.ParameterItemDelegate.ParameterItemDelegate'>, 'default': '.*', 'num_elements': 1}]¶
- __init__()¶
Initializes an instance of the class.
- evaluate(value)¶
This method will be passed a value which you should evaluated against the criteria that have been set and return True or False.
- Return type:
bool- Returns:
TrueorFalsedepending on the input and criteria specified.
- getDefaultCriteria()¶
- Return type:
tupleof (str,UI4.Widgets.SceneGraphView.Filtering.Criteria.Criteria)- Returns:
A tuple describing the criteria and it’s value that can be used where nothing has been supplied.
- classmethod getName()¶
- Return type:
str- Returns:
The name used to describe this evaluator.
- classmethod registerCriteriaList()¶
This method should return an ordered list of dictionaries which describe the criteria this evaluator can accept.
The dictionary must specify the following key, value pairs:
name: :py:obj:`str` prefix: :py:obj:`str` suffix: :py:obj:`str` type: :py:obj:`ColumnDataType` default: :py:obj:`object` num_elements: :py:obj:`int`
e.g.:
{ "name": "Color", "prefix": "(RGB)", "suffix": None, "type": ColumnDataType.Color, "default": [255, 255, 255], "num_elements": 3 }
Users will create valid criteria based on the list you return from this function. name, prefix and suffix are human readable values that can be used to display in UIs.
- Return type:
listofdict- Returns:
A list of dictionaries as specified above.
- setCriteria(name, criteria)¶
Sets the criteria specified by name to the instance of the Criteria object, criteria.
- Parameters:
name (
str) – A name used to describe the criteria being set obtained from the list of criteria registered via registerCriteria().criteria (
UI4.Widgets.SceneGraphView.Filtering.Criteria.Criteria) – An instance of aUI4.Widgets.SceneGraphView.Filtering.Criteria.Criteriaclass.
- See:
registerCriteriaList(),UI4.Widgets.SceneGraphView.Filtering.Criteria.Criteria
- class UI4.Widgets.SceneGraphView.Filtering.Evaluator.EqualToEvaluator¶
Bases:
EvaluatorClass provides simple Equality testing for strings and numbers
In the case of
ColumnDataType.Numberwe convert the criteria and value passed to theevaluate()function to float viafloat().If you don’t specify either a Phrase or Number then False will be returned.
- CriteriaList = [{'name': 'Phrase', 'prefix': None, 'suffix': None, 'type': <class 'UI4.Widgets.SceneGraphView.ItemDelegates.ParameterItemDelegate.ParameterItemDelegate'>, 'default': '', 'num_elements': 1}, {'name': 'Number', 'prefix': None, 'suffix': None, 'type': <class 'UI4.Widgets.SceneGraphView.ItemDelegates.NumberItemDelegate.NumberItemDelegate'>, 'default': 0, 'num_elements': 1}]¶
- __init__()¶
Initializes an instance of the class.
- evaluate(value)¶
This method will be passed a value which you should evaluated against the criteria that have been set and return True or False.
- Return type:
bool- Returns:
TrueorFalsedepending on the input and criteria specified.
- getDefaultCriteria()¶
- Return type:
tupleof (str,UI4.Widgets.SceneGraphView.Filtering.Criteria.Criteria)- Returns:
A tuple describing the criteria and it’s value that can be used where nothing has been supplied.
- classmethod getName()¶
- Return type:
str- Returns:
The name used to describe this evaluator.
- classmethod registerCriteriaList()¶
This method should return an ordered list of dictionaries which describe the criteria this evaluator can accept.
The dictionary must specify the following key, value pairs:
name: :py:obj:`str` prefix: :py:obj:`str` suffix: :py:obj:`str` type: :py:obj:`ColumnDataType` default: :py:obj:`object` num_elements: :py:obj:`int`
e.g.:
{ "name": "Color", "prefix": "(RGB)", "suffix": None, "type": ColumnDataType.Color, "default": [255, 255, 255], "num_elements": 3 }
Users will create valid criteria based on the list you return from this function. name, prefix and suffix are human readable values that can be used to display in UIs.
- Return type:
listofdict- Returns:
A list of dictionaries as specified above.
- class UI4.Widgets.SceneGraphView.Filtering.Evaluator.LessThanEvaluator¶
Bases:
EvaluatorProvides Less Than Evaluator.
- CriteriaList = [{'name': 'Number', 'prefix': None, 'suffix': None, 'type': <class 'UI4.Widgets.SceneGraphView.ItemDelegates.NumberItemDelegate.NumberItemDelegate'>, 'default': inf, 'num_elements': 1}]¶
- __init__()¶
Initializes an instance of the class.
- evaluate(value)¶
This method will be passed a value which you should evaluated against the criteria that have been set and return True or False.
- Return type:
bool- Returns:
TrueorFalsedepending on the input and criteria specified.
- getDefaultCriteria()¶
- Return type:
tupleof (str,UI4.Widgets.SceneGraphView.Filtering.Criteria.Criteria)- Returns:
A tuple describing the criteria and it’s value that can be used where nothing has been supplied.
- classmethod getName()¶
- Return type:
str- Returns:
The name used to describe this evaluator.
- classmethod registerCriteriaList()¶
This method should return an ordered list of dictionaries which describe the criteria this evaluator can accept.
The dictionary must specify the following key, value pairs:
name: :py:obj:`str` prefix: :py:obj:`str` suffix: :py:obj:`str` type: :py:obj:`ColumnDataType` default: :py:obj:`object` num_elements: :py:obj:`int`
e.g.:
{ "name": "Color", "prefix": "(RGB)", "suffix": None, "type": ColumnDataType.Color, "default": [255, 255, 255], "num_elements": 3 }
Users will create valid criteria based on the list you return from this function. name, prefix and suffix are human readable values that can be used to display in UIs.
- Return type:
listofdict- Returns:
A list of dictionaries as specified above.
- class UI4.Widgets.SceneGraphView.Filtering.Evaluator.GreaterThanEvaluator¶
Bases:
EvaluatorProvides Greater Than Evaluator.
- CriteriaList = [{'name': 'Number', 'prefix': None, 'suffix': None, 'type': <class 'UI4.Widgets.SceneGraphView.ItemDelegates.NumberItemDelegate.NumberItemDelegate'>, 'default': -inf, 'num_elements': 1}]¶
- __init__()¶
Initializes an instance of the class.
- evaluate(value)¶
This method will be passed a value which you should evaluated against the criteria that have been set and return True or False.
- Return type:
bool- Returns:
TrueorFalsedepending on the input and criteria specified.
- getDefaultCriteria()¶
- Return type:
tupleof (str,UI4.Widgets.SceneGraphView.Filtering.Criteria.Criteria)- Returns:
A tuple describing the criteria and it’s value that can be used where nothing has been supplied.
- classmethod getName()¶
- Return type:
str- Returns:
The name used to describe this evaluator.
- classmethod registerCriteriaList()¶
This method should return an ordered list of dictionaries which describe the criteria this evaluator can accept.
The dictionary must specify the following key, value pairs:
name: :py:obj:`str` prefix: :py:obj:`str` suffix: :py:obj:`str` type: :py:obj:`ColumnDataType` default: :py:obj:`object` num_elements: :py:obj:`int`
e.g.:
{ "name": "Color", "prefix": "(RGB)", "suffix": None, "type": ColumnDataType.Color, "default": [255, 255, 255], "num_elements": 3 }
Users will create valid criteria based on the list you return from this function. name, prefix and suffix are human readable values that can be used to display in UIs.
- Return type:
listofdict- Returns:
A list of dictionaries as specified above.
- class UI4.Widgets.SceneGraphView.Filtering.Evaluator.FuzzyEqualityEvaluator¶
Bases:
EvaluatorClass that provides floating-point comparison within specified tolerance levels.
You can specify:
Both:
PositiveTolerance: Maximum allowable value from the value specified in the positive axis.NegativeTolerance: Maximum allowable value in the negative axis.Value - NegativeTolerance < Test < Value + PositiveTolerance
Or:
Tolerance: Maximum allowable in positive and negative axis.Value - Tolerance < Test < Value + Tolerance
If neither are specified then Tolerance will be used with its default value.
This class is an example of more advanced use of the filtering system and is not currently made available.
- CriteriaList = [{'name': 'Number', 'prefix': None, 'suffix': None, 'type': <class 'UI4.Widgets.SceneGraphView.ItemDelegates.NumberItemDelegate.NumberItemDelegate'>, 'default': 0.0, 'num_elements': 1}, {'name': 'PositiveTolerance', 'prefix': None, 'suffix': None, 'type': <class 'UI4.Widgets.SceneGraphView.ItemDelegates.NumberItemDelegate.NumberItemDelegate'>, 'default': 0.1, 'num_elements': 1}, {'name': 'NegativeTolerance', 'prefix': None, 'suffix': None, 'type': <class 'UI4.Widgets.SceneGraphView.ItemDelegates.NumberItemDelegate.NumberItemDelegate'>, 'default': 0.1, 'num_elements': 1}, {'name': 'Tolerance', 'prefix': None, 'suffix': None, 'type': <class 'UI4.Widgets.SceneGraphView.ItemDelegates.NumberItemDelegate.NumberItemDelegate'>, 'default': 0.1, 'num_elements': 1}]¶
- __init__()¶
Initializes an instance of the class.
- evaluate(value)¶
This method will be passed a value which you should evaluated against the criteria that have been set and return True or False.
- Return type:
bool- Returns:
TrueorFalsedepending on the input and criteria specified.
- getDefaultCriteria()¶
- Return type:
tupleof (str,UI4.Widgets.SceneGraphView.Filtering.Criteria.Criteria)- Returns:
A tuple describing the criteria and it’s value that can be used where nothing has been supplied.
- classmethod getName()¶
- Return type:
str- Returns:
The name used to describe this evaluator.
- classmethod registerCriteriaList()¶
This method should return an ordered list of dictionaries which describe the criteria this evaluator can accept.
The dictionary must specify the following key, value pairs:
name: :py:obj:`str` prefix: :py:obj:`str` suffix: :py:obj:`str` type: :py:obj:`ColumnDataType` default: :py:obj:`object` num_elements: :py:obj:`int`
e.g.:
{ "name": "Color", "prefix": "(RGB)", "suffix": None, "type": ColumnDataType.Color, "default": [255, 255, 255], "num_elements": 3 }
Users will create valid criteria based on the list you return from this function. name, prefix and suffix are human readable values that can be used to display in UIs.
- Return type:
listofdict- Returns:
A list of dictionaries as specified above.
Rule¶
Module providing the Rule class.
- class UI4.Widgets.SceneGraphView.Filtering.Rule.Rule¶
Bases:
objectClass draws together the
UI4.Widgets.SceneGraphView.Filtering.Target.TargetandUI4.Widgets.SceneGraphView.Filtering.Evaluator.Evaluatorclasses and provides a methodmatch()which actually causes the invokation of the Evaluator’s evaluate() function for the resolved scene graph location.- __init__()¶
- clearCriteria()¶
Clears the criteria for this rule.
- flushLocationMatchCache()¶
Empty the cache of match results for this rule.
- getComment()¶
- Return type:
strorNone- Returns:
This rule’s comment or
Noneif one isn’t set.
- getCriteria()¶
- Return type:
dictofdict- Returns:
A dictionary of criteria that have been set for this evaluator.
- getDefaultCriteria()¶
- Return type:
tupleof (str,Criteria)- Returns:
A tuple describing the criteria and it’s value that can be used where nothing has been supplied.
- getEvaluatorName()¶
- Return type:
str- Returns:
The name of the evaluator being used by this rule.
- getShowChildren()¶
- getTarget()¶
- Return type:
- Returns:
A reference to the target object.
- isEnabled()¶
- Return type:
bool- Returns:
Trueif this rule is enabled, otherwiseFalse.
- isInverted()¶
- Return type:
bool- Returns:
Trueif this rule is inverted, otherwiseFalse.
- match(handle, topLevelHandle)¶
Using the Target, Evaluator and Criteria specified using
setTarget(),setEvaluator(),setCriteria(). Test if the value, as resolved by theTargetobject, atsceneGraphLocationmatches the specifed Criteria for the given Evaluator.- Return type:
bool- Parameters:
handle (
UI4.Widgets.SceneGraphView.SceneGraphHandle.SceneGraphHandle) – Handle representing the scene graph location that will be used to test if theUI4.Widgets.SceneGraphView.Filtering.Evaluator.EvaluatorandUI4.Widgets.SceneGraphView.Filtering.Criteria.Criteriamatch.topLevelHandle (
UI4.Widgets.SceneGraphView.SceneGraphHandle.SceneGraphHandle) – Handle representing the top-level scene graph location that contains the scene graph location to evaluate.
- Returns:
Trueif theRulematches the scene graph location with the given handle under the scene graph location with the given top-level handle, otherwiseFalse.
- setComment(comment)¶
Sets the comment of this rule. The comment doesn’t affect the filtering itself, but is useful for documenting and identifying rules.
- Parameters:
comment (
strorNone) – The new comment of this rule.
- setCriteria(name, criteria)¶
Sets the
UI4.Widgets.SceneGraphView.Filtering.Criteria.Criteriarequired by theUI4.Widgets.SceneGraphView.Filtering.Evaluator.Evaluatoryou have specified.- Parameters:
name (
str) – The name used to refer to these particular criteria.criteria (
UI4.Widgets.SceneGraphView.Filtering.Criteria.Criteria) – The criteria object as described by the criteria required by the Evaluator you are using.
- setEnabled(enabled)¶
Sets the enabled state of this rule. If not enabled, the rule will always match positively.
- Parameters:
enabled (
bool) – The new enabled state of this rule.
- setEvaluator(evaluator)¶
Sets the
Evaluatorobject to be used by this rule.- Parameters:
evaluator (
UI4.Widgets.SceneGraphView.Filtering.Evaluator.Evaluator) – The evaulator that will be used to evaluator the rule.
- setInverted(inverted)¶
Sets the inverted state of this rule. If inverted, the rule will invert the result of its matching procedure.
- Parameters:
inverted (
bool) – The new inverted state of this rule.
- setShowChildren(showChildren)¶
- setTarget(target)¶
Sets the
Targetobject used to be used by this rule.- Parameters:
target (
UI4.Widgets.SceneGraphView.Filtering.Target.Target) – The target object that will be used to translate scene graph locations into actual values.
RuleConfigDialog¶
Module provides a simple Rule configuration user interface.
- class UI4.Widgets.SceneGraphView.Filtering.RuleConfigDialog.RuleConfigDialog(bridge, parent=None)¶
Bases:
QDialogClass to provide a simple filter rule configuration modeless dialog box.
- COLUMN_ID_COMMENT = 8¶
- COLUMN_ID_CRITERIA = 3¶
- COLUMN_ID_ENABLE = 5¶
- COLUMN_ID_EVALUATOR = 2¶
- COLUMN_ID_INVERT = 6¶
- COLUMN_ID_NAME = 0¶
- COLUMN_ID_SHOWCHILDREN = 7¶
- COLUMN_ID_TARGET = 1¶
- COLUMN_ID_VALUE = 4¶
- __init__(bridge, parent=None)¶
- on_availableRulesMenu_triggered(action)¶
- on_deleteSelectedButton_clicked()¶
- on_invertMatchCheckBox_stateChanged(state)¶
- on_matchPolicyCombo_currentIndexChanged(index)¶
- showEvent(self, QShowEvent)¶
RuleManager¶
Module providing the RuleManager class.
- class UI4.Widgets.SceneGraphView.Filtering.RuleManager.RuleManager(bridge, evaluateRuleCallback)¶
Bases:
objectClass to encapsulate the storage of filtering rules and rule matching logic.
- MatchAllPolicy = 2¶
- MatchAnyPolicy = 1¶
- __init__(bridge, evaluateRuleCallback)¶
- addRule(ruleName)¶
Adds a new rule to the current rule set using the specified name which can be used later to configure the rule.
The rule name must not be already used otherwise this function will raise an exception.
- Parameters:
ruleName (
str) – Name of the rule by which you can reference it later.- Raises:
e –
RuleManagerExceptionif ruleName already exists in the current rule set.
- clearRuleCriteria(ruleName, triggerEvaluation=True)¶
Clears the criteria that have been set for the given rule.
- Parameters:
ruleName (
str) – The rule to be cleared.triggerEvaluation (
bool) – Whether clearing the criteria should trigger re-evaluation of the rule set. This can be useful for managing user interaction.
- getCurrentRules()¶
Return a
dictofdictcontaining the list of current rules and their values.- Return type:
dictofdict- Returns:
Dictionary of dictionaries containing the current rule set.
- getRuleByName(ruleName)¶
- Parameters:
ruleName (
str) – Name of the rule to return:- Return type:
RuleorNone- Returns:
The rule object corresponding to the rule name or None if it does not exist.
- getRuleMatchInversion()¶
- Return type:
bool- Returns:
A boolean value indicating whether the result of rule evaluation will be inverted.
- match(handle, topLevelHandle)¶
Using the current rule matching policy and rules that have been configured test if the current scene graph location matches the filter criteria.
- Return type:
bool- Parameters:
handle (
UI4.Widgets.SceneGraphView.SceneGraphHandle.SceneGraphHandle) – Handle representing the scene graph location to evaluate.topLevelHandle (
UI4.Widgets.SceneGraphView.SceneGraphHandle.SceneGraphHandle) – Handle representing the top-level scene graph location that contains the scene graph location to evaluate.
- Returns:
Trueif the rule set matches the scene graph location with the given handle under the scene graph location with the given top-level handle, otherwiseFalse.
- removeRule(ruleName)¶
Removes the rule specified by ruleName from the current rule set.
- Parameters:
ruleName (
str) – The ruleName to remove from the rule set. If if doesn’t exist this function will have no effect.
- renameRule(oldName, newName)¶
Renames the given rule from the
oldNameto thenewName. If thisRuleManagerinstance already contains aRulenamed the same asnewName, name mangling will occur to avoid a conflict (_1, _2, etc will be appended to the end until a unique name is found). If the givenoldNamedoes not name a validRule, aValueErroris raised.The result value is the finalised new rule name, after any potential name changes due to conflicts have taken place.
- Return type:
str- Parameters:
oldName (
str) – The name of the rule to be renamed.newName (
str) – The new name to rename the rule to.
- Returns:
The finalised new rule name, after any potential name changes due to conflicts have taken place.
- setRuleComment(ruleName, comment)¶
Sets the comment of the given rule.
- Parameters:
ruleName (
str) – The rule whose inversion state we wish to set.comment (
strorNone) – The new comment of the given rule.
- setRuleCriteria(ruleName, criteriaName, criteria)¶
Sets the criteria of the specified evaluator for a given rule.
This function will have no effect if ruleName refers to a non-existent Rule.
- Parameters:
ruleName (
str) – The rule name assigned to the Rule.criteriaName (
str) – The criteria name required by the evaluator.criteria (
UI4.Widgets.SceneGraphView.Filtering.Criteria) – The criteria object.
- setRuleEnabled(ruleName, isEnabled, triggerEvaluation=True)¶
Sets the enabled state of the given rule.
- Parameters:
ruleName (
str) – The rule whose enabled state we wish to set.isEnabled (
bool) – The new enabled state of the given rule.triggerEvaluation (
bool) – Whether setting this state should trigger re-evaluation of the rule set. This can be useful for managing user interaction.
- setRuleEvaluator(ruleName, evaluator, useDefaultCriteria=False)¶
Sets the evaluator of the specified rule.
This function will have no effect if ruleName refers to a non-existent Rule.
- Parameters:
ruleName (
str) – The rule name assigned to the Rule.evaluator (
UI4.Widgets.SceneGraphView.Filtering.Evaluator) – The evaluator object to set.
- setRuleInverted(ruleName, isInverted, triggerEvaluation=True)¶
Sets the inversion state of the given rule.
- Parameters:
ruleName (
str) – The rule whose inversion state we wish to set.isInverted (
bool) – The new inversion state of the given rule.triggerEvaluation (
bool) – Whether setting this state should trigger re-evaluation of the rule set. This can be useful for managing user interaction.
- setRuleMatchInversion(invertMatch)¶
Sets whether the final result of all rule evaluation should be inverted.
- Parameters:
invertMatch (
bool) – A boolean value indicating whether the result of rule evaluation should be inverted.
- setRuleMatchPolicy(policy)¶
Sets the rule matching policy the
RuleManagershould apply when testing scene graph locations against the current set of configured rules.- Parameters:
policy (
int) – A valid rule matching policy
- setRuleShowChildren(ruleName, showChildren, triggerEvaluation=True)¶
- setRuleTarget(ruleName, column)¶
Sets the target of the specified rule.
This function will have no effect if ruleName refers to a non-existent Rule.
- Parameters:
ruleName (
str) – The rule name assigned to the Rule.column (
UI4.Widgets.SceneGraphView.SceneGraphViewColumn.SceneGraphColumn) – The column which will be targeted for the rule.
Target¶
Module providing the Target class.
- class UI4.Widgets.SceneGraphView.Filtering.Target.Target(sceneGraphColumn, bridge, mode=0)¶
Bases:
object- __init__(sceneGraphColumn, bridge, mode=0)¶
Creates a new instance of the
Targetclass.- Parameters:
sceneGraphColumn (
UI4.Widgets.SceneGraphView.SceneGraphViewColumn.SceneGraphColumnSet) – The column object.bridge (
UI4.Widgets.SceneGraphView.Bridge.Bridge) – A valid implementation of theBridgeclass.mode (
int) – The mode in which Target should behave, currently only AttributeMode is enabled.
- getSceneGraphColumn()¶
- Return type:
UI4.Widgets.SceneGraphView.SceneGraphViewColumn.SceneGraphColumn- Returns:
The column against which to resolve each scene graph location.
- resolve(handle, topLevelHandle)¶
Resolves the scene graph location specified to a particular value based on the target column and its current configuration.
- Return type:
object- Parameters:
handle (
UI4.Widgets.SceneGraphView.SceneGraphHandle.SceneGraphHandle) – Handle representing the scene graph location to resolve to a value, in combination with the column with which thisTargetis associated.topLevelHandle (
UI4.Widgets.SceneGraphView.SceneGraphHandle.SceneGraphHandle) – Handle representing the top-level scene graph location that contains the scene graph location to evaluate.
- Returns:
The value at the column and location pair.
- Raises:
NotImplementedError – If
Targetmode is not AttributeMode.