THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 08/01/2008 at 13:11, xxxxxxxx wrote:
Cinema 4D Version: R9-R10
Platform: Windows ; Mac ; Mac OSX ;
Language(s) : C++ ;
Is there any way to set a static GROUP description's display name (DESC_SHORT_NAME) once (not in GetDDescription())? There is no need to do this in GetDDescription() as the description is neither dynamic nor going to change after the one-time setting. The name can't be set in the .res file since it is dependent upon other objects for the name (which may incur a trip to GetDDescription() - but hopefully not).
I've tried node->GetDescription(), GetParameterI(), GetCustomeDataTypeDefault(), SetParameter() with SetString(). None of these changes the GROUP name. Maxon really needs to make such simple things more difficult since only one or two days on it isn't enough - needs to take months or years!
On 08/01/2008 at 21:15, xxxxxxxx wrote:
Unfortunately, nothing seems to allow this outside of GetDDescription(). I refuse to go this route for a one-time setting. I've opted to add a STATICTEXT under the group to delineate the name - which is easily set (go figure).
I can see the reason for descriptions for AM elements but cannot understand the draconian restrictions and very limiting configurability of them. It isn't worth the effort to construct endless customgui elements to cover these trite limitations. User-friendly nesting, flexibility, configurability are essential to plugin efficacy and there is very little of that with the access provided. Could the developers consider adding some of this to future SDKs, please?
On 08/01/2008 at 23:38, xxxxxxxx wrote:
I am not sure I could follow you completly but you can set GROUP names in the description files.
ID_GROUPNAME = 1000
ID_GROUPNAME "Group Name";
This is also explained in the docu under "GROUP (descriptions)".
hope this helps
On 09/01/2008 at 00:19, xxxxxxxx wrote:
Right, but I need to rename the group after the fact - as it were. The name needs to be set in the code depending upon objects that come into existence after the resource. I can't find a way to do this besides via GetDDescription(). But this is not a truly dynamic situation - only needs to happen after the objects are established once and for all.
To be pedantic, there are three 'joints' which determine the joint rotations. These are named according to which way they bend the joint: Twist, Side-Side, Bend, Up-Down, Front-Back or some other description moniker. I can't determine beforehand which axial joint has which descriptive name (the order and names are indeterminant per joint). So for each group I wanted to set the group name accordingly. This doesn't seem possible. Setting a STATICTEXT under the group is, unfortunately but usefully.
Basically, a static GROUP name is set in stone while a simple bc->SetString(ID, String) works for a static text. I'm not even certain if changing the name (DESC_SHORT_NAME) in GetDDescription would work for a static group. Disconcerting actually.
On 09/01/2008 at 02:51, xxxxxxxx wrote:
Ah, I see. I am afraid there is currently no other place than GetDDescription to directly set the name. Please post this as suggestion to MAXON, use the suggestion formular, there is a new Plugin Development category.