com.tensegrity.graphics.device
Class SWTDeviceNonAWTDependent

java.lang.Object
  extended bycom.tensegrity.graphics.device.AbstractDevice
      extended bycom.tensegrity.graphics.device.SWTDeviceNonAWTDependent
All Implemented Interfaces:
Device

public class SWTDeviceNonAWTDependent
extends AbstractDevice
implements Device

This is a TEMPORARY version of the SWT-based implementation of Device. This class is intended to replace in a foreseeable futur the current SWTDevice which is a simple wrapper around the AWTDevice.

Version:
$Id: SWTDeviceNonAWTDependent.java,v 1.75 2006/04/11 13:54:01 ArndHouben Exp $
Author:
MKegel, S. Guyon

Field Summary
static boolean USE_FONT_CACHING
          Disable or enable font-caching.
 
Fields inherited from class com.tensegrity.graphics.device.AbstractDevice
fontFormat, fontFormatData, paintFormat, paintFormatData, strokeFormat, strokeFormatData, visibleFont, visiblePaint, visibleStroke
 
Fields inherited from interface com.tensegrity.graphics.device.Device
DRAW_FILL, DRAW_OUTLINE
 
Constructor Summary
protected SWTDeviceNonAWTDependent()
           Default constructor.
 
Method Summary
 void clearClip()
          Clears the currently used clip rectangle.
 void clearRect(int x, int y, int width, int height)
          Clears the specified rectangle by filling it with the background color of the current drawing surface.
 void clipRect(int x, int y, int width, int height)
          Intersects the current clip with the specified rectangle.
static int[] convertIntArrays(int[] ptX, int[] ptY, int ptCount)
           Utility method creating an array of alternating x and y values, with the x values contained into ptX and the y values in ptY.
static int[] convertIntArrays(int[] ptX, int[] ptY, int ptCount, int xOffset, int yOffset)
           Utility method creating an array of alternating x and y values, with the x values contained into ptX and the y values in ptY.
static int[] convertIntArrays(int[] ptX, int[] ptY, int ptCount, int xOffset, int yOffset, float scaleX, float scaleY)
           Utility method creating an array of alternating x and y values, with the x values contained into ptX and the y values in ptY.
 void debugColor(int color)
           Simple Debug utility method which prints out the Red, Green and Blue values of the passed color.
 void dispose()
          Disposes the internal image and GC buffer.
 void drawArc(int flags, int arg0, int arg1, int arg2, int arg3, int startAngle, int arcAngle)
          Draws a circular or elliptical arc covering the specified rectangle.
 void drawLine(int arg0, int arg1, int arg2, int arg3)
          This method draws a line from the starting coordinate given by x1 and y1 to the ending coordinate given by x2 and y2.
 void drawOval(int flags, int arg0, int arg1, int arg2, int arg3)
          Draws an oval.
 void drawPolygon(int flags, int[] ptX1, int[] ptY1, int ptCount)
          This method draws a closed polygon.
 void drawPolyline(int[] ptX1, int[] ptY1, int ptCount)
          This method draws a polyline.
 void drawRect(int flags, int arg0, int arg1, int arg2, int arg3)
          This methods draws the rectangle defined by the given parameters.
 void drawRoundRect(int flags, int x1, int y1, int width1, int height1, int arcWidth1, int arcHeight1)
          Draws a round-cornered rectangle using this graphic contexts currently set Stroke- and PaintFormat.
 void drawString(java.lang.String str, int cx, int cy)
          Draws the text given by the specified string, using this graphics context's current font and color.
protected  void finalize()
          This method is herein overridden in order to call the dispose() method.
 Boundary getClipBounds()
          Returns the bounding rectangle of the current clipping area.
 Boundary getClipBounds(Boundary boundary)
          Returns the bounding rectangle of the current clipping area.
 Device getDevice(org.eclipse.swt.graphics.Device device, org.eclipse.swt.graphics.GC gc, int x, int y, int width, int height)
           This method creates, initializes and returns a new instance of this class.
 DeviceStatistics getDeviceStatistics()
          Returns the device statistics or null if statistics are disabled.
 Transform2D getTransform()
          Returns a copy of the current AffineTransform in the Device.
 boolean hitClip(int x, int y, int width, int height)
          Returns true if the specified rectangular area intersects the bounding rectangle of the current clipping area.
 void initiate()
          Initializes this Device.
 boolean isAntialiasing()
          Returns always false since Antialiasing is not supported by the SWT device implementation.
 boolean isInhibitLT2RBFlip()
          Warning: Inhibit LT2RB Flip is currently not supported by the SWT Device.
 boolean isInhibitYFlip()
          Warning: Inhibit Y Flip is currently not supported by the SWT Device.
 boolean isPrinting()
          ATTENTION: if we return the correct value, the text of Label2D is printed at the wrong place - therefore currently always false.
