Tinderbox v9 Icon

RuleDisabled


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 Last Altered: 

 boolean   [other boolean-type attributes]

 false

 General   [other General Group attributes]

 Action code

 No

 Yes

 No

 Yes   [other intrinsic attributes]

 Baseline

 As at 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 true 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.