Colorizer Class

This class implements the IVsColorizer interface and is used to support syntax highlighting in an editor.

This API is not CLS-compliant. 


Namespace:  Microsoft.VisualStudio.Package
Assemblies:   Microsoft.VisualStudio.Package.LanguageService (in Microsoft.VisualStudio.Package.LanguageService.dll)
  Microsoft.VisualStudio.Package.LanguageService.10.0 (in Microsoft.VisualStudio.Package.LanguageService.10.0.dll)
  Microsoft.VisualStudio.Package.LanguageService.12.0 (in Microsoft.VisualStudio.Package.LanguageService.12.0.dll)
  Microsoft.VisualStudio.Package.LanguageService.11.0 (in Microsoft.VisualStudio.Package.LanguageService.11.0.dll)
  Microsoft.VisualStudio.Package.LanguageService.9.0 (in Microsoft.VisualStudio.Package.LanguageService.9.0.dll)

public class Colorizer : IVsColorizer, IDisposable

The Colorizer type exposes the following members.

Public methodColorizerInitializes the Colorizer class.

Public propertyScannerReturns the scanner being used.

Public methodCloseColorizerCalled when the colorizer is disposed of.
Public methodColorizeLineObtains color and font attribute information for each character in the specified line of text.
Public methodDisposeDisposes the object.
Public methodEqualsDetermines whether the specified object is equal to the current object. (Inherited from Object.)
Protected methodFinalizeCalled when the object is about to be destroyed. (Overrides Object.Finalize().)
Public methodGetColorInfoReturns the parsing state at the end of the line without returning any colorization information.
Public methodGetHashCodeServes as the default hash function. (Inherited from Object.)
Public methodGetLineInfoReturns color information about the specified line.
Public methodGetStartStateReturns the initial parsing state.
Public methodGetStateAtEndOfLineReturns the parsing state at the end of the specified line.
Public methodGetStateMaintenanceFlagCalled to determine if the colorizer requires per line state management.
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodResumeCalled to resume use of the colorizer.
Public methodSuspendCalled to suspend use of the colorizer.
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)

The managed package framework (MPF) version of this class uses an IScanner object to handle all parsing tasks. The IScanner object communicates color information through the TokenInfo structure. The Colorizer class also helps the IScanner object track state by passing around a state variable the parser maintains.

This class handles colorization on a line by line basis.

Notes to Implementers

The MPF version of this class performs all the work necessary to colorize a line of code by interacting with the IScanner object. If you find you need additional functionality not supported in the existing Colorizer class, you must derive a class from the Colorizer class and return an instance of your class from GetColorizer.

The default implementation of GetColorizer instantiates the MPF version of Colorizer, passing to the Colorizer constructor an instance of the IScanner object obtained from GetScanner.

Notes to Callers

The colorizer object returned from GetColorizer is stored in the Source object when the Source object is created. The Source object handles all interactions with the colorizer so there is no need for any outside involvement with the colorizer.

The methods of this class are documented in case you need to implement your own version of the Source class.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
© 2014 Microsoft