Eclipse Draw2d
2.1

org.eclipse.draw2d
Class ScaledGraphics

java.lang.Object
  |
  +--org.eclipse.draw2d.Graphics
        |
        +--org.eclipse.draw2d.ScaledGraphics
Direct Known Subclasses:
PrinterGraphics

public class ScaledGraphics
extends Graphics

A Graphics object able to scale all operations based on the current scale factor.


Nested Class Summary
protected static class ScaledGraphics.State
          The internal state of the scaled graphics.
 
Field Summary
 
Fields inherited from class org.eclipse.draw2d.Graphics
LINE_DASH, LINE_DASHDOT, LINE_DASHDOTDOT, LINE_DOT, LINE_SOLID
 
Constructor Summary
ScaledGraphics(Graphics g)
          Constructs a new ScaledGraphics based on the given Graphics object.
 
Method Summary
 void clipRect(Rectangle r)
          Sets the clip region to the given rectangle.
 void dispose()
          Disposes this Graphics object.
 void drawArc(int x, int y, int w, int h, int offset, int sweep)
          Draws the outline of an arc located at (x,y) with width w and height h.
 void drawFocus(int x, int y, int w, int h)
          Draws a focus rectangle.
 void drawImage(Image srcImage, int x, int y)
          Draws the given Image at the location (x,y).
 void drawImage(Image srcImage, int sx, int sy, int sw, int sh, int tx, int ty, int tw, int th)
          Draws a rectangular section of the given Image to the specified rectangular reagion on the canvas.
 void drawLine(int x1, int y1, int x2, int y2)
          Draws a line between the points (x1,y1) and (x2,y2) using the foreground color.
 void drawOval(int x, int y, int w, int h)
          Draws the outline of an ellipse that fits inside the rectangle with the given properties using the foreground color.
 void drawPolygon(PointList points)
          Draws a closed polygon defined by the given PointList containing the vertices.
 void drawPolyline(PointList points)
          Draws a polyline defined by the given PointList containing the vertices.
 void drawRectangle(int x, int y, int w, int h)
          Draws a rectangle whose top-left corner is located at the point (x,y) with the given width and height.
 void drawRoundRectangle(Rectangle r, int arcWidth, int arcHeight)
          Draws a rectangle with rounded corners using the foreground color.
 void drawString(String s, int x, int y)
          Draws the given string using the current font and foreground color.
 void drawText(String s, int x, int y)
          Draws the given string using the current font and foreground color.
 void fillArc(int x, int y, int w, int h, int offset, int sweep)
          Fills the interior of an arc located at (x,y) with width w and height h.
 void fillGradient(int x, int y, int w, int h, boolean vertical)
          Fills the the given rectangle with a gradient from the foreground color to the background color.
 void fillOval(int x, int y, int w, int h)
          Fills an ellipse that fits inside the rectangle with the given properties using the background color.
 void fillPolygon(PointList points)
          Fills a closed polygon defined by the given PointList containing the vertices.
 void fillRectangle(int x, int y, int w, int h)
          Fills a rectangle whose top-left corner is located at the point (x,y) with the given width and height.
 void fillRoundRectangle(Rectangle r, int arcWidth, int arcHeight)
          Fills a rectangle with rounded corners using the background color.
 void fillString(String s, int x, int y)
          Draws the given string using the current font and foreground color.
 void fillText(String s, int x, int y)
          Draws the given string using the current font and foreground color.
 Color getBackgroundColor()
          Returns the background color used for filling.
 Rectangle getClip(Rectangle rect)
          Modifies the given rectangle to match the clip region and returns that rectangle.
 Font getFont()
          Returns the font used to draw and fill text.
 FontMetrics getFontMetrics()
          Returns the font metrics for the current font.
 Color getForegroundColor()
          Returns the foreground color used to draw lines and text.
 int getLineStyle()
          Returns the line style.
 int getLineWidth()
          Returns the current line width.
 boolean getXORMode()
          Returns true if this graphics object should use XOR mode with painting.
 void popState()
          Pops the previous state of this graphics object off the stack (if pushState() has previously been called) and restores the current state to that popped state.
 void pushState()
          Pushes the current state of this graphics object onto a stack.
 void restoreState()
          Restores the previous state of this graphics object.
 void scale(double amount)
          Scales this graphics object by the given amount.
 void setBackgroundColor(Color rgb)
          Sets the background color.
 void setClip(Rectangle r)
          Sets the clip rectangle.
 void setFont(Font f)
          Sets the font.
 void setForegroundColor(Color rgb)
          Sets the foreground color.
 void setLineStyle(int style)
          Sets the line style.
 void setLineWidth(int width)
          Sets the line width.
 void setXORMode(boolean b)
          Sets the XOR mode.
 void translate(int dx, int dy)
          Translates this graphics object so that its origin is offset horizontally by dx and vertically by dy.
 