static org.eclipse.swt.graphics.Font lookupSWTFont(org.eclipse.swt.graphics.Device device, FontFormat fontformat)
          Font creation/lookup method.
static org.eclipse.swt.graphics.Font lookupSWTFont(org.eclipse.swt.graphics.Device device, int size, int weight, java.lang.String family, boolean italic)
          Font creation/lookup method.
 void setAntialiasing(boolean antialiasing)
          Ignored since Antialiasing is not supported by the SWT device implementation.
 void setClip(int x, int y, int width, int height)
          Sets the current clip to the rectangle specified by the given coordinates.
 void setClipBounds(Boundary boundary)
          Sets the current clip to the rectangle specified by the given coordinates.
 void setFontFormat(FontFormat fontFormat)
          Sets the FontFormat that will be used for all subsequent text drawing operations.
 void setFontFormatData(java.lang.Object[] fontFormatData)
          Because all formats get pooled, illustrators and users need an easy way to change them.
 void setInhibitLT2RBFlip(boolean inhibitLT2RBFlip)
          Warning: This method is currently not implemented into the SWT Device.
 void setInhibitYFlip(boolean inhibitYFlip)
          Warning: This method is currently not implemented into the SWT Device.
 void setIsPrinting(boolean isPrinting)
           
 void setPaintFormat(PaintFormat paintFormat)
          Sets the PaintFormat the Device should use for filling areas.
 void setPaintFormatData(java.lang.Object[] paintFormatData)
          Sets the PaintFormat rendering data the Device should use for filling areas.
 void setPaintMode()
          Sets the paint mode of this graphics context to overwrite the destination with this graphics context's current color.
 void setStrokeFormat(StrokeFormat strokeFormat)
          Sets the StrokeFormat the Device should use for drawing lines or borders around rectangles and polygons.
 void setStrokeFormatData(java.lang.Object[] strokeFormatData)
          Sets the StrokeFormat rendering data the Device should use for drawing lines or borders around rectangles and polygons.
 void setTransform(Transform2D xform)
          Sets the Transform2D in the Device.
 void setXORMode(int xorAlternationColor)
          Sets the paint mode of this graphics context to alternate between this graphics context's current color and the new specified color.
 void translate(int x, int y)
          This method translates the origin of this devise to the point given by x and y in the actual coordinate of this device.
 
Methods inherited from class com.tensegrity.graphics.device.AbstractDevice
getFontFormat, getPaintFormat, getStrokeFormat
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.tensegrity.graphics.device.Device
getFontFormat, getPaintFormat, getStrokeFormat
 

Field Detail

USE_FONT_CACHING

public static boolean USE_FONT_CACHING
Disable or enable font-caching. Rcommend to be enabled.

Constructor Detail

SWTDeviceNonAWTDependent

protected SWTDeviceNonAWTDependent()

Default constructor. This is set to private in order to force the use of the SWTDevice.getDevice(org.eclipse.swt.graphics.Device, GC, int, int, int, int) public static method. This constructor only initializes the internal DeviceStatistics.

Method Detail

getDevice

public Device getDevice(org.eclipse.swt.graphics.Device device,
                        org.eclipse.swt.graphics.GC gc,
                        int x,
                        int y,
                        int width,
                        int height)

This method creates, initializes and returns a new instance of this class. Please note that the AWTDevice.initiate() method is called in order to simplify clients code. Also note that the SWTDevice.dispose() method will not dispose the passed parameters and it is the caller's responsability to ensure that the resources it allocated are disposed.

Parameters:
device - the "SWT" Device associated to the returned SWTDevice.
gc - the graphical context for the returned SWTDevice
x - the on screen X position of the drawing area
y - the on screen Y position of the drawing area
width - the on screen width of the drawing area
height - the on screen height of the drawing area
Returns:
an initialized SWTDevice instance

