Package com.smartgwt.client.widgets.drawing

# Class DrawImage

java.lang.Object
com.google.gwt.user.client.ui.UIObject
com.google.gwt.user.client.ui.Widget
com.smartgwt.client.widgets.BaseWidget
com.smartgwt.client.widgets.drawing.DrawItem
com.smartgwt.client.widgets.drawing.DrawImage

All Implemented Interfaces:
  `HasAttachHandlers`, `HasHandlers`, `EventListener`, `HasVisibility`, `IsWidget`, `LogicalStructure`, `HasClickHandlers`, `HasDoubleClickHandlers`, `HasDragMoveHandlers`, `HasDragResizeMoveHandlers`, `HasDragResizeStartHandlers`, `HasDragResizeStopHandlers`, `HasDragStartHandlers`, `HasDragStopHandlers`, `HasDrawEndHandlers`, `HasDrawStartHandlers`, `HasMouseDownHandlers`, `HasMouseMoveHandlers`, `HasMouseOutHandlers`, `HasMouseOverHandlers`, `HasMouseUpHandlers`, `HasMovedHandlers`, `HasResizedHandlers`, `HasShowContextMenuHandlers`

public class DrawImage extends DrawItem
DrawItem subclass to render embedded images.

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.UIObject

  `UIObject.DebugIdImpl, UIObject.DebugIdImplEnabled`