Methods inherited from class org.eclipse.draw2d.Graphics
drawArc, drawFocus, drawImage, drawImage, drawLine, drawOval, drawRectangle, drawString, drawText, fillArc, fillGradient, fillOval, fillRectangle, fillString, fillText, translate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ScaledGraphics

public ScaledGraphics(Graphics g)
Constructs a new ScaledGraphics based on the given Graphics object.

Parameters:
g - the base graphics object
Method Detail

clipRect

public void clipRect(Rectangle r)
Description copied from class: Graphics
Sets the clip region to the given rectangle. Anything outside this rectangle will not be drawn.

Specified by:
clipRect in class Graphics
Parameters:
r - the clip rectangle
See Also:
Graphics.clipRect(Rectangle)

dispose

public void dispose()
Description copied from class: Graphics
Disposes this Graphics object.

Specified by:
dispose in class Graphics
See Also:
Graphics.dispose()

drawArc

public void drawArc(int x,
                    int y,
                    int w,
                    int h,
                    int offset,
                    int sweep)
Description copied from class: Graphics
Draws the outline of an arc located at (x,y) with width w and height h. The starting angle of the arc (specified in degrees) is offset and length is the arc's angle (specified in degrees).

Specified by:
drawArc in class Graphics
Parameters:
x - the x coordinate
y - the y coordinate
w - the width
h - the height
offset - the start angle
sweep - the length of the arc
See Also:
Graphics.drawArc(int, int, int, int, int, int)

fillArc

public void fillArc(int x,
                    int y,
                    int w,
                    int h,
                    int offset,
                    int sweep)
Description copied from class: Graphics
Fills the interior of an arc located at (x,y) with width w and height h. The starting angle of the arc (specified in degrees) is offset and length is the arc's angle (specified in degrees).

Specified by:
fillArc in class Graphics
Parameters:
x - the x coordinate
y - the y coordinate
w - the width
h - the height
offset - the start angle
sweep - the length of the arc
See Also:
Graphics.fillArc(int, int, int, int, int, int)

fillGradient

public void fillGradient(int x,
                         int y,
                         int w,
                         int h,
                         boolean vertical)
Description copied from class: Graphics
Fills the the given rectangle with a gradient from the foreground color to the background color. If vertical is true, the gradient will go from top to bottom. Otherwise, it will go from left to right. background color.

Specified by:
fillGradient in class Graphics
Parameters:
x - the x coordinate
y - the y coordinate
w - the width
h - the height
vertical - whether the gradient should be vertical
See Also:
Graphics.fillGradient(int, int, int, int, boolean)

drawFocus

public void drawFocus(int x,
                      int y,
                      int w,
                      int h)
Description copied from class: Graphics
Draws a focus rectangle.

Specified by:
drawFocus in class Graphics
Parameters:
x - the x coordinate
y - the y coordinate
w - the width
h - the height
See Also:
Graphics.drawFocus(int, int, int, int)

drawImage

