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
Answertopia.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.viewers
Class StyledCellLabelProvider


java.lang.Object
  extended by 

org.eclipse.core.commands.common.EventManager
      extended by 

org.eclipse.jface.viewers.BaseLabelProvider
          extended by 

org.eclipse.jface.viewers.CellLabelProvider
              extended by 

org.eclipse.jface.viewers.OwnerDrawLabelProvider
                  extended by 
org.eclipse.jface.viewers.StyledCellLabelProvider
All Implemented Interfaces:
IBaseLabelProvider
Direct Known Subclasses:
DelegatingStyledCellLabelProvider

public abstract class StyledCellLabelProvider
extends OwnerDrawLabelProvider

A StyledCellLabelProvider supports styled labels by using owner draw. Besides the styles in labels, the label provider preserves native viewer behavior:

  • similar image and label positioning
  • native drawing of focus and selection

For providing the label's styles, create a subclass and overwrite update(ViewerCell) to return set all information needed to render a element. Use ViewerCell.setStyleRanges(StyleRange[]) to set style ranges on the label.

Since:
3.4

Field Summary
static int COLORS_ON_SELECTION
          Style constant for indicating that the styled colors are to be applied even it the viewer's item is selected.
static int NO_FOCUS
          Style constant for indicating to draw the focus if requested by the owner draw event.
 
Constructor Summary
StyledCellLabelProvider ()
          Creates a new StyledCellLabelProvider.
StyledCellLabelProvider (int style)
          Creates a new StyledCellLabelProvider.
 
Method Summary
 void dispose ()
          The BaseLabelProvider implementation of this IBaseLabelProvider method clears its internal listener list.
protected  void erase ( Event event, Object element)
          Handle the erase event.
protected   ViewerColumn getColumn ()
          Returns the column on which this label provider is installed on or null if the label provider is not installed.
protected   ColumnViewer getViewer ()
          Returns the viewer on which this label provider is installed on or null if the label provider is not installed.
 void initialize ( ColumnViewer viewer, ViewerColumn column)
          This implementation of CellLabelProvider.initialize(ColumnViewer, ViewerColumn) delegates to OwnerDrawLabelProvider.initialize(ColumnViewer, ViewerColumn, boolean) with a value of true for enableOwnerDraw.
 boolean isOwnerDrawEnabled ()
          Returns true is the owner draw rendering is enabled for this label provider.
protected  void measure ( Event event, Object element)
          Handle the measure event.
protected  void paint ( Event event, Object element)
          Handle the paint event.
protected   StyleRange prepareStyleRange ( StyleRange styleRange, boolean applyColors)
          Prepares the given style range before it is applied to the label.
 void setOwnerDrawEnabled (boolean enabled)
          Specifies whether owner draw rendering is enabled for this label provider.
static  StyledString styleDecoratedString ( String decoratedString, StyledString.Styler decorationStyler, StyledString styledString)
          Applies decoration styles to the decorated string and adds the styles of the previously undecorated string.
 void update ( ViewerCell cell)
          Update the label for cell.
 
Methods inherited from class org.eclipse.jface.viewers. OwnerDrawLabelProvider
dispose, initialize, setOwnerDrawEnabled, setUpOwnerDraw
 
Methods inherited from class org.eclipse.jface.viewers. CellLabelProvider
getToolTipBackgroundColor, getToolTipDisplayDelayTime, getToolTipFont, getToolTipForegroundColor, getToolTipImage, getToolTipShift, getToolTipStyle, getToolTipText, getToolTipTimeDisplayed, useNativeToolTip
 
Methods inherited from class org.eclipse.jface.viewers. BaseLabelProvider
addListener, fireLabelProviderChanged, isLabelProperty, removeListener
 
Methods inherited from class org.eclipse.core.commands.common. EventManager
addListenerObject, clearListeners, getListeners, isListenerAttached, removeListenerObject
 
Methods inherited from class java.lang. Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

COLORS_ON_SELECTION

public static final int COLORS_ON_SELECTION
Style constant for indicating that the styled colors are to be applied even it the viewer's item is selected. Default is not to apply colors.

See Also:
Constant Field Values

NO_FOCUS

public static final int NO_FOCUS
Style constant for indicating to draw the focus if requested by the owner draw event. Default is to draw the focus.

See Also:
Constant Field Values
Constructor Detail

StyledCellLabelProvider

public StyledCellLabelProvider()
Creates a new StyledCellLabelProvider. By default, owner draw is enabled, focus is drawn and no colors are painted on selected elements.


StyledCellLabelProvider

