Package org.eclipse.jface.text.formatter
Interface IContentFormatterExtension
- All Known Implementing Classes:
MultiPassContentFormatter
public interface IContentFormatterExtension
Extension interface for
The formatting context must be set up according to the desired formatting mode:
IContentFormatter
.
Updates the content formatter to be able to pass IFormattingContext
context objects to
IFormattingStrategyExtension
objects operating in context based mode.
format(IDocument, IFormattingContext)
with a properly initialized formatting
context.The formatting context must be set up according to the desired formatting mode:
- For whole document formatting set the property
FormattingContextProperties.CONTEXT_DOCUMENT
. This is equivalent to settingFormattingContextProperties.CONTEXT_REGION
with a region spanning the whole document. - For multiple region formatting set the property
FormattingContextProperties.CONTEXT_REGION
. Note that the content formatter automatically aligns the region to a block selected region, and if the region spans multiple partitions, it also completes eventual partitions covered only partially by the region.
FormattingContextProperties.CONTEXT_PREFERENCES
.
Note that in context based mode the content formatter is fully reentrant, but not thread-safe.
- Since:
- 3.0
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionvoid
format
(IDocument document, IFormattingContext context) Formats the given region of the specified document.
-
Method Details
-
format
Formats the given region of the specified document.The formatter may safely assume that it is the only subject that modifies the document at this point in time. This method is fully reentrant, but not thread-safe.
The formatting process performed by
format(IDocument, IFormattingContext)
happens as follows:- In a first pass the content formatter formats the range of the document to be formatted by using the master formatting strategy. This happens regardless of the content type of the underlying partition.
- In the second pass, the range is formatted again, this time using the registered slave formatting strategies. For each partition contained in the range to be formatted, the content formatter determines its content type and formats the partition with the correct formatting strategy.
- Parameters:
document
- the document to be formattedcontext
- the formatting context to pass to the formatting strategies. This argument must not benull
.
-