CodeWindowManager Class
Wraps an IVsCodeWindow object for use in a language service.
Namespace: Microsoft.VisualStudio.Package
Assemblies: Microsoft.VisualStudio.Package.LanguageService (in Microsoft.VisualStudio.Package.LanguageService.dll)
Microsoft.VisualStudio.Package.LanguageService.9.0 (in Microsoft.VisualStudio.Package.LanguageService.9.0.dll)
Syntax
<CLSCompliantAttribute(False)> _
<ComVisibleAttribute(True)> _
Public Class CodeWindowManager _
Implements IVsCodeWindowManager
Dim instance As CodeWindowManager
[CLSCompliantAttribute(false)]
[ComVisibleAttribute(true)]
public class CodeWindowManager : IVsCodeWindowManager
[CLSCompliantAttribute(false)]
[ComVisibleAttribute(true)]
public ref class CodeWindowManager : IVsCodeWindowManager
public class CodeWindowManager implements IVsCodeWindowManager
Remarks
This class provides a default implementation of the VSIP interface, IVsCodeWindowManager and manages the LanguageService, Source, ViewFilter, and DocumentProperties objects associated with the given IVsCodeWindow.
This class calls CreateViewFilter on your LanguageService for each new IVsTextView created by Visual Studio and installs the resulting filter into the command chain. You do not have to override CreateViewFilter, since a default view filter will be created.
If your LanguageService returns an object from CreateDocumentProperties then you will have properties in the Properties window associated with your source files.
This class also provides support for optional drop-down combo boxes (also known as drop-down bars), as represented by the IVsDropdownBar interface, for listing types and members by installing the TypeAndMemberDropdownBars object returned from your CreateDropDownHelper method. If you do not implement CreateDropDownHelper, no drop down-bars are established.
Notes to Implementers:
If you need to add any user interface (UI) features to the view window, you can derive a class from the CodeWindowManager class and override the methods AddAdornments and RemoveAdornments; just be sure to call the base class versions of those methods in your implementations. Otherwise, the base class handles all normal chores associated with a language service.
Notes to Callers:
The LanguageService class maintains a list of CodeWindowManagers, one instance for each text view or open source file. The only methods called by Visual Studio are AddAdornments and RemoveAdornments (these are called directly) and CodeWindowManager.OnSetFocus and CodeWindowManager.OnKillFocus (these are called indirectly through the ViewFilter class in its implementation of the IVsTextViewEvents interface).
Inheritance Hierarchy
System.Object
Microsoft.VisualStudio.Package.CodeWindowManager
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.