Class Win7GridColumnHeaderRenderer
- java.lang.Object
-
- org.eclipse.nebula.widgets.grid.AbstractRenderer
-
- org.eclipse.nebula.widgets.grid.AbstractInternalWidget
-
- org.eclipse.nebula.widgets.grid.GridHeaderRenderer
-
- org.eclipse.nebula.widgets.grid.internal.DefaultColumnHeaderRenderer
-
- org.eclipse.nebula.widgets.grid.internal.win7.Win7GridColumnHeaderRenderer
-
- All Implemented Interfaces:
IInternalWidget,IRenderer
public class Win7GridColumnHeaderRenderer extends DefaultColumnHeaderRenderer
Column header renderer which emulates a default Win7 L&F. This implementation does not take into account any theme(s) applied to the OS and only used a pre-defined set of normalColors that seem to "mostly" match the default theme of Win7 normalColors.
-
-
Field Summary
Fields Modifier and Type Field Description (package private) intarrowMarginprivate SortArrowRendererarrowRenderer(package private) intbottomMargin(package private) intimageSpacing(package private) intleftMarginprivate Win7PaletteProviderpalette(package private) intrightMarginprivate org.eclipse.swt.graphics.TextLayouttextLayout(package private) inttopMarginprivate inttruncationStyle-
Fields inherited from interface org.eclipse.nebula.widgets.grid.IInternalWidget
LeftMouseButtonDown, MouseMove
-
-
Constructor Summary
Constructors Constructor Description Win7GridColumnHeaderRenderer(Win7PaletteProvider palette)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private org.eclipse.swt.graphics.PointcomputeControlSize(GridColumn column)protected static voiddrawColumnHeader(org.eclipse.swt.graphics.GC graphics, org.eclipse.swt.graphics.Rectangle bounds, org.eclipse.swt.graphics.Color[] colors)Draw the column header based on the given colorsprotected static voiddrawColumnSelectedTopShadow(org.eclipse.swt.graphics.GC graphics, org.eclipse.swt.graphics.Rectangle bounds, org.eclipse.swt.graphics.Color[] colors)Draw an additional shadow for the selected column stateprivate voidgetTextLayout(org.eclipse.swt.graphics.GC gc, GridColumn column)intgetTruncationStyle()Get the truncation stylevoidpaint(org.eclipse.swt.graphics.GC gc, java.lang.Object value)Paints the visual representation of the given value on the given GC.voidsetDisplay(org.eclipse.swt.widgets.Display d)Set the display for the renderervoidsetTruncationStyle(int truncationStyle)Set the truncation style to use when cell content is too large.-
Methods inherited from class org.eclipse.nebula.widgets.grid.internal.DefaultColumnHeaderRenderer
computeSize, getControlBounds, getTextBounds, notify
-
Methods inherited from class org.eclipse.nebula.widgets.grid.GridHeaderRenderer
getHorizontalAlignment, getToggleBounds, isWordWrap, setHorizontalAlignment, setWordWrap
-
Methods inherited from class org.eclipse.nebula.widgets.grid.AbstractInternalWidget
getHoverDetail, setHoverDetail
-
Methods inherited from class org.eclipse.nebula.widgets.grid.AbstractRenderer
getBounds, getDisplay, getSize, isExpanded, isFocus, isHover, isMouseDown, isSelected, setBounds, setBounds, setExpanded, setFocus, setHover, setLocation, setLocation, setMouseDown, setSelected, setSize, setSize
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.eclipse.nebula.widgets.grid.IRenderer
setBounds, setBounds, setExpanded, setFocus, setHover, setLocation, setLocation, setMouseDown, setSelected, setSize, setSize
-
-
-
-
Field Detail
-
leftMargin
int leftMargin
-
rightMargin
int rightMargin
-
topMargin
int topMargin
-
bottomMargin
int bottomMargin
-
arrowMargin
int arrowMargin
-
imageSpacing
int imageSpacing
-
arrowRenderer
private SortArrowRenderer arrowRenderer
-
textLayout
private org.eclipse.swt.graphics.TextLayout textLayout
-
palette
private Win7PaletteProvider palette
-
truncationStyle
private int truncationStyle
-
-
Constructor Detail
-
Win7GridColumnHeaderRenderer
public Win7GridColumnHeaderRenderer(Win7PaletteProvider palette)
- Parameters:
palette-
-
-
Method Detail
-
setDisplay
public void setDisplay(org.eclipse.swt.widgets.Display d)
Set the display for the renderer- Specified by:
setDisplayin interfaceIRenderer- Overrides:
setDisplayin classDefaultColumnHeaderRenderer- Parameters:
d- Display
-
paint
public void paint(org.eclipse.swt.graphics.GC gc, java.lang.Object value)Paints the visual representation of the given value on the given GC. The actual class of the value object is determined by the use of the implementing class.Implementors need to respect the bounds values that may have been specified. The bounds values may affect the x and y values for all drawing operations as well as the width and heights. Implementors may use a
Transformto translate the coordinates of all the drawing operations, otherwise they will need to offset each draw.- Specified by:
paintin interfaceIRenderer- Overrides:
paintin classDefaultColumnHeaderRenderer- Parameters:
gc- GC to paint withvalue- the value being painted
-
drawColumnSelectedTopShadow
protected static void drawColumnSelectedTopShadow(org.eclipse.swt.graphics.GC graphics, org.eclipse.swt.graphics.Rectangle bounds, org.eclipse.swt.graphics.Color[] colors)Draw an additional shadow for the selected column state- Parameters:
graphics-bounds-colors-
-
drawColumnHeader
protected static void drawColumnHeader(org.eclipse.swt.graphics.GC graphics, org.eclipse.swt.graphics.Rectangle bounds, org.eclipse.swt.graphics.Color[] colors)Draw the column header based on the given colors- Parameters:
graphics-bounds-colors-
-
getTextLayout
private void getTextLayout(org.eclipse.swt.graphics.GC gc, GridColumn column)
-
computeControlSize
private org.eclipse.swt.graphics.Point computeControlSize(GridColumn column)
-
getTruncationStyle
public int getTruncationStyle()
Get the truncation style- Overrides:
getTruncationStylein classGridHeaderRenderer- Returns:
- the truncation style.
-
setTruncationStyle
public void setTruncationStyle(int truncationStyle)
Set the truncation style to use when cell content is too large.- Overrides:
setTruncationStylein classGridHeaderRenderer- Parameters:
truncationStyle-- See Also:
SWT.LEFT,SWT.CENTER,SWT.RIGHT
-
-