public StyledCellLabelProvider(int style)
Creates a new StyledCellLabelProvider. By default, owner draw is enabled.

Parameters:
style - the style bits
See Also:
COLORS_ON_SELECTION, NO_FOCUS
Method Detail

isOwnerDrawEnabled

public boolean isOwnerDrawEnabled()
Returns true is the owner draw rendering is enabled for this label provider. By default owner draw rendering is enabled. If owner draw rendering is disabled, rending is done by the viewer and no styled ranges (see ViewerCell.getStyleRanges()) are drawn.

Returns:
true is the rendering of styles is enabled.

setOwnerDrawEnabled

public void setOwnerDrawEnabled(boolean enabled)
Specifies whether owner draw rendering is enabled for this label provider. By default owner draw rendering is enabled. If owner draw rendering is disabled, rendering is done by the viewer and no styled ranges (see ViewerCell.getStyleRanges()) are drawn. It is the caller's responsibility to also call StructuredViewer.refresh() or similar methods to update the underlying widget.

Parameters:
enabled - specifies if owner draw rendering is enabled

getViewer

protected final 
ColumnViewer getViewer()
Returns the viewer on which this label provider is installed on or null if the label provider is not installed.

Returns:
the viewer on which this label provider is installed on or null if the label provider is not installed.

getColumn

protected final 
ViewerColumn getColumn()
Returns the column on which this label provider is installed on or null if the label provider is not installed.

Returns:
the column on which this label provider is installed on or null if the label provider is not installed.

initialize

public void initialize(
ColumnViewer viewer,
                       
ViewerColumn column)
Description copied from class: OwnerDrawLabelProvider
This implementation of CellLabelProvider.initialize(ColumnViewer, ViewerColumn) delegates to OwnerDrawLabelProvider.initialize(ColumnViewer, ViewerColumn, boolean) with a value of true for enableOwnerDraw. Subclasses may override this method but should either call the super implementation or, alternatively, OwnerDrawLabelProvider.initialize(ColumnViewer, ViewerColumn, boolean).

Overrides:
initialize in class OwnerDrawLabelProvider
Parameters:
viewer - the viewer
column - the column, or null if a column is not available.

dispose

public void dispose()
Description copied from class: BaseLabelProvider
The BaseLabelProvider implementation of this IBaseLabelProvider method clears its internal listener list. Subclasses may extend but should call the super implementation.

Specified by:
dispose in interface IBaseLabelProvider
Overrides:
dispose in class BaseLabelProvider

update

public void update(
ViewerCell cell)
Description copied from class: CellLabelProvider
Update the label for cell.

Overrides:
update in class OwnerDrawLabelProvider
Parameters:
cell - ViewerCell

prepareStyleRange

protected 
StyleRange prepareStyleRange(
StyleRange styleRange,
                                       boolean applyColors)
Prepares the given style range before it is applied to the label. This method makes sure that no colors are drawn when the element is selected. The current version of the StyledCellLabelProvider will also ignore all font settings on the style range. Clients can override.

Parameters:
styleRange - the style range to prepare. the style range element must not be modified
applyColors - specifies if colors should be applied.
Returns:
returns the style range to use on the label

erase

protected void erase(
Event event,
                     
Object element)
Handle the erase event. The default implementation does nothing to ensure keep native selection highlighting working.

Overrides:
erase in class OwnerDrawLabelProvider
Parameters:
event - the erase event
element - the model object
See Also:
SWT.EraseItem

measure

protected void measure(
Event event,
                       
Object element)
Description copied from class: OwnerDrawLabelProvider
Handle the measure event.

Specified by:
measure in class OwnerDrawLabelProvider
Parameters:
event - the measure event
element - the model element
See Also:
SWT.MeasureItem

paint

protected void paint(
Event event,
                     
Object element)
Description copied from class: OwnerDrawLabelProvider
Handle the paint event.

Specified by:
paint in class OwnerDrawLabelProvider
Parameters:
event - the paint event
element - the model element
See Also:
SWT.PaintItem

styleDecoratedString

public static 
StyledString styleDecoratedString(
String decoratedString,
                                                
StyledString.Styler decorationStyler,
                                                
StyledString styledString)
Applies decoration styles to the decorated string and adds the styles of the previously undecorated string.

If the decoratedString contains the styledString, then the result keeps the styles of the styledString and styles the decorations with the decorationStyler. Otherwise, the decorated string is returned without any styles.

Parameters:
decoratedString - the decorated string
decorationStyler - the styler to use for the decoration or null for no styles
styledString - the original styled string
Returns:
the styled decorated string (can be the given styledString)
Since:
3.5

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