com.smartgwt.client.widgets.drawing
Class DrawLine

java.lang.Object
  extended by com.smartgwt.client.core.BaseClass
      extended by com.smartgwt.client.widgets.drawing.DrawItem
          extended by com.smartgwt.client.widgets.drawing.DrawLine
All Implemented Interfaces:
com.google.gwt.event.shared.HasHandlers, HasClickHandlers, HasDragMoveHandlers, HasDragResizeMoveHandlers, HasDragStartHandlers, HasDragStopHandlers, HasMouseDownHandlers, HasMouseMoveHandlers, HasMouseOutHandlers, HasMouseOverHandlers, HasMouseUpHandlers, HasMovedHandlers, HasResizedHandlers, HasShowContextMenuHandlers

public class DrawLine
extends DrawItem

DrawItem subclass to render line segments.


Field Summary
 
Fields inherited from class com.smartgwt.client.core.BaseClass
config, id, scClassName
 
Constructor Summary
DrawLine()
           
DrawLine(com.google.gwt.core.client.JavaScriptObject jsObj)
           
 
Method Summary
 com.google.gwt.core.client.JavaScriptObject create()
           
 Point getCenter()
          Get the midpoint of the line.
 int getEndLeft()
          Ending left coordinate of the line.
 Point getEndPoint()
          End point of the line
 int getEndTop()
          Ending top coordinate of the line.
 KnobType[] getKnobs()
          Array of control knobs to display for this item.
static DrawLine getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)
           
 int getStartLeft()
          Starting left coordinate of the line.
 Point getStartPoint()
          Start point of the line
 int getStartTop()
          Starting top coordinate of the line.
 boolean isPointInPath(int x, int y)
          Returns true if the given point in the drawing coordinate system is within this DrawItem's shape, taking into account local transforms.
 void moveBy(int left, int top)
          Move both the start and end points of the line by a relative amount.
 void moveTo(int left, int top)
          Move both the start and end points of the line, such that the startPoint ends up at the specified coordinate and the line length and angle are unchanged.
static void setDefaultProperties(DrawLine drawLineProperties)
          Class level method to set the default properties of this class.
 void setEndLeft(int endLeft)
          Ending left coordinate of the line.
 void setEndPoint(Point endPoint)
          End point of the line

If this method is called after the component has been drawn/initialized: Update the endPoint
 void setEndTop(int endTop)
          Ending top coordinate of the line.
 void setKnobs(KnobType... knobs)
          Array of control knobs to display for this item.
 void setStartLeft(int startLeft)
          Starting left coordinate of the line.
 void setStartPoint(Point startPoint)
          Start point of the line

If this method is called after the component has been drawn/initialized: Update the startPoint
 void setStartTop(int startTop)
          Starting top coordinate of the line.
 
Methods inherited from class com.smartgwt.client.widgets.drawing.DrawItem
addClickHandler, addDragMoveHandler, addDragResizeMoveHandler, addDragStartHandler, addDragStopHandler, addMouseDownHandler, addMouseMoveHandler, addMouseOutHandler, addMouseOverHandler, addMouseUpHandler, addMovedHandler, addResizedHandler, addShowContextMenuHandler, computeAngle, computeAngleAsDouble, dragResizeMove, draw, erase, getAttributeAsIntArray, getBoundingBox, getBoundingBoxAsDouble, getCanDrag, getCanHover, getContextMenu, getCursor, getDestroyed, getDestroying, getDragStartDistance, getDrawGroup, getDrawPane, getEndArrow, getFillColor, getFillGradient, getFillGradientAsString, getFillOpacity, getHoverHTML, getKeepInParentRect, getLineCap, getLineColor, getLineOpacity, getLinePattern, getLineWidth, getMoveKnobOffset, getMoveKnobPoint, getPageLeft, getPageTop, getPrompt, getRef, getResizeKnobPoints, getRotation, getRotationAsDouble, getScale, getShadow, getShowHover, getStartArrow, getSvgString, hide, hideKnobs, hideKnobs, hover, isInBounds, resizeBy, resizeTo, rotateBy, rotateTo, scaleBy, scaleTo, setAttribute, setAttribute, setCanDrag, setCanHover, setContextMenu, setCursor, setDefaultProperties, setDragStartDistance, setDrawGroup, setDrawPane, setEndArrow, setFillColor, setFillGradient, setFillGradient, setFillOpacity, setKeepInParentRect, setKeepInParentRect, setLineCap, setLineColor, setLineOpacity, setLinePattern, setLineWidth, setMoveKnobOffset, setMoveKnobPoint, setPrompt, setResizeKnobPoints, setRotation, setRotation, setScale, setShadow, setShowHover, setStartArrow, show, showKnobs, showKnobs, supportsEndArrow, supportsStartArrow
 
Methods inherited from class com.smartgwt.client.core.BaseClass
asSGWTComponent, createJsObj, destroy, doAddHandler, doInit, error, error, errorIfNotCreated, fireEvent, getAttribute, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDouble, getAttributeAsElement, getAttributeAsFloat, getAttributeAsInt, getAttributeAsJavaScriptObject, getAttributeAsMap, getAttributeAsString, getAttributeAsStringArray, getClassName, getConfig, getHandlerCount, getID, getJsObj, getOrCreateJsObj, getScClassName, hasAutoAssignedID, internalSetID, internalSetID, isCreated, onBind, onInit, registerID, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setConfig, setID, setJavaScriptObject, setProperty, setProperty, setProperty, setProperty, setScClassName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.google.gwt.event.shared.HasHandlers
fireEvent
 

