IVsExpansionClient::IsValidType Method (IVsTextLines^, array<TextSpan>^, array<String^>^, Int32, Int32)
Called to verify that the specified location can accept the specified types of code snippets.
Assembly: Microsoft.VisualStudio.TextManager.Interop.8.0 (in Microsoft.VisualStudio.TextManager.Interop.8.0.dll)
int IsValidType( IVsTextLines^ pBuffer, array<TextSpan>^ ts, array<String^>^ rgTypes, int iCountTypes, [OutAttribute] int% pfIsValidType )
Parameters
- pBuffer
-
Type:
Microsoft.VisualStudio.TextManager.Interop::IVsTextLines^
[in] An IVsTextLines object that represents the text buffer where the code snippet is to be inserted.
- ts
-
Type:
array<Microsoft.VisualStudio.TextManager.Interop::TextSpan>^
[in] A TextSpan object that describes the location where the code snippet is to be inserted.
- rgTypes
-
Type:
array<System::String^>^
[in] An array strings specifying the types of the code snippet to be inserted. This can be a null value if iCountTypes is 0. See Remarks.
- iCountTypes
-
Type:
System::Int32
[in] The number of types specified in the rgTypes array.
- pfIsValidType
-
Type:
System::Int32
[out] Non-zero (TRUE) if the code snippet can be inserted into the specified location based on its types; zero (FALSE) if the code snippet cannot be inserted.
Return Value
Type: System::Int32If the method succeeds, it returns S_OK. If it fails, it returns an error code.
From textmgr2.idl:
bool IVsExpansionClient::IsValidType( [in]IVsTextLines *pBuffer, [in]TextSpan *ts, [in, size_is(iCountTypes)]BSTR* rgTypes, [in] int iCountTypes );
The rgTypes list contains strings that specify the types of snippets to display. These types can be "Expansion" or "SurroundsWith" (see for details on snippet types). It is possible for a code snippet to not have a type associated with it, in which case the iCountTypes parameter is 0.1a7a93ab-1af1-4f38-babf-a9aa5315b45c