initiate

public void initiate()
Description copied from interface: Device
Initializes this Device.
NOTICE:This method must be called before any drawing can be performed.

Specified by:
initiate in interface Device

dispose

public void dispose()
Disposes the internal image and GC buffer. Attention. Note that this does NOT dispose the local instance of GC and Device since they were not explicitely created by this class but were passed to getDevice(GC, org.eclipse.swt.graphics.Device)

Specified by:
dispose in interface Device
See Also:
Device.dispose()

setAntialiasing

public void setAntialiasing(boolean antialiasing)
Ignored since Antialiasing is not supported by the SWT device implementation.

Specified by:
setAntialiasing in interface Device
Parameters:
antialiasing - true indicates that anti-aliasing should be enabled, false disables it.
See Also:
Device.setAntialiasing(boolean)

isAntialiasing

public boolean isAntialiasing()
Returns always false since Antialiasing is not supported by the SWT device implementation.

Specified by:
isAntialiasing in interface Device
Returns:
false.
See Also:
Device.isAntialiasing()

setStrokeFormat

public void setStrokeFormat(StrokeFormat strokeFormat)
Description copied from interface: Device
Sets the StrokeFormat the Device should use for drawing lines or borders around rectangles and polygons. When invoking this method the StrokeFormat is used instead of the color value the Device currently uses. If the Device should use the current color value, this method has to be called with a null parameter.

Specified by:
setStrokeFormat in interface Device
Overrides:
setStrokeFormat in class AbstractDevice

setStrokeFormatData

public void setStrokeFormatData(java.lang.Object[] strokeFormatData)
Description copied from interface: Device
Sets the StrokeFormat rendering data the Device should use for drawing lines or borders around rectangles and polygons. When invoking this method the StrokeFormat is used instead of the color value the Device currently uses. If the Device should use the current color value, this method has to be called with a null parameter. The given array has to consist of three Integer objects. The meaning of the value is defined by its position in the array. The following list specifies the valid index positions:

Specified by:
setStrokeFormatData in interface Device
Overrides:
setStrokeFormatData in class AbstractDevice
See Also:
Device.setStrokeFormatData(java.lang.Object[])

setPaintFormat

public void setPaintFormat(PaintFormat paintFormat)
Description copied from interface: Device
Sets the PaintFormat the Device should use for filling areas. If the current color should be used, this method has to be called with a null parameter.

Specified by:
setPaintFormat in interface Device
Overrides:
setPaintFormat in class AbstractDevice

setPaintFormatData

public void setPaintFormatData(java.lang.Object[] paintFormatData)
Description copied from interface: Device
Sets the PaintFormat rendering data the Device should use for filling areas. When invoking this method the PaintFormat is used instead of the color value the Device> currently uses. If the Device should use the current color value, this method has to be called with a null parameter. Overall eight values of the given array are estimated. REVIEWJAVADOC: Device.java : what do you mean by "estimated"??? The meaning of each value is defined by its position in the array. The following table specifies the valid index positions and object types:
IndexType
RenderingData.VALUEINDEX_PAINT_STYLE Integer
RenderingData.VALUEINDEX_PAINT_COLORBACK Integer
RenderingData.VALUEINDEX_PAINT_COLORFORE Integer
RenderingData.VALUEINDEX_PAINT_GRADIENTTYPE Integer
RenderingData.VALUEINDEX_PAINT_PATTERNTYPE Integer
RenderingData.VALUEINDEX_PAINT_TEXTURE Texture
RenderingData.VALUEINDEX_PAINT_TRANSPARENCY Integer
RenderingData.VALUEINDEX_PAINT_TRANSPARENT Boolean

Specified by:
setPaintFormatData in interface Device
Overrides:
setPaintFormatData in class AbstractDevice

setFontFormat

public final void setFontFormat(FontFormat fontFormat)
Description copied from interface: Device
Sets the FontFormat that will be used for all subsequent text drawing operations. When the default color and font of the Device should be used, the method has to be called with a null parameter.

Specified by:
setFontFormat in interface Device
Overrides:
setFontFormat in class AbstractDevice

setFontFormatData

