Share via


IVsObjectList.GetExpandable2(UInt32, UInt32, Int32) Method

Definition

Returns a flag indicating whether the given list item is expandable.

public:
 int GetExpandable2(System::UInt32 index, System::UInt32 ListTypeExcluded, [Runtime::InteropServices::Out] int % pfExpandable);
int GetExpandable2(unsigned int index, unsigned int ListTypeExcluded, [Runtime::InteropServices::Out] int & pfExpandable);
public int GetExpandable2 (uint index, uint ListTypeExcluded, out int pfExpandable);
abstract member GetExpandable2 : uint32 * uint32 * int -> int
Public Function GetExpandable2 (index As UInteger, ListTypeExcluded As UInteger, ByRef pfExpandable As Integer) As Integer

Parameters

index
UInt32

[in] Specifies the index of the list item of interest.

ListTypeExcluded
UInt32

[in] Specifies the list types to be excluded. Values are taken from the _LIB_LISTTYPE enumeration. This is primarily to remove LLT_MEMBERS from consideration in object browser, where they are shown in a separate pane.

pfExpandable
Int32

[out] Pointer to a flag indicating expandability.

Returns

If the method succeeds, it returns S_OK. If it fails, it returns an error code.

Remarks

COM Signature

From vsshell.idl:

HRESULT IVsObjectList::GetExpandable2(  
   [in] ULONG Index,  
   [in] LIB_LISTTYPE ListTypeExcluded,  
   [out] BOOL *pfExpandable  
);  

The environment's object manager will call this method to determine if an object list node has child lists. The environment may also indicate a list type to exclude from the expandable check by assigning an enumerator of _LIB_LISTTYPE to the ListTypeExcluded parameter. Use of ListTypeExcluded results primarily from an Object Browser query where members are listed in the right pane. If you choose to implement GetCategoryField instead of GetExpandable2, return E_NOTIMPL from GetExpandable2. The environment will then call GetCategoryField to obtain expandability information.

Applies to