TREEVIEW

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

On 05/11/2003 at 03:00, xxxxxxxx wrote:

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

---------
I try to use a TREEVIEW to switch between different dialogs, like done in the cinema project settings.
I generated my dialog by using ResEdit 1.7, placing a TREEVIEW and a SubDialog in it. The subdialog is working fine, but I have no Idea how to initialize the TREEVIEW with some entries. I did unterstand the usage of the LISTVIEW ressource, but how can I handle the TREEVIEW? In LISTVIEW I attach a SimpleListView Object to the LISTVIEW ressource by AttachListView, followed by setting a layout and adding entries with SetLayout and SetItem. How is that done with TREEVIEW? I found the classes TreeViewCustomGui and TreeViewFunctions, but neither one of them contains a functions like AttachListView - or AttachTreeView in my case 😉
Anyone got an idea or has done that before?

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

On 05/11/2003 at 03:31, xxxxxxxx wrote:

I made for my TagManager plugin a custom linked-list for the TreeViewClass. Take a look a the SDK-example "ActiveObject.cpp" here the TreeView uses the Base2D-List.

But maybe Mikael knows an easier method ...

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

On 06/11/2003 at 02:12, xxxxxxxx wrote:

Hint I got from Mikael:
"Instead of AttachListView(), use GeDialog::AddCustomGui() to get a pointer to the TreeViewCustomGui for your TREEVIEW control. Then see TreeViewCustomGui::SetRoot() and TreeViewFunction."
Well...used FindCustomGui() to get a pointer, because I declared the Treeview in my dialog ressource file....dont know if I really understand the function, but a call like FindCustomGui( IDC_TREEVIEW_TARGETSETTINGS, PLUGIN_ID ) at least returns a valid pointer 🙂 Well....and now? Ok...C4D help says SetRoot "Initializes the tree"....sounds like the very next step to do. But I dont understand the TreeViewFunctions* SetRoot expects....naja ok, the ActiveObjects.cpp shows what you can do with it....overwrite all the functions in it...DO I REALLY HAVE TO DO THIS??? I just want to build a little tree with some entries, only strings, and switch my subdialogs according to the selection in the tree.....initializing TREEVIEW with some strings really sounds like 10 lines of code, do I really need to overwrite all the TreeViewFunctions??? Initializing a LISTVIEW at least is 10 lines of code, define a layout, insert items, et voila....finished.  Anyone knows an easy solution for that problem???

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

On 06/11/2003 at 02:21, xxxxxxxx wrote:

well.....and in addition...."void* userdata U ser data.".....aaaahja....what??? Somehow I get the impression, that the SDK-Help is only intended to be used by SDK-experts....or am I just too stupid to understand it????

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

On 06/11/2003 at 05:29, xxxxxxxx wrote:

Ok.....after some cups of ceylon mix and some closer looks.....really seems that there is no other way than to write my own TreeViewFunctions.....alot of work for just a little tree, but however, at least it'll be some highly reuseable part of code....