Attribute Data Type:
Attribute Default Value:
Attribute Group:
Attribute Purpose:
Attribute Inherited from Preferences?
Attribute UI-configurable?
Attribute Read-Only?
Attribute Intrinsic?
Attribute First Added:
Attribute Altered:
boolean [other boolean-type attributes]
false
General [other General Group attributes]
Action code
No
Yes
No [other read-only attributes]
Yes [other intrinsic attributes]
Baseline
Allows the $Rule for a specific note to be disabled. It is intrinsic and thus not inherited.
Atypically for inheritance in Tinderbox, it is not inherited from a note's prototype (unlike most other attributes), partly because a primary use is suppressing code running in prototypes.
$RuleDisabled is convenient when a rule may make significant changes to the note (or other parts of the document). Setting such a rule via a prototype can be problematic as the intent is only to rule to rule in notes inheriting the rule. Thus it can be useful to suppress $Rule activation in prototypes. Previously, this meant placing the Rule in an 'if($Prototype)' test which was cumbersome and meant every inheriting note had to run the addition if test adding load to the action code cycle. That workaround can be discarded and the attribute set to false in the Prototype. Because, atypically, this attribute is not inherited from a prototype, the prototype's setting does not affect the Display Expression in notes using the prototype.
A similar control is supplied for display expressions: $DisplayExpressionDisabled.
$RuleDisabled for the current note can be set via the Action Inspector ▸ Rule tab, 'enabled' tick-box.