Constructor Detail

DrawLine

public DrawLine()

DrawLine

public DrawLine(com.google.gwt.core.client.JavaScriptObject jsObj)
Method Detail

getOrCreateRef

public static DrawLine getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)

create

public com.google.gwt.core.client.JavaScriptObject create()
Overrides:
create in class DrawItem

setEndLeft

public void setEndLeft(int endLeft)
                throws java.lang.IllegalStateException
Ending left coordinate of the line. Overrides left coordinate of endPoint if both are set.

Parameters:
endLeft - Default value is 100
Throws:
java.lang.IllegalStateException - this property cannot be changed after the underlying component has been created

getEndLeft

public int getEndLeft()
Ending left coordinate of the line. Overrides left coordinate of endPoint if both are set.

Returns:
int

setEndPoint

public void setEndPoint(Point endPoint)
End point of the line

If this method is called after the component has been drawn/initialized: Update the endPoint

Parameters:
endPoint - left coordinate for end point, in pixels. Default value is [100,100]

getEndPoint

public Point getEndPoint()
End point of the line

Returns:
Point

setEndTop

public void setEndTop(int endTop)
               throws java.lang.IllegalStateException
Ending top coordinate of the line. Overrides top coordinate of endPoint if both are set.

Parameters:
endTop - Default value is 100
Throws:
java.lang.IllegalStateException - this property cannot be changed after the underlying component has been created

getEndTop

public int getEndTop()
Ending top coordinate of the line. Overrides top coordinate of endPoint if both are set.

Returns:
int

setKnobs

public void setKnobs(KnobType... knobs)
              throws java.lang.IllegalStateException
Array of control knobs to display for this item. Each KnobType specified in this will turn on UI element(s) allowing the user to manipulate this DrawLine. To update the set of knobs at runtime use DrawItem.showKnobs and DrawItem.hideKnobs.

DrawLine supports the KnobType.STARTPOINT and KnobType.ENDPOINT knob types.

Overrides:
setKnobs in class DrawItem
Parameters:
knobs - Default value is null
Throws:
java.lang.IllegalStateException - this property cannot be changed after the underlying component has been created

getKnobs

public KnobType[] getKnobs()
Array of control knobs to display for this item. Each KnobType specified in this will turn on UI element(s) allowing the user to manipulate this DrawLine. To update the set of knobs at runtime use DrawItem.showKnobs and DrawItem.hideKnobs.

DrawLine supports the KnobType.STARTPOINT and KnobType.ENDPOINT knob types.

Overrides:
getKnobs in class DrawItem
Returns:
KnobType...

setStartLeft

public void setStartLeft(int startLeft)
                  throws java.lang.IllegalStateException
Starting left coordinate of the line. Overrides left coordinate of startPoint if both are set.

Parameters:
startLeft - Default value is 0
Throws:
java.lang.IllegalStateException - this property cannot be changed after the underlying component has been created

getStartLeft

public int getStartLeft()
Starting left coordinate of the line. Overrides left coordinate of startPoint if both are set.

Returns:
int

setStartPoint

public void setStartPoint(Point startPoint)
Start point of the line

If this method is called after the component has been drawn/initialized: Update the startPoint

Parameters:
startPoint - left coordinate for start point, in pixels. Default value is [0,0]

getStartPoint

public Point getStartPoint()
Start point of the line

Returns:
Point

setStartTop

public void setStartTop(int startTop)
                 throws java.lang.IllegalStateException
Starting top coordinate of the line. Overrides top coordinate of startPoint if both are set.

Parameters:
startTop - Default value is 0
Throws:
java.lang.IllegalStateException - this property cannot be changed after the underlying component has been created

getStartTop

public int getStartTop()
Starting top coordinate of the line. Overrides top coordinate of startPoint if both are set.

Returns:
int

getCenter

public Point getCenter()
Get the midpoint of the line.

Returns:
the midpoint

isPointInPath

public boolean isPointInPath(int x,
                             int y)
Returns true if the given point in the drawing coordinate system is within this DrawItem's shape, taking into account local transforms.

Overrides:
isPointInPath in class DrawItem
Parameters:
x - X coordinate of the test point.
y - Y coordinate of the test point.
Returns:

moveBy

public void moveBy(int left,
                   int top)
Move both the start and end points of the line by a relative amount.

Overrides:
moveBy in class DrawItem
Parameters:
left - change to left coordinate in pixels
top - change to top coordinate in pixels

moveTo

public void moveTo(int left,
                   int top)
Move both the start and end points of the line, such that the startPoint ends up at the specified coordinate and the line length and angle are unchanged.

Parameters:
left - new startLeft coordinate in pixels
top - new startTop coordinate in pixels

setDefaultProperties

public static void setDefaultProperties(DrawLine drawLineProperties)
Class level method to set the default properties of this class. If set, then all existing and subsequently created instances of this class will automatically have default properties corresponding to the properties set on the SmartGWT class instance passed to this function before its underlying SmartClient JS object was created. This is a powerful feature that eliminates the need for users to create a separate hierarchy of subclasses that only alter the default properties of this class. Can also be used for skinning / styling purposes.

Note: This method is intended for setting default attributes only and will affect all instances of the underlying class (including those automatically generated in JavaScript). This method should not be used to apply standard EventHandlers or override methods for a class - use a custom subclass instead. Calling this method after instances have been created can result in undefined behavior, since it bypasses any setters and a class instance may have already examined a particular property and not be expecting any changes through this route.

Parameters:
drawLineProperties - properties that should be used as new defaults when instances of this class are created