- ## Field Summary

  ### Fields inherited from class com.smartgwt.client.widgets.BaseWidget

  `config, configOnly, factoryCreated, factoryProperties, id, nativeObject, scClassName`

  ### Fields inherited from class com.google.gwt.user.client.ui.UIObject

  `DEBUG_ID_PREFIX`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DrawImage()`
  `DrawImage(JavaScriptObject jsObj)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static void`
  `changeAutoChildDefaults(String autoChildName, Canvas defaults)`
  Changes the defaults for Canvas AutoChildren named `autoChildName`.
  `static void`
  `changeAutoChildDefaults(String autoChildName, DrawItem defaults)`
  Changes the defaults for DrawItem AutoChildren named `autoChildName`.
  `static void`
  `changeAutoChildDefaults(String autoChildName, FormItem defaults)`
  Changes the defaults for FormItem AutoChildren named `autoChildName`.
  `protected JavaScriptObject`
  `create()`
  `Point`
  `getCenter()`
  Get the center point of the image.
  `int`
  `getHeight()`
  Height in pixels relative to the `local coordinate system`.
  `double`
  `getHeightAsDouble()`
  Height in pixels relative to the `local coordinate system`.
  `int`
  `getLeft()`
  Left coordinate in pixels relative to the `local coordinate system`.
  `double`
  `getLeftAsDouble()`
  Left coordinate in pixels relative to the `local coordinate system`.
  `LogicalStructureObject`
  `getLogicalStructure()`
  Getter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.
  `static DrawImage`
  `getOrCreateRef(JavaScriptObject jsObj)`
  `String`
  `getSrc()`
  URL to the image file.
  `String`
  `getTitle()`
  Title (tooltip hover text) for this image.
  `int`
  `getTop()`
  Top coordinate in pixels relative to the `local coordinate system`.
  `double`
  `getTopAsDouble()`
  Top coordinate in pixels relative to the `local coordinate system`.
  `Boolean`
  `getUseMatrixFilter()`
  Configures whether a Matrix filter is used to render this DrawImage in Internet Explorer 6-8.
  `int`
  `getWidth()`
  Width in pixels relative to the `local coordinate system`.
  `double`
  `getWidthAsDouble()`
  Width in pixels relative to the `local coordinate system`.
  `void`
  `moveBy(int dX, int dY)`
  Move the drawImage by the specified delta
  `void`
  `moveTo(Integer left, Integer top)`
  Move the drawImage to the specified position
  `static void`
  `setDefaultProperties(DrawImage drawImageProperties)`
  Class level method to set the default properties of this class.
  `DrawImage`
  `setHeight(int height)`
  Height in pixels relative to the `local coordinate system`.
  `DrawImage`
  `setLeft(int left)`
  Left coordinate in pixels relative to the `local coordinate system`.
  `LogicalStructureObject`
  `setLogicalStructure(DrawImageLogicalStructure s)`
  Setter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.
  `void`
  `setRect(Integer left, Integer top, Integer width, Integer height)`
  Updates the drawImage to match the specified coordinates and size in `local coordinates`.
  `DrawImage`
  `setSrc(String src)`
  URL to the image file.
  `void`
  `setTitle(String title)`
  Title (tooltip hover text) for this image.
  `DrawImage`
  `setTop(int top)`
  Top coordinate in pixels relative to the `local coordinate system`.
  `DrawImage`
  `setUseMatrixFilter(Boolean useMatrixFilter)`
  Configures whether a Matrix filter is used to render this DrawImage in Internet Explorer 6-8.
  `DrawImage`
  `setWidth(int width)`
  Width in pixels relative to the `local coordinate system`.

  ### Methods inherited from class com.smartgwt.client.widgets.drawing.DrawItem

  `addClickHandler, addDoubleClickHandler, addDragMoveHandler, addDragResizeMoveHandler, addDragResizeStartHandler, addDragResizeStopHandler, addDragStartHandler, addDragStopHandler, addDrawEndHandler, addDrawStartHandler, addMouseDownHandler, addMouseMoveHandler, addMouseOutHandler, addMouseOverHandler, addMouseUpHandler, addMovedHandler, addResizedHandler, addShowContextMenuHandler, bringToFront, computeAngle, computeAngleAsDouble, dragResizeMove, draw, erase, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDouble, getAttributeAsElement, getAttributeAsFloat, getAttributeAsInt, getAttributeAsJavaScriptObject, getAttributeAsMap, getAttributeAsString, getBoundingBox, getBoundingBoxAsDouble, getById, getByJSObject, getCanDrag, getCanHover, getCanvasAutoChild, getContextMenu, getCornerResizeKnob, getCursor, getDestroyed, getDestroying, getDragStartDistance, getDrawGroup, getDrawItemAutoChild, getDrawPane, getDrawPaneAsString, getEditProxyConstructor, getEndArrow, getEndKnob, getEventOpaque, getEventPassThrough, getFillColor, getFillGradient, getFillGradientAsString, getFillOpacity, getFormItemAutoChild, getHoverDelay, getHoverHTML, getKeepInParentRect, getKnobs, getLineCap, getLineColor, getLineOpacity, getLinePattern, getLineWidth, getMoveKnob, getMoveKnobOffset, getMoveKnobPoint, getPageLeft, getPageTop, getPaletteDefaults, getPrompt, getProportionalResizeModifiers, getProportionalResizing, getRef, getResizeBoundingBox, getResizeBoundingBoxAsDouble, getResizeKnobPoints, getResizeOutline, getResizeViaLocalTransformOnly, getRotateKnob, getRotation, getRotationAsDouble, getScale, getShadow, getShowHover, getShowResizeOutline, getShowTitleLabelBackground, getSideResizeKnob, getStartArrow, getStartKnob, getSvgString, getTitleAutoFit, getTitleAutoFitMargin, getTitleAutoFitRotationMode, getTitleLabel, getTitleLabelBackground, getTitleLabelPadding, getTitleRotationMode, getTranslate, getUnderlyingGWTCanvas, getUseSimpleTransform, getXShearFactor, getYShearFactor, getZIndex, hide, hideAllKnobs, hideKnobs, hideKnobs, hover, isInBounds, isPointInPath, resizeBy, resizeTo, rotateBy, rotateTo, scaleBy, scaleTo, sendToBack, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAutoChildConstructor, setAutoChildProperties, setAutoChildProperties, setAutoChildProperties, setAutoChildProperties, setAutoChildVisibility, setCanDrag, setCanHover, setCenterPoint, setContextMenu, setCursor, setDefaultProperties, setDragStartDistance, setDrawGroup, setDrawPane, setDrawPane, setEditProxyConstructor, setEndArrow, setEventOpaque, setEventPassThrough, setFillColor, setFillGradient, setFillGradient, setFillOpacity, setHoverDelay, setKeepInParentRect, setKeepInParentRect, setKnobs, setLineCap, setLineColor, setLineOpacity, setLinePattern, setLineWidth, setLogicalStructure, setMoveKnobOffset, setMoveKnobPoint, setPrompt, setPropertyValue, setProportionalResizeModifiers, setProportionalResizing, setResizeKnobPoints, setResizeViaLocalTransformOnly, setRotation, setRotation, setScale, setShadow, setShapeData, setShowHover, setShowResizeOutline, setShowTitleLabelBackground, setStartArrow, setTitleAutoFit, setTitleAutoFitMargin, setTitleAutoFitRotationMode, setTitleLabelPadding, setTitleRotationMode, setTranslate, setUseSimpleTransform, setXShearFactor, setYShearFactor, setZIndex, show, showAllKnobs, showKnobs, showKnobs, supportsEndArrow, supportsStartArrow`

  ### Methods inherited from class com.smartgwt.client.widgets.BaseWidget

  `addDrawHandler, addDynamicProperty, addDynamicProperty, addDynamicProperty, addDynamicProperty, applyFactoryProperties, clearDynamicProperty, completeCreation, destroy, doAddHandler, doInit, doOnRender, equals, error, errorIfNotCreated, getAttribute, getAttributeAsDateArray, getAttributeAsFloatArray, getAttributeAsIntArray, getAttributeAsObject, getAttributeAsRecord, getAttributeAsStringArray, getAutoDraw, getClassName, getConfig, getDOM, getHandlerCount, getID, getInnerHTML, getJsObj, getOrCreateJsObj, getScClassName, hasAutoAssignedID, hasDynamicProperty, hashCode, initNativeObject, internalSetID, internalSetID, isConfigOnly, isCreated, isDrawn, isFactoryCreated, onBind, onDestroy, onDraw, onInit, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAutoDraw, setConfig, setConfigOnly, setDefaultProperties, setDragTracker, setFactoryCreated, setHtmlElement, setID, setJavaScriptObject, setLogicalStructure, setLogicalStructure, setNullProperty, setPosition, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setScClassName, toString`

  ### Methods inherited from class com.google.gwt.user.client.ui.Widget

  `addAttachHandler, addBitlessDomHandler, addDomHandler, addHandler, asWidget, asWidgetOrNull, createHandlerManager, delegateEvent, doAttachChildren, doDetachChildren, fireEvent, getLayoutData, getParent, isAttached, isOrWasAttached, onAttach, onBrowserEvent, onDetach, onLoad, onUnload, removeFromParent, setLayoutData, sinkEvents, unsinkEvents`

  ### Methods inherited from class com.google.gwt.user.client.ui.UIObject

  `addStyleDependentName, addStyleName, ensureDebugId, ensureDebugId, ensureDebugId, getAbsoluteLeft, getAbsoluteTop, getElement, getOffsetHeight, getOffsetWidth, getStyleElement, getStyleName, getStyleName, getStylePrimaryName, getStylePrimaryName, isVisible, isVisible, onEnsureDebugId, removeStyleDependentName, removeStyleName, resolvePotentialElement, setElement, setElement, setHeight, setPixelSize, setSize, setStyleDependentName, setStyleName, setStyleName, setStyleName, setStyleName, setStylePrimaryName, setStylePrimaryName, setVisible, setVisible, setWidth, sinkBitlessEvent`

  ### Methods inherited from class java.lang.Object

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

  ### Methods inherited from interface com.google.gwt.event.shared.HasHandlers

  `fireEvent`

- ## Constructor Details

  - ### DrawImage

    public DrawImage()

  - ### DrawImage

    public DrawImage(JavaScriptObject jsObj)

- ## Method Details

  - ### getOrCreateRef

    public static DrawImage getOrCreateRef(JavaScriptObject jsObj)

  - ### changeAutoChildDefaults

    public static void changeAutoChildDefaults(String autoChildName, Canvas defaults)
    Changes the defaults for Canvas AutoChildren named `autoChildName`.
    Parameters:
      `autoChildName` - name of an AutoChild to customize the defaults for.
      `defaults` - Canvas defaults to apply. These defaults override any existing properties without destroying or wiping out non-overridden properties. For usage tips on this param, see `SGWTProperties`.
    See Also:
      - `AutoChildUsage`

  - ### changeAutoChildDefaults

    public static void changeAutoChildDefaults(String autoChildName, FormItem defaults)
    Changes the defaults for FormItem AutoChildren named `autoChildName`.
    Parameters:
      `autoChildName` - name of an AutoChild to customize the defaults for.
      `defaults` - FormItem defaults to apply. These defaults override any existing properties without destroying or wiping out non-overridden properties. For usage tips on this param, see `SGWTProperties`.
    See Also:
      - `AutoChildUsage`

  - ### changeAutoChildDefaults

    public static void changeAutoChildDefaults(String autoChildName, DrawItem defaults)
    Changes the defaults for DrawItem AutoChildren named `autoChildName`.
    Parameters:
      `autoChildName` - name of an AutoChild to customize the defaults for.
      `defaults` - DrawItem defaults to apply. These defaults override any existing properties without destroying or wiping out non-overridden properties. For usage tips on this param, see `SGWTProperties`.
    See Also:
      - `AutoChildUsage`

  - ### create

    protected JavaScriptObject create()
    Overrides:
      `create` in class `DrawItem`

  - ### setHeight

    public DrawImage setHeight(int height)
    Height in pixels relative to the `local coordinate system`.
    If this method is called after the component has been drawn/initialized: Set the height of the drawImage.
    Parameters:
      `height` - new height. Default value is 16
    Returns:
      `DrawImage` instance, for chaining setter calls

  - ### getHeight

    public int getHeight()
    Height in pixels relative to the `local coordinate system`.
    Returns:
      Current height value. Default value is 16

  - ### getHeightAsDouble

    public double getHeightAsDouble()
    Height in pixels relative to the `local coordinate system`.
    Returns:
      Current height value. Default value is 16

  - ### setLeft

    public DrawImage setLeft(int left)
    Left coordinate in pixels relative to the `local coordinate system`.
    If this method is called after the component has been drawn/initialized: Set the left coordinate of the drawImage.
    Parameters:
      `left` - new left coordinate. Default value is 0
    Returns:
      `DrawImage` instance, for chaining setter calls

  - ### getLeft

    public int getLeft()
    Left coordinate in pixels relative to the `local coordinate system`.
    Returns:
      Current left value. Default value is 0

  - ### getLeftAsDouble

    public double getLeftAsDouble()
    Left coordinate in pixels relative to the `local coordinate system`.
    Returns:
      Current left value. Default value is 0

  - ### setSrc

    public DrawImage setSrc(String src)
    URL to the image file.
    If this method is called after the component has been drawn/initialized: Change the URL of the image displayed.
    Parameters:
      `src` - new URL. Default value is "blank.png"
    Returns:
      `DrawImage` instance, for chaining setter calls
    See Also:
      - `URL`

  - ### getSrc

    public String getSrc()
    URL to the image file.
    Returns:
      Current src value. Default value is "blank.png"
    See Also:
      - `URL`

  - ### setTitle

    public void setTitle(String title) throws IllegalStateException
    Title (tooltip hover text) for this image.
    Overrides:
      `setTitle` in class `DrawItem`
    Parameters:
      `title` - New title value. Default value is null
    Throws:
      `IllegalStateException` - this property cannot be changed after the component has been created
    See Also:
      - `DrawItem.setTitleRotationMode(com.smartgwt.client.types.TitleRotationMode)`

  - ### getTitle

    public String getTitle()
    Title (tooltip hover text) for this image.
    Overrides:
      `getTitle` in class `DrawItem`
    Returns:
      Current title value. Default value is null
    See Also:
      - `DrawItem.getTitleRotationMode()`

  - ### setTop

    public DrawImage setTop(int top)
    Top coordinate in pixels relative to the `local coordinate system`.
    If this method is called after the component has been drawn/initialized: Set the top coordinate of the drawImage.
    Parameters:
      `top` - new top coordinate. Default value is 0
    Returns:
      `DrawImage` instance, for chaining setter calls

  - ### getTop

    public int getTop()
    Top coordinate in pixels relative to the `local coordinate system`.
    Returns:
      Current top value. Default value is 0

  - ### getTopAsDouble

    public double getTopAsDouble()
    Top coordinate in pixels relative to the `local coordinate system`.
    Returns:
      Current top value. Default value is 0

  - ### setUseMatrixFilter

    public DrawImage setUseMatrixFilter(Boolean useMatrixFilter) throws IllegalStateException
    Configures whether a Matrix filter is used to render this DrawImage in Internet Explorer 6-8.

    With the default of `null`, matrix filters may be used unless `neverUseFilters` has been set. When set explicitly to `true`, matrix filters may be used even if `neverUseFilters` is `true`.

    This setting exists due to platform limitations in Internet Explorer where it is impossible to implement shearing transforms on an image without a matrix filter. Shear can arise by:

    - specifying a nonzero `xShearFactor` or `yShearFactor`,
    - specifying a nonuniform `scale` (where the scale values along the x- and y-dimensions are not equal) and a nonzero `rotation`, or
    - using `KnobType.RESIZE` `control knobs` on a rotated DrawImage.
    When prohibited from using a matrix filter, DrawImage will ignore the shearing components of its local transform. If any of the above conditions are met then the DrawImage might not be drawn correctly. Setting `useMatrixFilter` to `true` avoids this possibility but it also suffers from a range of side-effects mentioned `here`.
    Parameters:
      `useMatrixFilter` - New useMatrixFilter value. Default value is null
    Returns:
      `DrawImage` instance, for chaining setter calls
    Throws:
      `IllegalStateException` - this property cannot be changed after the component has been created
    See Also:
      - `Internet Explorer "filter" effects`

  - ### getUseMatrixFilter

    public Boolean getUseMatrixFilter()
    Configures whether a Matrix filter is used to render this DrawImage in Internet Explorer 6-8.

    With the default of `null`, matrix filters may be used unless `neverUseFilters` has been set. When set explicitly to `true`, matrix filters may be used even if `neverUseFilters` is `true`.

    This setting exists due to platform limitations in Internet Explorer where it is impossible to implement shearing transforms on an image without a matrix filter. Shear can arise by:

    - specifying a nonzero `xShearFactor` or `yShearFactor`,
    - specifying a nonuniform `scale` (where the scale values along the x- and y-dimensions are not equal) and a nonzero `rotation`, or
    - using `KnobType.RESIZE` `control knobs` on a rotated DrawImage.
    When prohibited from using a matrix filter, DrawImage will ignore the shearing components of its local transform. If any of the above conditions are met then the DrawImage might not be drawn correctly. Setting `useMatrixFilter` to `true` avoids this possibility but it also suffers from a range of side-effects mentioned `here`.
    Returns:
      Current useMatrixFilter value. Default value is null
    See Also:
      - `Internet Explorer "filter" effects`

  - ### setWidth

    public DrawImage setWidth(int width)
    Width in pixels relative to the `local coordinate system`.
    If this method is called after the component has been drawn/initialized: Set the width of the drawImage.
    Parameters:
      `width` - new width. Default value is 16
    Returns:
      `DrawImage` instance, for chaining setter calls

  - ### getWidth

    public int getWidth()
    Width in pixels relative to the `local coordinate system`.
    Returns:
      Current width value. Default value is 16

  - ### getWidthAsDouble

    public double getWidthAsDouble()
    Width in pixels relative to the `local coordinate system`.
    Returns:
      Current width value. Default value is 16

  - ### getCenter

    public Point getCenter()
    Get the center point of the image.
    Overrides:
      `getCenter` in class `DrawItem`
    Returns:
      the center point

  - ### moveBy

    public void moveBy(int dX, int dY)
    Move the drawImage 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(Integer left, Integer top)
    Move the drawImage to the specified position
    Overrides:
      `moveTo` in class `DrawItem`
    Parameters:
      `left` - new left coordinate
      `top` - new top coordinate

  - ### setRect

    public void setRect(Integer left, Integer top, Integer width, Integer height)
    Updates the drawImage to match the specified coordinates and size in `local coordinates`.
    Parameters:
      `left` - new left coordinate
      `top` - new top coordinate
      `width` - new width
      `height` - new height

  - ### setDefaultProperties

    public static void setDefaultProperties(DrawImage drawImageProperties)
    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:
      `drawImageProperties` - properties that should be used as new defaults when instances of this class are created
    See Also:
      - `SGWTProperties`

  - ### setLogicalStructure

    public LogicalStructureObject setLogicalStructure(DrawImageLogicalStructure s)
    Setter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.

  - ### getLogicalStructure

    public LogicalStructureObject getLogicalStructure()
    Getter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.
    Specified by:
      `getLogicalStructure` in interface `LogicalStructure`
    Overrides:
      `getLogicalStructure` in class `DrawItem`