Setting DESC_MAX
-
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 03/11/2008 at 12:14, xxxxxxxx wrote:
User Information:
Cinema 4D Version: 10.1
Platform: Windows ; Mac ;
Language(s) : C++ ;---------
I want to set the DESC_MAX of a LONG description in my plugin object. It must be done from the ::GetVirtualObjects() function, and not from the ::GetDDescription() function, because the new MAX value depends on things that happend in the scene.Tried it like this:
>
Bool SetDescriptionMax(BaseObject \*op, LONG MyDescID, LONG Value) \> { \> AutoAlloc<AtomArray> ar; if(!ar) return FALSE; \> AutoAlloc<Description> desc; if (!desc) return FALSE; \> ar->Append(static_cast<C4DAtom\*>(op)); \> \> op->GetDescription(desc, 0); \> BaseContainer \*bc = desc->GetParameterI(DescLevel(MyDescID), ar); \> if (bc) bc->SetLong(DESC_MAX, Value); \> else return FALSE; \> \> return TRUE; \> }
But it doesn't work. Nothing happens. Debugging the function showed me that it runs fine and returns TRUE, but the MAX value of my description is not changed, I can still input values greater than the desired value in the Attribute Manager.
How does this work?
Thanks in advance for any help!
Greetings,
Jack -
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 04/11/2008 at 02:21, xxxxxxxx wrote:
You have to use GetDDescription(). If you have to detect changes in GetVirtualObjects() than store this for instance in sub-container in your object's own container. Read this out in GetDDescription() and make your changes to the description.
cheers,
Matthias -
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 04/11/2008 at 12:26, xxxxxxxx wrote:
OK, will do.
Thanks once again, Matthias!Greetings,
Jack