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

    Dialog Remove Items and refresh

    SDK Help
    0
    2
    190
    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 12/07/2004 at 15:49, xxxxxxxx wrote:

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

      ---------
      Hi!

      I have a Dialog where I put some Items in on demand (textfields etc.)
      When this is done I call

      BaseContainer msg;
      msg.SetId(BFM_LAYOUT_CHANGED);
      SendParentMesssage(msg);

      This works fine and updates the dialog layout when calling it. BUT!

      When I want to remove these Elements by using RemoveElement() and then sending the Message to Parent this does NOT work - the Items are unavailable BUT the areas where thay are are not redrawn.

      Why? Does anyone of you hava an idea or better solution?

      Thank you,

      lawn

      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 12/07/2004 at 17:15, xxxxxxxx wrote:

        There is a better way, I think. See the AsyncTest.cpp file for how it handles dynamic (changing) groups. Then you can use this gem:

          
        void AsyncDialog::ReLayout(void)  
        {  
             LayoutFlushGroup(GROUP_DYNAMIC);  
             CreateDynamicGroup();  
             LayoutChanged(GROUP_DYNAMIC);  
        }  
        

        Now, this requires you to 'reconstruct', through your own CreateDynamicGroup() method, but it's fast enough to handle quite a large number of elements.

        HTH,
        Robert

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