Add a unique identifier to properties (and layers) accessible via the scripting API
When scripting, we sometimes have to be able to "store" a property to do something later with it ;
For example, very often, scripts use the "comment" property of the layers to store data like this.
The problem is: there are only three ways to get a property:
- the matchName, but there can be a lot of properties with the same matchName
- the name, but it can be changed by users, so it is not reliable
- the index, which can be changed by users too.
This is very problematic, especially for Effects, or Shapes content, and the new master properties, which can be renamed AND reordered, so there is no reliable way to store a property in scripts.
Adding a unique identifier would solve this issue. It could work the same way the .id attribute work with items (comp, footage, folder).
Mike Overbeck commented
Project items have an id property that helps you identify them when they change names or index.
Something like this for layers and properties could be very useful.
It would be great to have this for keyframes as well.