And at this point I'm going to engage in a little rant
One thing about registries just makes no sense to me. There are actually three 'types': macro, application, and user. This list is in order of permanence; macro is the shortest (just for the duration of the macro) and user the longest (forever).
Here is the thing. In every macro where you want to use one of these, you have to start with a statement like this:
The name
$registry is a variable name for a registry object, and it can of course be anything you want, say $arthurDent or $zaphodBeeblebrox, or $whatever. But really this name does
nothing whatsoever. It looks like you could create a dozen such registry objects, but that is a complete illusion. The variables you store in there are all going in the same place (if the macro is of the same 'type', that is. Remember, there are three 'types'.) So why couldn't the commands just be written as static commands. So instead of:
Code: Select all
$reg = Registry.macroRegistry
$reg.saveValueWithName(…)
why not simply:
Code: Select all
MacroRegistry.saveValueWithName(…)
or maybe:
Code: Select all
Registry.saveValueWithName('macro', …)
Every time you want to use one of those things, you need that extra, pointless object definition line and the even more pointless object name.
Okay, end of rant.
Have a nice day everybody!