Enables easier use of values returned by macro segments.
For example, this enables the user to extract the user name of a new
Twitch follower and change a text sources settings accordingly
* Changed the "on change" match behaviour
Previously macros with true conditions but "on change" enabled would
be considered to be evaluating to false.
Now they are considered to be evaluating to true and the "on change"
option only has an effect on if the actions are performed or not.
This could have effects on user which use the "Macro" condition type
to check what other macros' conditions evaluate to.
* The splitter position separating the conditions, actions, and
else-actions are not saved and restored based on which macro is being
selected.
This required the following adjustments:
Instead of having a dedicated entry indicating the empty selection the
setPlaceholderText() mechanism is used.
Thus the locations where the 1st entry was assumed to be the empty
selection would have to be adjusted.
Additional checks for the empty string / index -1 have been added.
FindIdxInRagne() was adjusted to return -1 instead of 0 in case the
given string was not found.
Switched to index based singal instead of text based signal to be
notified about selection changes.