IVsSimpleObjectList2.GetExpandable3(UInt32, UInt32, Int32) Method

Definition

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

public:
 int GetExpandable3(System::UInt32 index, System::UInt32 ListTypeExcluded, [Runtime::InteropServices::Out] int % pfExpandable);
int GetExpandable3(unsigned int index, unsigned int ListTypeExcluded, [Runtime::InteropServices::Out] int & pfExpandable);
public int GetExpandable3 (uint index, uint ListTypeExcluded, out int pfExpandable);
abstract member GetExpandable3 : uint32 * uint32 * int -> int
Public Function GetExpandable3 (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 vsshell80.idl:

HRESULT IVsSimpleObjectList2::GetExpandable3(  
   [in]  ULONG          Index,   
   [in]  LIB_LISTTYPE2  ListTypeExcluded,   
   [out] BOOL          *pfExpandable  
);  

The environment's object manager calls 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 a value from the _LIB_LISTTYPE enumeration 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 GetCategoryField2 instead of GetExpandable3, return E_NOTIMPL from GetExpandable3. The environment then calls GetCategoryField2 to obtain expandability information.

Applies to