Compartilhar via


MethodData Class

Definition

Important

This API is not CLS-compliant.

Provides support for the IntelliSense method tip operation.

public ref class MethodData : IDisposable, Microsoft::VisualStudio::TextManager::Interop::IVsMethodData
[System.CLSCompliant(false)]
public class MethodData : IDisposable, Microsoft.VisualStudio.TextManager.Interop.IVsMethodData
public class MethodData : IDisposable, Microsoft.VisualStudio.TextManager.Interop.IVsMethodData
[<System.CLSCompliant(false)>]
type MethodData = class
    interface IVsMethodData
    interface IDisposable
type MethodData = class
    interface IVsMethodData
    interface IDisposable
Public Class MethodData
Implements IDisposable, IVsMethodData
Inheritance
MethodData
Attributes
Implements

Remarks

This class is used by the Source class to implement the IntelliSense method tip operation. This class presents the tool tip and manages it as the user types the various parameters. This class uses a Methods object to contain all of the appropriate method signatures for the method currently being typed. This Methods object is filled in by the parser when the parsing reason MethodTip is given.

Notes to Inheritors

The base class already implements most of everything needed to support the IntelliSense method tip operation, so there is little need to derive from this class. If your language requires more specialized formatting of method data, then you must derive a class from the MethodData class and override the GetMethodText(Int32, MethodTextType) method. You must also override the CreateMethodData() method in the Source class to create an instance of your version of the MethodData class.

This class interacts with the Methods class to obtain information on how to format method signatures. Specifically, this class consults the properties, OpenBracket, CloseBracket, Delimiter, TypePrefixed, TypePrefix, and TypePostfix to format the method signatures in the method tip. Since all of this information is obtained through the Methods class, you should not need to override the MethodData class.

Notes to Callers

This class is instantiated in the CreateMethodData() method in the Source class.

Constructors

MethodData(IServiceProvider)

Initializes a new instance of the MethodData class.

Properties

IsDisplayed

Determines if the method tip is visible.

Methods

Determines the list of method signatures that can be displayed in the method tip.

MethodTipWindow

Determines the method tip window as represented by an IVsMethodTipWindow interface.

Provider

Determines the service provider.

TextView

Determines the view the method tip is displayed on.

Methods

AdjustCurrentParameter(Int32)

Update the current parameter, either forward or backward, by the specified amount.

Close()

Closes the method tip and clears the MethodData object.

Dismiss()

Dismisses the method tip from view.

Dispose()

Frees any allocations made just before the MethodData object is destroyed.

GetContextStream(Int32, Int32)

Converts the current context span to a file position and length.

GetCurMethod()

Returns the currently visible method signature.

GetCurrentParameter(Int32)

Returns the current parameter being edited in the specified method signature.

GetMethodText(Int32, MethodTextType)

Returns the specified text for the specified method signature.

GetOverloadCount()

Returns the number of method signatures that can be shown.

GetParameterCount(Int32)

Returns the number of parameters available for the specified method signature.

GetParameterText(Int32, Int32, ParameterTextType)

Returns the specified parameter text for the specified method signature.

NextMethod()

Moves to the next method signature and returns the index of the current method signature.

OnDismiss()

Called after the method tip is removed from view.

PrevMethod()

Moves to the previous method signature and returns the index of the current method signature.

Refresh(IVsTextView, Methods, Int32, TextSpan)

Displays the method tip with the given method signatures.

UpdateView()

Updates the method tip display.

Applies to