Hi Larry, thanks for the additional bug report.
So your original bug report was this:
quote:
When I manipulate a Truss* group (like adding an object), a byproduct is that the Framing group is all unhidden AND selected. This is startling (surprising) as I would have expected the hidden/exposed state to remain unchanged and not have the top level group wind up being selected.
If I understand your new steps correctly there isn't any step involved for adding an object as was described in the original bug report, your steps are about running distribute on objects that are sub objects contained within another group, is that correct?
So that's a different bug than adding an object.
I can definitely reproduce that there is a bug in using Distribute on objects that are contained within a group (unlike running them on top level groups as was previously fixed). It unfortunately may be a difficult problem for a script to solve though, because when an object that is contained within a group is modified it means the top level group object gets reconstructed. So when the distribute script tries to modify several objects in a loop that are contained within the same top level group structure, when the second object is processed it is going to try and rebuild the original parent group, not the new one that is the result of the previous processed object.
This is solved for built in transform commands because they do some additional processing on a whole batch of transformed objects at once and know how to deal with groups.
I'll have to think some about whether it will be feasible to deal with this automatically or whether it will need a new API to be used by scripts that transform objects to submit them in one batch. Either way will require changes in the back end processing and so won't be fixed by just editing the script itself.
- Michael
|