public void drawImage(Image srcImage,
                      int x,
                      int y)
Description copied from class: Graphics
Draws the given Image at the location (x,y).

Specified by:
drawImage in class Graphics
Parameters:
srcImage - the Image
x - the x coordinate
y - the y coordinate
See Also:
Graphics.drawImage(Image, int, int)

drawImage

public void drawImage(Image srcImage,
                      int sx,
                      int sy,
                      int sw,
                      int sh,
                      int tx,
                      int ty,
                      int tw,
                      int th)
Description copied from class: Graphics
Draws a rectangular section of the given Image to the specified rectangular reagion on the canvas. The section of the image bounded by the rectangle (x1,y1,w1,h1) is copied to the section of the canvas bounded by the rectangle (x2,y2,w2,h2). If these two sizes are different, scaling will occur.

Specified by:
drawImage in class Graphics
Parameters:
srcImage - the image
sx - the x coordinate of the source
sy - the y coordinate of the source
sw - the width of the source
sh - the height of the source
tx - the x coordinate of the destination
ty - the y coordinate of the destination
tw - the width of the destination
th - the height of the destination
See Also:
Graphics.drawImage(Image, int, int, int, int, int, int, int, int)

drawLine

public void drawLine(int x1,
                     int y1,
                     int x2,
                     int y2)
Description copied from class: Graphics
Draws a line between the points (x1,y1) and (x2,y2) using the foreground color.

Specified by:
drawLine in class Graphics
Parameters:
x1 - the x coordinate for the first point
y1 - the y coordinate for the first point
x2 - the x coordinate for the second point
y2 - the y coordinate for the second point
See Also:
Graphics.drawLine(int, int, int, int)

drawOval

public void drawOval(int x,
                     int y,
                     int w,
                     int h)
Description copied from class: Graphics
Draws the outline of an ellipse that fits inside the rectangle with the given properties using the foreground color.

Specified by:
drawOval in class Graphics
Parameters:
x - the x coordinate
y - the y coordinate
w - the width
h - the height
See Also:
Graphics.drawOval(int, int, int, int)

fillOval

public void fillOval(int x,
                     int y,
                     int w,
                     int h)
Description copied from class: Graphics
Fills an ellipse that fits inside the rectangle with the given properties using the background color.

Specified by:
fillOval in class Graphics
Parameters:
x - the x coordinate
y - the y coordinate
w - the width
h - the height
See Also:
Graphics.fillOval(int, int, int, int)

drawPolygon

public void drawPolygon(PointList points)
Description copied from class: Graphics
Draws a closed polygon defined by the given PointList containing the vertices. The first and last points in the list will be connected.

Specified by:
drawPolygon in class Graphics
Parameters:
points - the vertices
See Also:
Graphics.drawPolygon(PointList)

fillPolygon

public void fillPolygon(PointList points)
Description copied from class: Graphics
Fills a closed polygon defined by the given PointList containing the vertices. The first and last points in the list will be connected.

Specified by:
fillPolygon in class Graphics
Parameters:
points - the vertices
See Also:
Graphics.fillPolygon(PointList)

drawPolyline

public void drawPolyline(PointList points)
Description copied from class: Graphics
Draws a polyline defined by the given PointList containing the vertices. The first and last points in the list will not be connected.

Specified by:
drawPolyline in class Graphics
Parameters:
points - the vertices
See Also:
Graphics.drawPolyline(PointList)

drawRectangle

public void drawRectangle(int x,
                          int y,
                          int w,
                          int h)
Description copied from class: Graphics
Draws a rectangle whose top-left corner is located at the point (x,y) with the given width and height.

Specified by:
drawRectangle in class Graphics
Parameters:
x - the x coordinate
y - the y coordinate
w - the width
h - the height
See Also:
Graphics.drawRectangle(int, int, int, int)

fillRectangle

public void fillRectangle(int x,
                          int y,
                          int w,
                          int h)
