| Attribute Data Type: | action |
| Attribute Default Value: | (not set - empty string) |
| Atrribute Group: | General |
| Atrribute Purpose: | Action code |
| Attribute Inherited from Preferences? | No |
| Attribute Read-Only? | No |
An action, or list of actions (separated by semi-colons), to be performed when a note becomes child of the current note, be it new or moved there by dragging. Adornments also offer 'OnAdd' action support. Although it takes a string argument, the string must be valid action syntax.
$OnAdd actions are applied to each item of a multiple-item drag, even if the dragged notes originate in a different file. The $OnAdd action is applied only once, when a note is created inside a container, or is moved into a container from some other container. This stops $OnAdd being re-applied for actions like moving an note on a Map and where $OnAdd may have iterative effects on a note if re-applied. Pasting a note into a container runs the $OnAdd action.
The container's $OnAdd action acts on both newly-made notes and agents.
For agents, $OnAdd is replaced by $AgentAction (though not in smart adornments)
Adornments show a slightly different behaviour. Here, the $OnAdd is re-triggered if a note is moved manually within the adornment - i.e. never leaves it - as the move effectively takes the note out of the adornment (start of move) and adds it back at the end of the move. However, if notes are moved automatically within an adornment due to adornment sorting, or by an external action altering $Xpos/$Ypos, the adornment's $OnAdd is not run again.