public final void setFontFormatData(java.lang.Object[] fontFormatData)
Description copied from interface: Device
Because all formats get pooled, illustrators and users need an easy way to change them. This method sets the FontFormat rendering data that will be used for all subsequent text drawing operations. When the Device should use the current color value and the default font of the device, however, this method has to be called with a null parameter. At this time, four values of the given array are estimated. REVIEWJAVADOC: There is that word "estimated" again!!! The meaning of each value is defined by its position in the array. The following list specifies the valid index positions and object types:
IndexType
RenderingData.VALUEINDEX_FONT_SIZE Integer
RenderingData.VALUEINDEX_FONT_WEIGHT Integer
RenderingData.VALUEINDEX_FONT_FAMILY String
RenderingData.VALUEINDEX_FONT_ITALIC Boolean

Specified by:
setFontFormatData in interface Device
Overrides:
setFontFormatData in class AbstractDevice

translate

public void translate(int x,
                      int y)
Description copied from interface: Device
This method translates the origin of this devise to the point given by x and y in the actual coordinate of this device. All coordinates in subsequent calls to drawing methods are assumed to be relative to the new origin.

Specified by:
translate in interface Device
Parameters:
x - the x coordinate of the new origin
y - the y coordinate of the new origin

getTransform

public Transform2D getTransform()
Description copied from interface: Device
Returns a copy of the current AffineTransform in the Device.

Specified by:
getTransform in interface Device
Returns:
the current AffineTransform in the Device.

setTransform

public void setTransform(Transform2D xform)
Description copied from interface: Device
Sets the Transform2D in the Device.

Specified by:
setTransform in interface Device
Parameters:
xform - the Transform2D object to be used in the rendering process

setPaintMode

public void setPaintMode()
Description copied from interface: Device
Sets the paint mode of this graphics context to overwrite the destination with this graphics context's current color. This sets the logical pixel operation function to the paint or overwrite mode. All subsequent rendering operations will overwrite the destination with the current color.

Specified by:
setPaintMode in interface Device

setXORMode

public void setXORMode(int xorAlternationColor)
Description copied from interface: Device
Sets the paint mode of this graphics context to alternate between this graphics context's current color and the new specified color. This specifies that logical pixel operations are performed in the XOR mode, which alternates pixels between the current color and a specified XOR color. When drawing operations are performed, pixels which are the current color are changed to the specified color, and vice versa. Pixels that are of colors other than those two colors are changed in an unpredictable but reversible manner; if the same figure is drawn twice, then all pixels are restored to their original values.

Specified by:
setXORMode in interface Device
Parameters:
xorAlternationColor - the XOR alternation color

setClip

public void setClip(int x,
                    int y,
                    int width,
                    int height)
Description copied from interface: Device
Sets the current clip to the rectangle specified by the given coordinates. Rendering operations have no effect outside of the clipping area.

Specified by:
setClip in interface Device
Parameters:
x - the left coordinate of the new clip rectangle
y - the top coordinate of the new clip rectangle
width - the extent of the new clip rectangle in x direction
height - the extent of the new clip rectangle in y direction

clipRect

public void clipRect(int x,
                     int y,
                     int width,
                     int height)
Description copied from interface: Device
Intersects the current clip with the specified rectangle. The resulting clipping area is the intersection of the current clipping area and the specified rectangle. If there is no current clipping area, either because the clip has never been set, or the clip has been cleared using setClip(Integer.MIN_VALUE, Integer.MIN_VALUE, Integer.MAX_VALUE, Integer.MAX_VALUE), the specified rectangle becomes the new clip. This method sets the user clip, which is independent of the clipping associated with device bounds and window visibility. This method can only be used to make the current clip smaller. To set the current clip larger, use any of the setClip methods. Rendering operations have no effect outside of the clipping area.

Specified by:
clipRect in interface Device
Parameters:
x - the x coordinate of the rectangle to intersect the clip with
y - the y coordinate of the rectangle to intersect the clip with
width - the width of the rectangle to intersect the clip with
height - the height of the rectangle to intersect the clip with

hitClip

public boolean hitClip(int x,
                       int y,
                       int width,
                       int height)
Description copied from interface: Device
Returns true if the specified rectangular area intersects the bounding rectangle of the current clipping area. The coordinates in the rectangle are relative to the coordinate system origin of this graphics context.

