Maxon Developers Maxon Developers
    • Documentation
      • Cinema 4D Python API
      • Cinema 4D C++ API
      • Cineware API
      • ZBrush Python API
      • ZBrush GoZ API
      • Code Examples on Github
    • Forum
    • Downloads
    • Support
      • Support Procedures
      • Registered Developer Program
      • Plugin IDs
      • Contact Us
    • Categories
      • Overview
      • News & Information
      • Cinema 4D SDK Support
      • Cineware SDK Support
      • ZBrush 4D SDK Support
      • Bugs
      • General Talk
    • Unread
    • Recent
    • Tags
    • Users
    • Login

    Dynamic Controls in Attribute Manager?

    SDK Help
    0
    3
    351
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • H
      Helper
      last edited by

      THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

      On 24/03/2003 at 16:31, xxxxxxxx wrote:

      User Information:
      Cinema 4D Version:   8.1 
      Platform:   Windows  ;   
      Language(s) :     C++  ;

      ---------
      Hi again;

      here's a tricky problem. As nice as the "descriptions" and the automatic link between containers and the attribute manager are, there is one thing I haven't yet found out.

      Simple enough: When I check a checkbox in the attribute manager, I want another field to become active/inactive.

      With dialogs, this was easy enough: since I could intercept the messages and had access to the controls, I could update the controls whenever certain events came by.

      With the attribute manager, this is seemingly impossible (seemingly, because e.g. the Light attribute dialog does exactly that). The container description is passed to the plugin registration method as a string, and the rest happens automatically, including the GUI generation. I do not have any dialog or other GUI class to handle. The connection between the GUI that is displayed in the attribute manager and the container description is kept completely invisible.

      Now, I can still intercept messages, but the only example in the SDK I found handles only button messages. The same code won't work for checkboxes (there isn't even a message constant that looks like what I am searching for...). And even if it did, I would still have the problem of accessing the controls for enabling and disabling.

      So, here are the questions:
      - What class (or classes) are responsible for the GUI that is displayed in the attribute manager?
      - How do these classes connect with the plugin that was registered with the container/description?
      - How can I access these classes from the plugin?
      - How can I influence these classes' behaviour, subclass them for special handling, and link subclasses to the plugin?

      A few pointers to the correct methods would be appreciated...

      Thanks 🙂
      -- Cairyn --

      1 Reply Last reply Reply Quote 0
      • H
        Helper
        last edited by

        THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

        On 25/03/2003 at 11:01, xxxxxxxx wrote:

        This one is easy. Just overload NodeData::GetDEnabling() and return FALSE if the element should be disabled. This function is called often enough, for example each time the user clicks a checkbox.

        1 Reply Last reply Reply Quote 0
        • H
          Helper
          last edited by

          THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

          On 26/03/2003 at 13:34, xxxxxxxx wrote:

          E. Works fine so far. The class DescID seems to be missing in my helpfile(?), but I found the necessary examples for access to the actual LONG ID in the SDK plugins.

          So, I assume the attribute manager's dialog is not directly accessible or overrideable like a standard dialog.

          Thanks,
          -- Cairyn --

          1 Reply Last reply Reply Quote 0
          • First post
            Last post