I am working on an extension for exporting particle systems in blender to glTF. As my engine doesn't support as much stuff as blender, I am creating a template which exposes the properties that I support and internally modified blender properties.
That template is made of two objects, a frontend one which will show the properties and an internal one (which later will probably be some more), which have the actual blender stuff.
I want to avoid the user selecting the Kuesa.Particles.Internal
object, to avoid the user modifying the internal particle system properties or changing stuff, which may break the exporter.
Although the selection is disabled, this only works on the 3d viewport, but not on the outliner. Is there anyway to avoid the selection of something in the outliner? If not, I was thinking on using some kind of callback. When something is selected, check if it has a custom property type
with value Kuesa.Particles.Internal
and in that case, select the parent. How would I do something like that?