Class DrawShape

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

public class DrawShape extends DrawItem
DrawItem to render a shape defined by executing the series of drawing commands in the commands array.
  • Constructor Details

    • DrawShape

      public DrawShape()
    • DrawShape

      public DrawShape(JavaScriptObject jsObj)
  • Method Details

    • getOrCreateRef

      public static DrawShape 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:
    • 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:
    • 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:
    • create

      protected JavaScriptObject create()
      Overrides:
      create in class DrawItem
    • setCommands

      public DrawShape setCommands(DrawShapeCommand... commands)
      The drawing commands that will be executed to render the shape.

      If this method is called after the component has been drawn/initialized: Sets the commands that define this shape.
      Parameters:
      commands - the new commands. Default value is null
      Returns:
      DrawShape instance, for chaining setter calls
    • getCommands

      public DrawShapeCommand[] getCommands()
      The drawing commands that will be executed to render the shape.
      Returns:
      Current commands value. Default value is null
    • setTitleRotationMode

      public DrawShape setTitleRotationMode(TitleRotationMode titleRotationMode) throws IllegalStateException
      The mode in which the titleLabel (if shown) is rotated with this draw item.

      Note : This is an advanced setting

      Overrides:
      setTitleRotationMode in class DrawItem
      Parameters:
      titleRotationMode - New titleRotationMode value. Default value is "withItemAlwaysUp"
      Returns:
      DrawShape instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getTitleRotationMode

      public TitleRotationMode getTitleRotationMode()
      The mode in which the titleLabel (if shown) is rotated with this draw item.
      Overrides:
      getTitleRotationMode in class DrawItem
      Returns:
      Current titleRotationMode value. Default value is "withItemAlwaysUp"
      See Also:
    • moveBy

      public void moveBy(int dX, int dY)
      Move the drawShape by the specified delta
      Overrides:
      moveBy in class DrawItem
      Parameters:
      dX - number of pixels to move horizontally
      dY - number of pixels to move vertically
    • 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
    • setDefaultProperties

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

      public LogicalStructureObject setLogicalStructure(DrawShapeLogicalStructure 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