VsSymbolicNavigationManager Interface

Represents a global service that manages the list of IVsSymbolicNavigationNotify handlers that are registered on a project-scoped basis. This interface is available via QueryService.

Namespace:  Microsoft.VisualStudio.Shell.Interop
Assembly:  Microsoft.VisualStudio.Shell.Interop.9.0 (in Microsoft.VisualStudio.Shell.Interop.9.0.dll)

public interface VsSymbolicNavigationManager : IVsSymbolicNavigationManager

The VsSymbolicNavigationManager type exposes the following members.

Public methodOnBeforeNavigateToSymbolDetermines if there is an alternative source file to navigate to for a code symbol (a Goto Definition operation). (Inherited from IVsSymbolicNavigationManager.)
Public methodQueryNavigateToSymbolRetrieves the alternative navigation target for the symbol if there is one (this method does not do the actual navigation). (Inherited from IVsSymbolicNavigationManager.)
Public methodRegisterSymbolicNavigationNotifyRegisters the symbolic navigation notify implementation in the project. (Inherited from IVsSymbolicNavigationManager.)
Public methodUnregisterSymbolicNavigationNotifyUnregisters the symbolic navigation notify implementation. (Inherited from IVsSymbolicNavigationManager.)

The language service of a code language should call OnBeforeNavigateToSymbol on this service before performing a “go to definition” type of navigation to a symbol in code. This allows an advanced code generator system to overtake normal navigation and cause navigation to the definition of a symbol in the source document that generated the code definition.

This service loops through all of the registered objects, calling its symbol querying methods, until the first one handles the symbol. The order of the calls is undefined. Implementations of these methods should quickly respond false for any irrelevant files by checking the file extension of the input code file. Other quick checks should be made if the input IVsHierarchy is supported.

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
© 2015 Microsoft