Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 


Eclipse Platform
Release 3.5

org.eclipse.jface.text
Interface ITextViewerExtension2

All Known Implementing Classes:
ProjectionViewer, SourceViewer, TextConsoleViewer, TextViewer

public interface ITextViewerExtension2

Extension interface for ITextViewer.

It provides

  • text presentation invalidation enhancements
  • text hover management enhancements
  • a replacement for auto indent strategies
  • support for custom painters
It extends the means for text presentation invalidation by allowing a specific region of the presentation to get invalidated. It replaces ITextViewer.setTextHover(ITextHover, String) with a new method that allows to specify state masks for a better control of the hover behavior.

An IAutoEditStrategy is a generalization of the original IAutoIndentStrategy. Auto edit strategies can be arranged in a list that is executed like a pipeline when the viewer content is changed.

A IPainteris creating and managing visual decorations on the viewer's text widget. Viewer's can have an open number of painters. Painters are informed about changes to the viewer content and state and can take the necessary action in responds to the notification.

Since:
2.1

Field Summary
static int DEFAULT_HOVER_STATE_MASK
          The state mask of the default hover (value 0xff).
 
Method Summary
 void addPainter ( IPainter painter)
          Adds the given painter to this viewer.
  ITextHover getCurrentTextHover ()
          Returns the currently displayed text hover if any, null otherwise.
  Point getHoverEventLocation ()
          Returns the location at which the most recent mouse hover event has occurred.
 void invalidateTextPresentation (int offset, int length)
          Invalidates the viewer's text presentation for the given range.
 void prependAutoEditStrategy ( IAutoEditStrategy strategy, String contentType)
          Prepends the given auto edit strategy to the existing list of strategies for the specified content type.
 void removeAutoEditStrategy ( IAutoEditStrategy strategy, String contentType)
          Removes the first occurrence of the given auto edit strategy in the list of strategies registered under the specified content type.
 void removePainter ( IPainter painter)
          Removes the given painter from this viewer.
 void removeTextHovers ( String contentType)
          Removes all text hovers for the given content type independent from their state mask.
 void setTextHover ( ITextHover textViewerHover, String contentType, int stateMask)
          Sets this viewer's text hover for the given content type and the given state mask.
 

Field Detail

DEFAULT_HOVER_STATE_MASK

static final int DEFAULT_HOVER_STATE_MASK
The state mask of the default hover (value 0xff).

See Also:
Constant Field Values
Method Detail

invalidateTextPresentation

void invalidateTextPresentation(int offset,
                                int length)
Invalidates the viewer's text presentation for the given range.

Parameters:
offset - the offset of the first character to be redrawn
length - the length of the range to be redrawn

setTextHover

void setTextHover(
ITextHover textViewerHover,
                  
String contentType,
                  int stateMask)
Sets this viewer's text hover for the given content type and the given state mask. If the given text hover is null, any hover installed for the given content type and state mask is removed.

Parameters:
textViewerHover - the new hover or null
contentType - the type for which the hover is to be registered or unregistered
stateMask - the SWT event state mask; DEFAULT_HOVER_STATE_MASK indicates that the hover is installed as the default hover.

removeTextHovers

void removeTextHovers(
String contentType)
Removes all text hovers for the given content type independent from their state mask.

Note: To remove a hover for a given content type and state mask use setTextHover(ITextHover, String, int) with null as parameter for the text hover.

Parameters:
contentType - the type for which all text hovers are to be unregistered

getCurrentTextHover

ITextHover getCurrentTextHover()
Returns the currently displayed text hover if any, null otherwise.

Returns:
the currently displayed text hover or null

getHoverEventLocation

Point getHoverEventLocation()
Returns the location at which the most recent mouse hover event has occurred.

Returns:
the location of the most recent mouse hover event

prependAutoEditStrategy

void prependAutoEditStrategy(
IAutoEditStrategy strategy,
                             
String contentType)
Prepends the given auto edit strategy to the existing list of strategies for the specified content type. The strategies are called in the order in which they appear in the list of strategies.

Parameters:
strategy - the auto edit strategy
contentType - the content type

removeAutoEditStrategy

void removeAutoEditStrategy(
IAutoEditStrategy strategy,
                            
String contentType)
Removes the first occurrence of the given auto edit strategy in the list of strategies registered under the specified content type.

Parameters:
strategy - the auto edit strategy
contentType - the content type

addPainter

void addPainter(
IPainter painter)
Adds the given painter to this viewer.

Parameters:
painter - the painter to be added

removePainter

void removePainter(
IPainter painter)
Removes the given painter from this viewer. If the painter has not been added to this viewer, this call is without effect.

Parameters:
painter - the painter to be removed

Eclipse Platform
Release 3.5

Guidelines for using Eclipse APIs.

Copyright (c) Eclipse contributors and others 2000, 2008. All rights reserved.


 
 
  Published under the terms of the Eclipse Public License Version 1.0 ("EPL") Design by Interspire