Specified by:
hitClip in interface Device
Parameters:
x - the x coordinate of the rectangle to test against the clip
y - the y coordinate of the rectangle to test against the clip
width - the width of the rectangle to test against the clip
height - the height of the rectangle to test against the clip
Returns:
true if the specified rectangular area intersects the bounding rectangle of the current clipping area.

getClipBounds

public Boundary getClipBounds()
Description copied from interface: Device
Returns the bounding rectangle of the current clipping area. This method refers to the user clip, which is independent of the clipping associated with device bounds and window visibility. If no clip has previously been set, or if the clip has been cleared using setClip(null), this method returns null. The coordinates in the rectangle are relative to the coordinate system origin of this graphics context.

Specified by:
getClipBounds in interface Device
Returns:
the bounding rectangle of the current clipping area, or null if no clip is set.

getClipBounds

public Boundary getClipBounds(Boundary boundary)
Description copied from interface: Device
Returns the bounding rectangle of the current clipping area. The coordinates in the rectangle are relative to the coordinate system origin of this graphics context. This method differs from Device.getClipBounds() in that an existing Boundary is used instead of allocating a new one. This method refers to the user clip, which is independent of the clipping associated with device bounds and window visibility. If no clip has previously been set, or if the clip has been cleared using setClip(null), this method returns the specified Boundary.

Specified by:
getClipBounds in interface Device
Parameters:
boundary - the rectangular boundary where the current clipping area is copied to. Any current values in this rectangle are overwritten.
Returns:
the bounding rectangle of the current clipping area.

setClipBounds

public void setClipBounds(Boundary boundary)
Description copied from interface: Device
Sets the current clip to the rectangle specified by the given coordinates. Rendering operations have no effect outside of the clipping area.

Specified by:
setClipBounds in interface Device
Parameters:
boundary - the new bounding rectangle to clip against

clearClip

public void clearClip()
Description copied from interface: Device
Clears the currently used clip rectangle.

Specified by:
clearClip in interface Device

drawLine

public void drawLine(int arg0,
                     int arg1,
                     int arg2,
                     int arg3)
Description copied from interface: Device
This method draws a line from the starting coordinate given by x1 and y1 to the ending coordinate given by x2 and y2.

Specified by:
drawLine in interface Device
Parameters:
arg0 - the starting coordinate x value
arg1 - the starting coordinate y value
arg2 - the ending coordinate x value
arg3 - the ending coordinate y value

drawRect

public void drawRect(int flags,
                     int arg0,
                     int arg1,
                     int arg2,
                     int arg3)
Description copied from interface: Device
This methods draws the rectangle defined by the given parameters. The rectangle starts at x and y. The right coordinates are calculated by x + width and the bottom coordinates are calculated by y + height.

Specified by:
drawRect in interface Device
Parameters:
flags - bitwise combined flags that determine what to draw.
arg0 - the left coordinate of the rectangle.
arg1 - the top coordinate of the rectangle.
arg2 - the extent in x direction.
arg3 - the extent in y direction.

clearRect

public void clearRect(int x,
                      int y,
                      int width,
                      int height)
Description copied from interface: Device
Clears the specified rectangle by filling it with the background color of the current drawing surface.

Specified by:
clearRect in interface Device
Parameters:
x - the x coordinate of the rectangle to be clear
y - the y coordinate of the rectangle to be clear
width - the width of the rectangle to be clear
height - the height of the rectangle to be clear

drawRoundRect

public void drawRoundRect(int flags,
                          int x1,
                          int y1,
                          int width1,
                          int height1,
                          int arcWidth1,
                          int arcHeight1)
Description copied from interface: Device
Draws a round-cornered rectangle using this graphic contexts currently set Stroke- and PaintFormat. The left and right edges of the rectangle are at x and x + width, respectively. The top and bottom edges of the rectangle are at y and y + height.

Specified by:
drawRoundRect in interface Device
Parameters:
flags - bitwise combined flags that determine what to draw
x1 - the x coordinate of the rectangle to be drawn
y1 - the y coordinate of the rectangle to be drawn
width1 - the width of the rectangle to be drawn
height1 - the height of the rectangle to be drawn
arcWidth1 - the horizontal diameter of the arc at the four corners
arcHeight1 - the vertical diameter of the arc at the four corners

drawOval

public void drawOval(int flags,
                     int arg0,
                     int arg1,
                     int arg2,
                     int arg3)
