SDK:Working with Hierarchical VWListBrowserCtrl: Difference between revisions

From Vectorworks Developer
Jump to navigation Jump to search
No edit summary
No edit summary
Line 30: Line 30:
</code>
</code>


=== Coding : how to activte the hierarchical mode ===


<code lang="cpp">
// activating hierarchical mode
gSDK->EnableListBrowserHierarchicalDisplay( GetDialogID(), GetControlID, true );
// telling LB which column is the one with collapse/expand picture
gSDK->SetListBrowserHierarchicalDisplayColumn( GetDialogID(), GetControlID, kFirstColumnIndex );
// we need to put these attributes. It doesn't work without them
gSDK->SetListBrowserItemDisplayType( GetDialogID(), GetControlID, kFirstColumnIndex, kListBrowserDisplayImageAndText );
gSDK->SetListBrowserControlType( GetDialogID(), GetControlID, kFirstColumnIndex, kListBrowserControlDiscTriangle);
</code>
== <other general topic> ==
== <other general topic> ==



Revision as of 06:04, 23 October 2013

.SDK|SDK ..SDK:Types|SDK Types ..SDK:Using the SDK|Using the SDK ..VCOM:VCOM (Vectorworks Component Object Model)|VCOM Basics ..VCOM:Class Reference|VCOM Class Reference

Introduction

Since Vectorworks 2013 it is possible to create hierarchical list browsers ie with rows which can be expanded to reveal other rows, recursively.


<Example>

A hierarchical list browser in Vectorworks

We will try in this article to get the result shown above.

Basic concept : the '-' character

First thing to understand with hierarchical list browsers is that you don't insert every rows shown in the result. In our example, the inserted rows in the list browser are :

abcd-first row
abcd-2nd row
abcd-3rd row
abcd-4th row
EFGH-1st row
EFGH-2nd row
EFGH-3rd row-AA
EFGH-3rd row-BB
EFGH-3rd row-CC

Coding : how to activte the hierarchical mode

// activating hierarchical mode
gSDK->EnableListBrowserHierarchicalDisplay( GetDialogID(), GetControlID, true );

// telling LB which column is the one with collapse/expand picture
gSDK->SetListBrowserHierarchicalDisplayColumn( GetDialogID(), GetControlID, kFirstColumnIndex );

// we need to put these attributes. It doesn't work without them
gSDK->SetListBrowserItemDisplayType( GetDialogID(), GetControlID, kFirstColumnIndex, kListBrowserDisplayImageAndText );
gSDK->SetListBrowserControlType( GetDialogID(), GetControlID, kFirstColumnIndex, kListBrowserControlDiscTriangle);

<other general topic>

...

See Also

SDK:Working with VWListBrowserCtrl | SDK:Layout Manager: List Browser