Maxon Developers Maxon Developers
    • Documentation
      • Cinema 4D Python API
      • Cinema 4D C++ API
      • Cineware 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

    LISTVIEW in Attributemanager

    SDK Help
    0
    8
    986
    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 11/05/2012 at 02:08, xxxxxxxx wrote:

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

      ---------
      Hello,

      I'm creating a tag plugin and need an LISTVIEW element (like for dialogs) in the container, which should appears in the Attributemanager. But unfortunately this element is only for dialogs available. Is there a simple way to using this also in the basecontainer of a tag?

      regards
      Markus

      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 14/05/2012 at 02:34, xxxxxxxx wrote:

        Hi Marky,
        the following seems to get something showing in R12, you may be able to adapt for R13? I use it in the GetDDescription().

        cid_Tree = DescLevel(ID_OF_TREE_HERE, CUSTOMGUI_TREEVIEW, 0);  
        if (!id_Tree || cid_Tree.IsPartOf(*id_Tree,NULL))  
        {  
        BaseContainer locked = GetCustomDataTypeDefault(CUSTOMGUI_TREEVIEW);  
        locked.SetLong(DESC_CUSTOMGUI, CUSTOMGUI_TREEVIEW);  
        locked.SetBool(DESC_HIDE, Data_Bank);  
        locked.SetLong(TREEVIEW_BORDER, BORDER_BLACK);  
        locked.SetBool(TREEVIEW_OUTSIDE_DROP, TRUE);  
        locked.SetBool(TREEVIEW_HAS_HEADER, TRUE);  
        locked.SetLong(DESC_ANIMATE, DESC_ANIMATE_OFF);  
        locked.SetString(DESC_NAME, "Treeview");  
        locked.SetString(DESC_SHORT_NAME, "Treeview");  
        if (!description->SetParameter(cid_Tree, locked, DescLevel(ID_TAB_TREEVIEW))) return TRUE;  
        }
        

        Hope this helps!
         
        WP

        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 14/05/2012 at 10:04, xxxxxxxx wrote:

          Could you possibly post a more complete example of this WP?

          There's a lot off specific resource files needed for this. And I'm having a hard time figuring it out how to recreate all those .h, .res, .str files based on your little .cpp snippet.

          -ScottA

          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 14/05/2012 at 17:52, xxxxxxxx wrote:

            Hi Scott,
             
            I'll try...!! I'm not really sure what to add being just a beginner at this but...
             
            Basically the code snippet above goes straight into the GetDDescription(). I don't use any external resource files to build the AM. Just a preference I have to keep everything in the same .cpp file I guess. However I did need to add this header:

            #include "..\..\..\resource\_api\c4d_customgui\customgui_listview.h"
            

            If you search for TREEVIEW in the sdk browser and select the TREEVIEW_Settings you should get a list of flags to use with it. I did have some troubles getting anything to work with what I have above - such as dragging and dropping an object to the list - but I didn't spend much time trying to recreate that side of it.
             
            If you can bare with me for a day or two I'll see if I can add a bit more functionality to it.
             
            Kind regards,
             
            Phil - a.k.a. WickedP!

            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 14/05/2012 at 19:22, xxxxxxxx wrote:

              Thanks,

              But the problem I'm having is you have some custom things in your code. Things that are not defined in that customgui_listview.h file.
              And you don't show where they come from. So they are undefined when I paste your code into my own tag plugin.

                  DescID cid_Tree;  
                cid_Tree = DescLevel(ID_OF_TREE_HERE, CUSTOMGUI_TREEVIEW, 0);     //ID_OF_TREE_HERE?...where is this in your files?  
                if(!id_Tree || cid_Tree.IsPartOf(*id_Tree,NULL))                  //id_Tree?.......... where is this in your files?         
                {  
                 BaseContainer locked = GetCustomDataTypeDefault(CUSTOMGUI_TREEVIEW);  
                 locked.SetLong(DESC_CUSTOMGUI, CUSTOMGUI_TREEVIEW);  
                 locked.SetBool(DESC_HIDE, Data_Bank);                            //Data_Bank? ........where is this in your files?   
                 locked.SetLong(TREEVIEW_BORDER, BORDER_BLACK);  
                 locked.SetBool(TREEVIEW_OUTSIDE_DROP, TRUE);  
                 locked.SetBool(TREEVIEW_HAS_HEADER, TRUE);  
                 locked.SetLong(DESC_ANIMATE, DESC_ANIMATE_OFF);  
                 locked.SetString(DESC_NAME, "Treeview");  
                 locked.SetString(DESC_SHORT_NAME, "Treeview");  
                 if(!description->SetParameter(cid_Tree, locked, DescLevel(ID_TAB_TREEVIEW))) return TRUE; //ID_TAB_TREEVIEW?...where is this in your files?   
                }
              

              Someplace in your code you have these custom things defined.
              I've tried to substitute the items that are undefined with various things. But when I do that I can't get a tree gui to show up in my tag's AM at all.

              -ScottA

              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 14/05/2012 at 19:51, xxxxxxxx wrote:

                Ah - my apologies Scott,
                 
                I see what you mean now. See if the following is of more help:

                enum  
                {  
                 ID_TAB_TREE = 50000,  
                 ID_TAB_TREEVIEW,  
                 ID_OF_TREE_HERE,  
                };
                 
                // and then the Description function:
                 
                Bool EXPERIMENTS::GetDDescription(GeListNode *node, Description *description, DESCFLAGS_DESC & flags)  
                {  
                  Bool Data_Bank;
                     const DescID *id_Tree = description->GetSingleDescID();       // THE "TREE" TAB
                 
                 Data_Bank = FALSE;
                 
                 DescID cid_Tree = DescLevel(ID_TAB_TREE, DTYPE_GROUP, 0);  
                 if (!id_Tree || cid_Tree.IsPartOf(*id_Tree,NULL))  
                 {  
                 BaseContainer group = GetCustomDataTypeDefault(DTYPE_GROUP);  
                 group.SetBool(DESC_HIDE, Data_Bank);  
                 group.SetString(DESC_NAME, "Tree Tab");  
                 group.SetString(DESC_SHORT_NAME, "Tree Tab");  
                 if (!description->SetParameter(cid_Tree, group, DescLevel(0))) return TRUE;  
                 }
                 
                 cid_Tree = DescLevel(ID_TAB_TREEVIEW, DTYPE_GROUP, 0);  
                 if (!id_Tree || cid_Tree.IsPartOf(*id_Tree,NULL))  
                 {  
                 BaseContainer subgroup = GetCustomDataTypeDefault(DTYPE_GROUP);  
                 subgroup.SetLong(DESC_COLUMNS, 1);  
                 subgroup.SetBool(DESC_HIDE, Data_Bank);  
                 subgroup.SetString(DESC_NAME, "");  
                 subgroup.SetString(DESC_SHORT_NAME, "");  
                 if (!description->SetParameter(cid_Tree, subgroup, DescLevel(ID_TAB_TREE))) return TRUE;  
                 }
                 
                  cid_Tree = DescLevel(ID_OF_TREE_HERE, CUSTOMGUI_TREEVIEW, 0);  
                if (!id_Tree || cid_Tree.IsPartOf(*id_Tree,NULL))  
                {  
                BaseContainer locked = GetCustomDataTypeDefault(CUSTOMGUI_TREEVIEW);  
                locked.SetLong(DESC_CUSTOMGUI, CUSTOMGUI_TREEVIEW);  
                locked.SetBool(DESC_HIDE, Data_Bank);  
                locked.SetLong(TREEVIEW_BORDER, BORDER_BLACK);  
                locked.SetBool(TREEVIEW_OUTSIDE_DROP, TRUE);  
                locked.SetBool(TREEVIEW_HAS_HEADER, TRUE);  
                locked.SetLong(DESC_ANIMATE, DESC_ANIMATE_OFF);  
                locked.SetString(DESC_NAME, "Treeview");  
                locked.SetString(DESC_SHORT_NAME, "Treeview");  
                if (!description->SetParameter(cid_Tree, locked, DescLevel(ID_TAB_TREEVIEW))) return TRUE;  
                }
                  
                flags |= DESCFLAGS_DESC_LOADED;
                return TRUE;
                }  
                

                Is that more of what you were after?
                 
                WP.

                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 14/05/2012 at 20:08, xxxxxxxx wrote:

                  Yeah. That's what I needed.
                  Thanks.🍺

                  -ScottA

                  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 14/05/2012 at 23:58, xxxxxxxx wrote:

                    hi, thanks for your help WP. I will try it out...👍

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