Description copied from interface: Device
Draws an oval. The result is a circle or ellipse that fits within the rectangle specified by the x, y, width, and height arguments. The oval covers an area that is width + 1 pixels wide and height + 1 pixels tall.

Specified by:
drawOval in interface Device
Parameters:
flags - bitwise combined flags that determine what to draw
arg0 - the x coordinate of the upper left corner of the oval to be drawn
arg1 - the y coordinate of the upper left corner of the oval to be drawn
arg2 - the width of the oval to be drawn
arg3 - the height of the oval to be drawn

drawArc

public void drawArc(int flags,
                    int arg0,
                    int arg1,
                    int arg2,
                    int arg3,
                    int startAngle,
                    int arcAngle)
Description copied from interface: Device
Draws a circular or elliptical arc covering the specified rectangle. The resulting arc starts at startAngle and extends for arcAngle degrees, using the current color of the Device. Angles are interpreted in such a manner that a degree of 0 belongs to the 3 o'clock position. A positive value indicates a counter-clockwise rotation while a negative value indicates a clockwise rotation. The center of the arc is the center of the rectangle whose origin is (x, y) and whose size is specified by the width and height arguments. The resulting arc covers an area width + 1 pixels wide by height + 1 pixels tall. The angles are specified relative to the non-square extents of the bounding rectangle such that 45 degrees always falls on the line from the center of the ellipse to the upper right corner of the bounding rectangle. As a result, if the bounding rectangle is noticeably longer in one axis than the other, the angles to the start and end of the arc segment will be skewed farther along the longer axis of the bounds.

Specified by:
drawArc in interface Device
Parameters:
flags - bitwise combined flags that determine what to draw
arg0 - the x coordinate of the upper-left corner of the arc to be drawn
arg1 - the y coordinate of the upper-left corner of the arc to be drawn
arg2 - the width of the arc to be drawn
arg3 - the height of the arc to be drawn
startAngle - the beginning angle
arcAngle - the angular extent of the arc, relative to the start angle

drawPolyline

public void drawPolyline(int[] ptX1,
                         int[] ptY1,
                         int ptCount)
Description copied from interface: Device
This method draws a polyline. The polyline is defined by the two given arrays of x and y coordinates. Each point of the polyline is defined by a pair. The points are taken from the arrays starting at index 0 up to index ptCount-1.

Specified by:
drawPolyline in interface Device
Parameters:
ptX1 - the x coordinates of the points
ptY1 - the y coordinates of the points
ptCount - the amount of points the polygon consist of

drawPolygon

public void drawPolygon(int flags,
                        int[] ptX1,
                        int[] ptY1,
                        int ptCount)
Description copied from interface: Device
This method draws a closed polygon. The polygon is defined by the two given arrays of x and y coordinates. Each point of the polygon is defined by a pair. The points are taken from the arrays starting at index 0 up to index ptCount-1. If the point at index 0 and the point at index ptCount-1 are different the polygon is automatically closed.

Specified by:
drawPolygon in interface Device
Parameters:
flags - bitwise combined flags that determine what to draw
ptX1 - the x coordinates of the points
ptY1 - the y coordinates of the points
ptCount - the amount of points the polygon consist of

drawString

public void drawString(java.lang.String str,
                       int cx,
                       int cy)
Description copied from interface: Device
Draws the text given by the specified string, using this graphics context's current font and color. The baseline of the leftmost character is at position (x, y) in this graphic contexts coordinate system.

Specified by:
drawString in interface Device
Parameters:
str - the string to be drawn
cx - the x coordinate
cy - the y coordinate

setIsPrinting

public void setIsPrinting(boolean isPrinting)
Specified by:
setIsPrinting in interface Device

isPrinting

public boolean isPrinting()
ATTENTION: if we return the correct value, the text of Label2D is printed at the wrong place - therefore currently always false.

Specified by:
isPrinting in interface Device
Returns:
currently always false.
See Also:
Device.isPrinting()

setInhibitLT2RBFlip

public void setInhibitLT2RBFlip(boolean inhibitLT2RBFlip)
Warning: This method is currently not implemented into the SWT Device.

Specified by:
setInhibitLT2RBFlip in interface Device
Parameters:
inhibitLT2RBFlip - true in order to Inhibit LT2RB Flip, false otherwise.
See Also:
Device.setInhibitLT2RBFlip(boolean)