Description copied from class: Graphics
Fills a rectangle whose top-left corner is located at the point (x,y) with the given width and height.

Specified by:
fillRectangle in class Graphics
Parameters:
x - the x coordinate
y - the y coordinate
w - the width
h - the height
See Also:
Graphics.fillRectangle(int, int, int, int)

drawRoundRectangle

public void drawRoundRectangle(Rectangle r,
                               int arcWidth,
                               int arcHeight)
Description copied from class: Graphics
Draws a rectangle with rounded corners using the foreground color. arcWidth and arcHeight represent the horizontal and vertical diameter of the corners.

Specified by:
drawRoundRectangle in class Graphics
Parameters:
r - the rectangle
arcWidth - the arc width
arcHeight - the arc height
See Also:
Graphics.drawRoundRectangle(Rectangle, int, int)

fillRoundRectangle

public void fillRoundRectangle(Rectangle r,
                               int arcWidth,
                               int arcHeight)
Description copied from class: Graphics
Fills a rectangle with rounded corners using the background color. arcWidth and arcHeight represent the horizontal and vertical diameter of the corners.

Specified by:
fillRoundRectangle in class Graphics
Parameters:
r - the rectangle
arcWidth - the arc width
arcHeight - the arc height
See Also:
Graphics.fillRoundRectangle(Rectangle, int, int)

drawString

public void drawString(String s,
                       int x,
                       int y)
Description copied from class: Graphics
Draws the given string using the current font and foreground color. No tab expansion or carriage return processing will be performed. The background of the string will be transparent.

Specified by:
drawString in class Graphics
Parameters:
s - the string
x - the x coordinate
y - the y coordinate
See Also:
Graphics.drawString(String, int, int)

fillString

public void fillString(String s,
                       int x,
                       int y)
Description copied from class: Graphics
Draws the given string using the current font and foreground color. No tab expansion or carriage return processing will be performed. The background of the string will be filled with the current background color.

Specified by:
fillString in class Graphics
Parameters:
s - the string
x - the x coordinate
y - the y coordinate
See Also:
Graphics.fillString(String, int, int)

drawText

public void drawText(String s,
                     int x,
                     int y)
Description copied from class: Graphics
Draws the given string using the current font and foreground color. Tab expansion and carriage return processing are performed. The background of the text will be transparent.

Specified by:
drawText in class Graphics
Parameters:
s - the text
x - the x coordinate
y - the y coordinate
See Also:
Graphics.drawText(String, int, int)

fillText

public void fillText(String s,
                     int x,
                     int y)
Description copied from class: Graphics
Draws the given string using the current font and foreground color. Tab expansion and carriage return processing are performed. The background of the text will be filled with the current background color.

Specified by:
fillText in class Graphics
Parameters:
s - the text
x - the x coordinate
y - the y coordinate
See Also:
Graphics.fillText(String, int, int)

getBackgroundColor

public Color getBackgroundColor()
Description copied from class: Graphics
Returns the background color used for filling.

Specified by:
getBackgroundColor in class Graphics
Returns:
the background color
See Also:
Graphics.getBackgroundColor()

getClip

public Rectangle getClip(Rectangle rect)
Description copied from class: Graphics
Modifies the given rectangle to match the clip region and returns that rectangle.

Specified by:
getClip in class Graphics
Parameters:
rect - the rectangle to hold the clip region
Returns:
the clip rectangle
See Also:
Graphics.getClip(Rectangle)

getFont

public Font getFont()
Description copied from class: Graphics
Returns the font used to draw and fill text.

Specified by:
getFont in class Graphics
Returns:
the font
See Also:
Graphics.getFont()

getFontMetrics

public FontMetrics getFontMetrics()
Description copied from class: Graphics
Returns the font metrics for the current font.

Specified by:
getFontMetrics in class Graphics
Returns:
the font metrics
See Also:
Graphics.getFontMetrics()

