On 01/07/2015 at 21:34, xxxxxxxx wrote:

I'm just curious...

How does one set the "tristate" state of a bitmap boolean control?

C4D's user data lists these under the bitmap bool configuration for user data (BITMAPBOOL_ACTIVE, BITMAPBOOL_INACTIVE, and BITMAPBOOL_TRISTATE). Likewise, the "BOOL" description accepts a CUSTOMGUI type of BITMAP_BOOL under which you can specify the same options and IDs for custom icons to show up in the GUI...

However, I have no idea what "TRISTATE" actually means or how you set it in Python. True and False obviously map to 1 and 0, but False can also be "None" as well. Setting the bool value to -1, 2, or any other integer seems to have no effect.

What exactly is tristate and is it settable through Python?


On 02/07/2015 at 01:23, xxxxxxxx wrote:


in Cinema 4D you can select multiple objects (of the same type). In this case the Attribute Manager tries to display the parameters of these objects. So a single GUI element has to display the values of multiple parameters. If all these values are the same this is no problem. But if the values are different the tristate is set to tell the GUI element to display something else like "Multiple Values". You find an example how a GUI element handles such a situation in the String CustomGUI C++ example.

The BITMAPBOOL_TRISTATE value lets one define the ID of the icon used to display that tristate.

Best wishes,

On 02/07/2015 at 05:30, xxxxxxxx wrote:

Ah, I see!

That makes sense. I thought maybe it was a setting for a boolean value other than 1 or 0. This makes more sense though. Thanks for the explanation!