Class DrawPath

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
Direct Known Subclasses:
DrawPolygon

public class DrawPath extends DrawItem
Draws a multi-segment line.
  • Constructor Details

    • DrawPath

      public DrawPath()
    • DrawPath

      public DrawPath(JavaScriptObject jsObj)
  • Method Details

    • getOrCreateRef

      public static DrawPath 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
    • setKnobs

      public DrawPath setKnobs(KnobType... knobs) throws IllegalStateException
      DrawPath only supports the KnobType.MOVE knob type.
      Overrides:
      setKnobs in class DrawItem
      Parameters:
      knobs - New knobs value. Default value is null
      Returns:
      DrawPath instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
      See Also:
    • getKnobs

      public KnobType[] getKnobs()
      DrawPath only supports the KnobType.MOVE knob type.
      Overrides:
      getKnobs in class DrawItem
      Returns:
      Current knobs value. Default value is null
      See Also:
    • setPoints

      public DrawPath setPoints(Point... points)
      Array of Points for the line, specified in the local coordinate system.
      Parameters:
      points - New points value. Default value is [[0,0], [100,100]]
      Returns:
      DrawPath instance, for chaining setter calls
    • getPoints

      public Point[] getPoints()
      Array of Points for the line, specified in the local coordinate system.
      Returns:
      Current points value. Default value is [[0,0], [100,100]]
    • setShowTitleLabelBackground

      public DrawPath setShowTitleLabelBackground(boolean showTitleLabelBackground) throws IllegalStateException
      If the titleLabel is showing, should the titleLabelBackground be created and placed behind the titleLabel?

      This defaults to true for DrawSectors and shapes that are not commonly filled (e.g. DrawLines).

      Note : This is an advanced setting

      Overrides:
      setShowTitleLabelBackground in class DrawItem
      Parameters:
      showTitleLabelBackground - New showTitleLabelBackground value. Default value is true
      Returns:
      DrawPath instance, for chaining setter calls
      Throws:
      IllegalStateException - this property cannot be changed after the component has been created
    • getShowTitleLabelBackground

      public boolean getShowTitleLabelBackground()
      If the titleLabel is showing, should the titleLabelBackground be created and placed behind the titleLabel?

      This defaults to true for DrawSectors and shapes that are not commonly filled (e.g. DrawLines).

      Overrides:
      getShowTitleLabelBackground in class DrawItem
      Returns:
      Current showTitleLabelBackground value. Default value is true
    • getCenter

      public Point getCenter()
      Get the mean center of the path.
      Overrides:
      getCenter in class DrawItem
      Returns:
      the mean center
    • moveBy

      public void moveBy(int dX, int dY)
      Move the points by dX,dY
      Overrides:
      moveBy in class DrawItem
      Parameters:
      dX - delta x coordinate in pixels
      dY - delta y coordinate in pixels
    • moveFirstPointTo

      public void moveFirstPointTo(Integer left, Integer top)
      Move all points in the path such that the first point ends up at the specified coordinates and the line lengths and angles are unchanged.
      Parameters:
      left - new left coordinate in pixels
      top - new top coordinate in pixels
    • 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(Integer width, Integer height)
      Resize to the specified size
      Overrides:
      resizeTo in class DrawItem
      Parameters:
      width - new width
      height - new height
    • setDefaultProperties

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

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