getForegroundColor

public Color getForegroundColor()
Description copied from class: Graphics
Returns the foreground color used to draw lines and text.

Specified by:
getForegroundColor in class Graphics
Returns:
the foreground color
See Also:
Graphics.getForegroundColor()

getLineStyle

public int getLineStyle()
Description copied from class: Graphics
Returns the line style.

Specified by:
getLineStyle in class Graphics
Returns:
the line style
See Also:
Graphics.getLineStyle()

getLineWidth

public int getLineWidth()
Description copied from class: Graphics
Returns the current line width.

Specified by:
getLineWidth in class Graphics
Returns:
the line width
See Also:
Graphics.getLineWidth()

getXORMode

public boolean getXORMode()
Description copied from class: Graphics
Returns true if this graphics object should use XOR mode with painting.

Specified by:
getXORMode in class Graphics
Returns:
whether XOR mode is turned on
See Also:
Graphics.getXORMode()

popState

public void popState()
Description copied from class: Graphics
Pops the previous state of this graphics object off the stack (if Graphics.pushState() has previously been called) and restores the current state to that popped state.

Specified by:
popState in class Graphics
See Also:
Graphics.popState()

pushState

public void pushState()
Description copied from class: Graphics
Pushes the current state of this graphics object onto a stack.

Specified by:
pushState in class Graphics
See Also:
Graphics.pushState()

restoreState

public void restoreState()
Description copied from class: Graphics
Restores the previous state of this graphics object.

Specified by:
restoreState in class Graphics
See Also:
Graphics.restoreState()

scale

public void scale(double amount)
Description copied from class: Graphics
Scales this graphics object by the given amount.

Specified by:
scale in class Graphics
Parameters:
amount - the scale factor
See Also:
Graphics.scale(double)

setBackgroundColor

public void setBackgroundColor(Color rgb)
Description copied from class: Graphics
Sets the background color.

Specified by:
setBackgroundColor in class Graphics
Parameters:
rgb - the new background color
See Also:
Graphics.setBackgroundColor(Color)

setClip

public void setClip(Rectangle r)
Description copied from class: Graphics
Sets the clip rectangle. Painting will not occur outside this area.

Specified by:
setClip in class Graphics
Parameters:
r - the new clip rectangle
See Also:
Graphics.setClip(Rectangle)

setFont

public void setFont(Font f)
Description copied from class: Graphics
Sets the font.

Specified by:
setFont in class Graphics
Parameters:
f - the new font
See Also:
Graphics.setFont(Font)

setForegroundColor

public void setForegroundColor(Color rgb)
Description copied from class: Graphics
Sets the foreground color.

Specified by:
setForegroundColor in class Graphics
Parameters:
rgb - the new foreground color
See Also:
Graphics.setForegroundColor(Color)

setLineStyle

public void setLineStyle(int style)
Description copied from class: Graphics
Sets the line style.

Specified by:
setLineStyle in class Graphics
Parameters:
style - the new style
See Also:
Graphics.setLineStyle(int)

setLineWidth

public void setLineWidth(int width)
Description copied from class: Graphics
Sets the line width.

Specified by:
setLineWidth in class Graphics
Parameters:
width - the new width
See Also:
Graphics.setLineWidth(int)

setXORMode

public void setXORMode(boolean b)
Description copied from class: Graphics
Sets the XOR mode.

Specified by:
setXORMode in class Graphics
Parameters:
b - the new XOR mode
See Also:
Graphics.setXORMode(boolean)

translate

public void translate(int dx,
                      int dy)
Description copied from class: Graphics
Translates this graphics object so that its origin is offset horizontally by dx and vertically by dy.

Specified by:
translate in class Graphics
Parameters:
dx - the horizontal offset
dy - the vertical offset
See Also:
Graphics.translate(int, int)

Eclipse Draw2d
2.1

Copyright (c) IBM Corp. and others 2000, 2003. All Rights Reserved.