Class RectangleGroupStrategy
java.lang.Object
org.eclipse.nebula.widgets.pgroup.AbstractGroupStrategy
org.eclipse.nebula.widgets.pgroup.RectangleGroupStrategy
public class RectangleGroupStrategy extends AbstractGroupStrategy
RectangleGroupStrategy is a very flexible painting strategy that displays a
(rounded) rectangle around the PGroup's body.
- Since:
- 1.0
-
Constructor Summary
Constructors Constructor Description RectangleGroupStrategy()Deprecated.use constructor with PGroup element insteadRectangleGroupStrategy(PGroup g)Constructs a RectangleGroupStrategy with the given toggle and style. -
Method Summary
Modifier and Type Method Description org.eclipse.swt.graphics.RectanglecomputeTrim(int x, int y, int width, int height)voiddispose()org.eclipse.swt.graphics.ColorgetBorderColor()Returns the color of the one pixel border drawn around the body when the group is expanded.org.eclipse.swt.graphics.RectanglegetClientArea()protected org.eclipse.swt.graphics.RectanglegetTextBounds()org.eclipse.swt.graphics.RectanglegetToolItemArea()voidinitialize()booleanisToggleLocation(int x, int y)voidpaint(org.eclipse.swt.graphics.GC gc)Paints the actual group widget.voidsetBackground(org.eclipse.swt.graphics.Color[] colors, int[] percents)Specify a gradient of colours to be drawn in the background of the group.voidsetBackground(org.eclipse.swt.graphics.Color[] colors, int[] percents, boolean vertical)Specify a gradient of colours to be drawn in the background of the group.voidsetBorderColor(org.eclipse.swt.graphics.Color borderColor)Sets the border color.voidupdate()
-
Constructor Details
-
RectangleGroupStrategy
public RectangleGroupStrategy()Deprecated.use constructor with PGroup element instead -
RectangleGroupStrategy
Constructs a RectangleGroupStrategy with the given toggle and style.- Parameters:
toggleStrategy-style-
-
-
Method Details
-
initialize
public void initialize()- Overrides:
initializein classAbstractGroupStrategy- See Also:
AbstractGroupStrategy.initialize()
-
paint
public void paint(org.eclipse.swt.graphics.GC gc)Description copied from class:AbstractGroupStrategyPaints the actual group widget. This method is to be implemented by extending classes.- Specified by:
paintin classAbstractGroupStrategy- See Also:
AbstractGroupStrategy.paint(org.eclipse.swt.graphics.GC)
-
getToolItemArea
public org.eclipse.swt.graphics.Rectangle getToolItemArea()- Overrides:
getToolItemAreain classAbstractGroupStrategy- Returns:
- the area where toolitems can be drawn
-
isToggleLocation
public boolean isToggleLocation(int x, int y)- Overrides:
isToggleLocationin classAbstractGroupStrategy- Returns:
- See Also:
AbstractGroupStrategy.isToggleLocation(int, int)
-
getTextBounds
protected org.eclipse.swt.graphics.Rectangle getTextBounds() -
getClientArea
public org.eclipse.swt.graphics.Rectangle getClientArea()- Specified by:
getClientAreain classAbstractGroupStrategy- See Also:
AbstractGroupStrategy.getClientArea()
-
computeTrim
public org.eclipse.swt.graphics.Rectangle computeTrim(int x, int y, int width, int height)- Specified by:
computeTrimin classAbstractGroupStrategy- See Also:
AbstractGroupStrategy.computeTrim(int, int, int, int)
-
dispose
public void dispose()- Specified by:
disposein classAbstractGroupStrategy- See Also:
AbstractGroupStrategy.dispose()
-
setBackground
public void setBackground(org.eclipse.swt.graphics.Color[] colors, int[] percents)Specify a gradient of colours to be drawn in the background of the group.For example, to draw a gradient that varies from dark blue to blue and then to white and stays white for the right half of the label, use the following call to setBackground:
setBackground(new Color[] {display.getSystemColor(SWT.COLOR_DARK_BLUE), display.getSystemColor(SWT.COLOR_BLUE), display.getSystemColor(SWT.COLOR_WHITE), display.getSystemColor(SWT.COLOR_WHITE) }, new int[] {25, 50, 100 });- Parameters:
colors- an array of Color that specifies the colors to appear in the gradient in order of appearance from left to right; The valuenullclears the background gradient; the valuenullcan be used inside the array of Color to specify the background color.percents- an array of integers between 0 and 100 specifying the percent of the width of the widget at which the color should change; the size of the percents array must be one less than the size of the colors array.
-
setBackground
public void setBackground(org.eclipse.swt.graphics.Color[] colors, int[] percents, boolean vertical)Specify a gradient of colours to be drawn in the background of the group.For example, to draw a gradient that varies from dark blue to white in the vertical, direction use the following call to setBackground:
setBackground(new Color[] {display.getSystemColor(SWT.COLOR_DARK_BLUE), display.getSystemColor(SWT.COLOR_WHITE) }, new int[] {100 }, true);- Parameters:
colors- an array of Color that specifies the colors to appear in the gradient in order of appearance from left/top to right/bottom; The valuenullclears the background gradient; the valuenullcan be used inside the array of Color to specify the background color.percents- an array of integers between 0 and 100 specifying the percent of the width/height of the widget at which the color should change; the size of the percents array must be one less than the size of the colors array.vertical- indicate the direction of the gradient. True is vertical and false is horizontal.
-
getBorderColor
public org.eclipse.swt.graphics.Color getBorderColor()Returns the color of the one pixel border drawn around the body when the group is expanded.- Returns:
- the border color
-
setBorderColor
public void setBorderColor(org.eclipse.swt.graphics.Color borderColor)Sets the border color. The border is the one pixel border drawn around the body when the group is expanded.- Parameters:
borderColor- the border color, or null for no border
-
update
public void update()- Specified by:
updatein classAbstractGroupStrategy
-