isInhibitLT2RBFlip

public boolean isInhibitLT2RBFlip()
Warning: Inhibit LT2RB Flip is currently not supported by the SWT Device.

Specified by:
isInhibitLT2RBFlip in interface Device
Returns:
false.
See Also:
Device.isInhibitLT2RBFlip()

setInhibitYFlip

public void setInhibitYFlip(boolean inhibitYFlip)
Warning: This method is currently not implemented into the SWT Device.

Specified by:
setInhibitYFlip in interface Device
Parameters:
inhibitYFlip - true in order to Inhibit Y Flip, false otherwise.
See Also:
Device.setInhibitYFlip(boolean)

isInhibitYFlip

public boolean isInhibitYFlip()
Warning: Inhibit Y Flip is currently not supported by the SWT Device.

Specified by:
isInhibitYFlip in interface Device
Returns:
false.
See Also:
Device.isInhibitYFlip()

finalize

protected void finalize()
                 throws java.lang.Throwable
This method is herein overridden in order to call the dispose() method. However one should not rely on this and instead ensure that the dispose() method is automatically called.

Throws:
java.lang.Throwable
See Also:
Object.finalize()

debugColor

public void debugColor(int color)

Simple Debug utility method which prints out the Red, Green and Blue values of the passed color.

Parameters:
color - the color (as int) to print out

convertIntArrays

public static int[] convertIntArrays(int[] ptX,
                                     int[] ptY,
                                     int ptCount)

Utility method creating an array of alternating x and y values, with the x values contained into ptX and the y values in ptY. The returned array of integers has a size of ptCount* 2.

Parameters:
ptX - array representing x values.
ptY - array representing y values.
ptCount - the size of ptX and ptY.
Returns:
Array containing alternate values of ptX and ptY.

convertIntArrays

public static int[] convertIntArrays(int[] ptX,
                                     int[] ptY,
                                     int ptCount,
                                     int xOffset,
                                     int yOffset,
                                     float scaleX,
                                     float scaleY)

Utility method creating an array of alternating x and y values, with the x values contained into ptX and the y values in ptY. The returned array of integers has a size of ptCount* 2.

Parameters:
ptX - array representing x values.
ptY - array representing y values.
ptCount - the size of ptX and ptY.
xOffset - an offset on the x-axis for (0,0)-based values.
yOffset - an offset on the y-axis for (0,0)-based values.
Returns:
Array containing alternate values of ptX and ptY.

convertIntArrays

public static int[] convertIntArrays(int[] ptX,
                                     int[] ptY,
                                     int ptCount,
                                     int xOffset,
                                     int yOffset)

Utility method creating an array of alternating x and y values, with the x values contained into ptX and the y values in ptY. The returned array of integers has a size of ptCount* 2.

Parameters:
ptX - array representing x values
ptY - array representing y values
ptCount - the size of ptX and ptY
xOffset - an offset on the x-axis for (0,0)-based values
yOffset - an offset on the y-axis for (0,0)-based values
Returns:
Array containing alternate values of ptX and ptY.

getDeviceStatistics

public final DeviceStatistics getDeviceStatistics()
Returns the device statistics or null if statistics are disabled.

Returns:
statistics object or null.

lookupSWTFont

public static final org.eclipse.swt.graphics.Font lookupSWTFont(org.eclipse.swt.graphics.Device device,
                                                                FontFormat fontformat)
Font creation/lookup method. Use this method instead of createSWTFont.

Parameters:
device - the SWT device. Can be null if there is a current device.
fontformat - the fontformat to lookup or create.
Returns:
the associated Font.

lookupSWTFont

public static final org.eclipse.swt.graphics.Font lookupSWTFont(org.eclipse.swt.graphics.Device device,
                                                                int size,
                                                                int weight,
                                                                java.lang.String family,
                                                                boolean italic)
Font creation/lookup method. Use this method instead of createSWTFont.

Parameters:
device - the SWT device. Can be null if there is a current device.
size - size of the font to lookup.
weight - weight of the font to lookup.
family - the font family.
italic - whether the font is italic or plain.
Returns:
the associated Font.


Copyright © 2005 Tensegrity Software GmbH. All Rights Reserved. Date of creation: 09.06.2006.