com.smartgwt.client.widgets.drawing

## Class DrawRect

- java.lang.Object
- - com.smartgwt.client.core.BaseClass
  - - com.smartgwt.client.widgets.drawing.DrawItem
    - - com.smartgwt.client.widgets.drawing.DrawRect

- All Implemented Interfaces:
    com.google.gwt.event.shared.HasHandlers, HasClickHandlers, HasDragMoveHandlers, HasDragResizeMoveHandlers, HasDragStartHandlers, HasDragStopHandlers, HasMouseDownHandlers, HasMouseMoveHandlers, HasMouseOutHandlers, HasMouseOverHandlers, HasMouseUpHandlers, HasMovedHandlers, HasResizedHandlers, HasShowContextMenuHandlers

      public class DrawRect
      extends DrawItem

  DrawItem subclass to render rectangle shapes, optionally with rounded corners.

- - ### Field Summary

    - ### Fields inherited from class com.smartgwt.client.core.BaseClass

      `config, id, scClassName`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `DrawRect()`
    `DrawRect(com.google.gwt.core.client.JavaScriptObject jsObj)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `com.google.gwt.core.client.JavaScriptObject` | `create()`
    `Point` | `getCenter()` Get the center point of the rectangle.
    `int` | `getHeight()` Height in pixels.
    `int` | `getLeft()` Left coordinate in pixels relative to the DrawPane.
    `LineCap` | `getLineCap()` Style of drawing the endpoints of a line.
    `static DrawRect` | `getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)`
    `float` | `getRounding()` Rounding of corners, from 0 (square corners) to 1.0 (shorter edge is a semicircle).
    `int` | `getTop()` Top coordinate in pixels relative to the DrawPane.
    `int` | `getWidth()` Width in pixels.
    `void` | `moveBy(int dX, int dY)` Move the drawRect by the specified delta
    `void` | `moveTo(int left, int top)` Move the drawRect to the specified position
    `void` | `resizeBy(int dX, int dY)` Resize by the specified delta
    `void` | `resizeTo(int width, int height)` Resize to the specified size
    `void` | `setCenter(int left, int top)` Move the drawRect such that it is centered over the specified coordinates.
    `static void` | `setDefaultProperties(DrawRect drawRectProperties)` Class level method to set the default properties of this class.
    `void` | `setHeight(int height)` Height in pixels.
    `void` | `setLeft(int left)` Left coordinate in pixels relative to the DrawPane.
    `void` | `setLineCap(LineCap lineCap)` Style of drawing the endpoints of a line.
    `void` | `setRect(int left, int top, int width, int height)` Move and resize the drawRect to match the specified coordinates and size.
    `void` | `setRounding(float rounding)` Rounding of corners, from 0 (square corners) to 1.0 (shorter edge is a semicircle).
    `void` | `setTop(int top)` Top coordinate in pixels relative to the DrawPane.
    `void` | `setWidth(int width)` Width in pixels.

    - ### 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, getEventOpaque, getFillColor, getFillGradient, getFillGradientAsString, getFillOpacity, getHoverDelay, getHoverHTML, getKeepInParentRect, getKnobs, getLineColor, getLineOpacity, getLinePattern, getLineWidth, getMoveKnobOffset, getMoveKnobPoint, getPageLeft, getPageTop, getPrompt, getRef, getResizeKnobPoints, getRotation, getRotationAsDouble, getScale, getShadow, getShowHover, getStartArrow, getSvgString, hide, hideKnobs, hideKnobs, hover, isInBounds, isPointInPath, rotateBy, rotateTo, scaleBy, scaleTo, setAttribute, setAttribute, setCanDrag, setCanHover, setContextMenu, setCursor, setDefaultProperties, setDragStartDistance, setDrawGroup, setDrawPane, setEndArrow, setEventOpaque, setFillColor, setFillGradient, setFillGradient, setFillOpacity, setHoverDelay, setKeepInParentRect, setKeepInParentRect, setKnobs, 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

    - #### DrawRect

          public DrawRect()

    - #### DrawRect

          public DrawRect(com.google.gwt.core.client.JavaScriptObject jsObj)

  - ### Method Detail

    - #### getOrCreateRef

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

    - #### create

          public com.google.gwt.core.client.JavaScriptObject create()

      Overrides:
        `create` in class `DrawItem`

    - #### setHeight

          public void setHeight(int height)

      Height in pixels.
      If this method is called after the component has been drawn/initialized: Set the height of the drawRect
      Parameters:
        `height` - new height. Default value is 100

    - #### getHeight

          public int getHeight()

      Height in pixels.
      Returns:
        int

    - #### setLeft

          public void setLeft(int left)

      Left coordinate in pixels relative to the DrawPane.
      If this method is called after the component has been drawn/initialized: Set the left coordinate of the drawRect
      Parameters:
        `left` - new left coordinate. Default value is 0

    - #### getLeft

          public int getLeft()

      Left coordinate in pixels relative to the DrawPane.
      Returns:
        int

    - #### setLineCap

          public void setLineCap(LineCap lineCap)

      Style of drawing the endpoints of a line.

      Note that for dashed and dotted lines, the lineCap style affects each dash or dot.

      Overrides:
        `setLineCap` in class `DrawItem`
      Parameters:
        `lineCap` - Default value is "butt"

    - #### getLineCap

          public LineCap getLineCap()

      Style of drawing the endpoints of a line.

      Note that for dashed and dotted lines, the lineCap style affects each dash or dot.

      Overrides:
        `getLineCap` in class `DrawItem`
      Returns:
        LineCap

    - #### setRounding

          public void setRounding(float rounding)
                           throws java.lang.IllegalStateException

      Rounding of corners, from 0 (square corners) to 1.0 (shorter edge is a semicircle).
      If this method is called after the component has been drawn/initialized: Setter method for `rounding`
      Parameters:
        `rounding` - new rounding value. Should be between zero (a rectangle) and 1 (shorter edge is a semicircle). Default value is 0
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the underlying component has been created

    - #### getRounding

          public float getRounding()

      Rounding of corners, from 0 (square corners) to 1.0 (shorter edge is a semicircle).
      Returns:
        float

    - #### setTop

          public void setTop(int top)

      Top coordinate in pixels relative to the DrawPane.
      If this method is called after the component has been drawn/initialized: Set the top coordinate of the drawRect
      Parameters:
        `top` - new top coordinate. Default value is 0

    - #### getTop

          public int getTop()

      Top coordinate in pixels relative to the DrawPane.
      Returns:
        int

    - #### setWidth

          public void setWidth(int width)

      Width in pixels.
      If this method is called after the component has been drawn/initialized: Set the width of the drawRect
      Parameters:
        `width` - new width. Default value is 100

    - #### getWidth

          public int getWidth()

      Width in pixels.
      Returns:
        int

    - #### getCenter

          public Point getCenter()

      Get the center point of the rectangle.
      Returns:
        the center point

    - #### moveBy

          public void moveBy(int dX,
                    int dY)

      Move the drawRect by the specified delta
      Overrides:
        `moveBy` in class `DrawItem`
      Parameters:
        `dX` - number of pixels to move horizontally
        `dY` - number of pixels to move vertically

    - #### moveTo

          public void moveTo(int left,
                    int top)

      Move the drawRect to the specified position
      Parameters:
        `left` - new left coordinate
        `top` - new top coordinate

    - #### resizeBy

          public void resizeBy(int dX,
                      int dY)

      Resize by the specified delta
      Overrides:
        `resizeBy` in class `DrawItem`
      Parameters:
        `dX` - number of pixels to resize by horizontally
        `dY` - number of pixels to resize by vertically

    - #### resizeTo

          public void resizeTo(int width,
                      int height)

      Resize to the specified size
      Overrides:
        `resizeTo` in class `DrawItem`
      Parameters:
        `width` - new width
        `height` - new height

    - #### setCenter

          public void setCenter(int left,
                       int top)

      Move the drawRect such that it is centered over the specified coordinates.
      Parameters:
        `left` - left coordinate for new center position
        `top` - top coordinate for new center postiion

    - #### setRect

          public void setRect(int left,
                     int top,
                     int width,
                     int height)

      Move and resize the drawRect to match the specified coordinates and size.
      Parameters:
        `left` - new left coordinate
        `top` - new top coordinate
        `width` - new width
        `height` - new height

    - #### setDefaultProperties

          public static void setDefaultProperties(DrawRect drawRectProperties)

      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:
        `drawRectProperties` - properties that should be used as new defaults when instances of this class are created