public class DrawItem extends BaseClass implements HasClickHandlers, HasMouseDownHandlers, HasMouseMoveHandlers, HasMouseOutHandlers, HasMouseOverHandlers, HasMouseUpHandlers, HasMovedHandlers, HasDragMoveHandlers, HasDragResizeMoveHandlers, HasDragStartHandlers, HasDragStopHandlers, HasResizedHandlers, HasShowContextMenuHandlers
Note that DrawItems as such should never be created, only concrete
subclasses such as DrawGroup
and DrawLine
.
See DrawPane
for the
different approaches to create DrawItems.
config, id, scClassName
Constructor and Description |
---|
DrawItem() |
DrawItem(com.google.gwt.core.client.JavaScriptObject jsObj) |
Modifier and Type | Method and Description |
---|---|
com.google.gwt.event.shared.HandlerRegistration |
addClickHandler(ClickHandler handler)
Add a click handler.
|
com.google.gwt.event.shared.HandlerRegistration |
addDragMoveHandler(DragMoveHandler handler)
Add a dragMove handler.
|
com.google.gwt.event.shared.HandlerRegistration |
addDragResizeMoveHandler(DragResizeMoveHandler handler)
Add a dragResizeMove handler.
|
com.google.gwt.event.shared.HandlerRegistration |
addDragStartHandler(DragStartHandler handler)
Add a dragStart handler.
|
com.google.gwt.event.shared.HandlerRegistration |
addDragStopHandler(DragStopHandler handler)
Add a dragStop handler.
|
com.google.gwt.event.shared.HandlerRegistration |
addMouseDownHandler(MouseDownHandler handler)
Add a mouseDown handler.
|
com.google.gwt.event.shared.HandlerRegistration |
addMouseMoveHandler(MouseMoveHandler handler)
Add a mouseMove handler.
|
com.google.gwt.event.shared.HandlerRegistration |
addMouseOutHandler(MouseOutHandler handler)
Add a mouseOut handler.
|
com.google.gwt.event.shared.HandlerRegistration |
addMouseOverHandler(MouseOverHandler handler)
Add a mouseOver handler.
|
com.google.gwt.event.shared.HandlerRegistration |
addMouseUpHandler(MouseUpHandler handler)
Add a mouseUp handler.
|
com.google.gwt.event.shared.HandlerRegistration |
addMovedHandler(MovedHandler handler)
Add a moved handler.
|
com.google.gwt.event.shared.HandlerRegistration |
addResizedHandler(ResizedHandler handler)
Add a resized handler.
|
com.google.gwt.event.shared.HandlerRegistration |
addShowContextMenuHandler(ShowContextMenuHandler handler)
Add a showContextMenu handler.
|
float |
computeAngle(int px1,
int py1,
int px2,
int py2)
returns the angle in degrees between any two points
|
double |
computeAngleAsDouble(int px1,
int py1,
int px2,
int py2)
returns the angle in degrees between any two points
|
com.google.gwt.core.client.JavaScriptObject |
create() |
void |
dragResizeMove(java.lang.String position,
java.lang.Integer x,
java.lang.Integer y,
java.lang.Integer dX,
java.lang.Integer dY)
If
canDrag and canDrag are both true and the control knobs include "resize" knobs, then this notification
method will be fired when the user drag-resizes the draw item. |
void |
draw()
Draw this item into its current
DrawPane . |
void |
erase()
Erase this drawItem's visual representation and remove it from its DrawGroup (if any) and DrawPane.
|
protected int[] |
getAttributeAsIntArray(java.lang.String property) |
int[] |
getBoundingBox()
Returns the startPoint endPoint
|
java.lang.Boolean |
getCanDrag()
Is this drawItem draggable? Note that dragging must be enabled for the dragPane in which this item is rendered via
canDrag for this to have an effect. |
java.lang.Boolean |
getCanHover()
Will this DrawItem fire hover events when the user hovers over it?
|
int[] |
getCenter()
Get the center coordinates of the rectangle
|
Menu |
getContextMenu()
Context menu to show for this object, an instance of the Menu widget.
|
Cursor |
getCursor()
If set, specifies the cursor to display when the mouse pointer is over this DrawItem.
|
java.lang.Boolean |
getDestroyed()
Flag indicating a drawItem has been destroyed, similar to
destroyed . |
java.lang.Boolean |
getDestroying()
Flag indicating a drawItem is mid-destruction, similar to
destroying . |
int |
getDragStartDistance()
Number of pixels the cursor needs to move before the EventHandler starts a drag operation.
|
DrawGroup |
getDrawGroup()
DrawGroup this drawItem is a member of. |
DrawPane |
getDrawPane()
DrawPane this drawItem should draw in. |
ArrowStyle |
getEndArrow()
Style of arrowhead to draw at the end of the line or path.
|
java.lang.String |
getFillColor()
Fill color to use for shapes.
|
Gradient |
getFillGradient()
Fill gradient to use for shapes.
|
float |
getFillOpacity()
Opacity of the fillColor, as a number between 0 (transparent) and 1 (opaque).
|
java.lang.String |
getHoverHTML()
If
showHover is true, when the user holds the mouse
over this DrawItem for long enough to trigger a hover event, a hover canvas is shown by default. |
java.lang.Boolean |
getKeepInParentRect()
Constrains drag-resizing and drag-repositioning of this draw item to either the current visible area of the
draw pane or an arbitrary bounding box (if set to an array of the form
[left, top, left + width, top + height] ). |
KnobType[] |
getKnobs()
Array of control knobs to display for this item.
|
LineCap |
getLineCap()
Style of drawing the endpoints of a line.
|
java.lang.String |
getLineColor()
Line color
|
float |
getLineOpacity()
Opacity for lines, as a number between 0 (transparent) and 1 (opaque).
|
LinePattern |
getLinePattern()
Pattern for lines, eg "solid" or "dash"
|
int |
getLineWidth()
Pixel width for lines.
|
int[] |
getMoveKnobOffset()
Array holds 2 values representing the x and y offset from moveKnobPoint.
|
java.lang.String |
getMoveKnobPoint()
If this item is showing a
"move" control
knob , this attribute
specifies where the knob should appear with respect to the drawItem. |
static DrawItem |
getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj) |
int |
getPageLeft()
Returns the page-relative left coordinate of the widget on the page, in pixels.
|
int |
getPageTop()
Returns the page-relative top coordinate of the widget on the page, in pixels
|
java.lang.String |
getPrompt()
Default
hover HTML that is displayed in the global
hover canvas if the user hovers over this DrawItem and showHover is true. |
static DrawItem |
getRef(com.google.gwt.core.client.JavaScriptObject jsObj) |
java.lang.String[] |
getResizeKnobPoints()
If this item is showing
"resize" control
knobs , this attribute
specifies which sides / edges should show knobs. |
float |
getRotation()
Rotation in degrees.
|
int[] |
getScale()
Array holds 2 values representing scaling along x and y dimensions.
|
Shadow |
getShadow()
Shadow used for all DrawItem subtypes.
|
boolean |
getShowHover()
If
canHover is true, should we show the global hover
canvas by default when the user hovers over this DrawItem? |
ArrowStyle |
getStartArrow()
Style of arrowhead to draw at the beginning of the line or path.
|
void |
getSvgString()
Generates a string containing the SVG source of this DrawItem.
|
void |
hide()
Hide this drawItem.
|
void |
hideKnobs(KnobType... knobType)
Hides a set of control knobs for this drawItem.
|
boolean |
hover()
If
canHover is true for this DrawItem, the hover()
string method will be fired when the user hovers over this DrawItem. |
java.lang.Boolean |
isInBounds(int x,
int y)
returns true if point is in getBoundingBox()
|
java.lang.Boolean |
isPointInPath(int x,
int y)
returns true if point is in path
|
void |
moveBy(int dX,
int dY)
Move the shape by the specified deltas for the left and top coordinate.
|
void |
resizeBy(int dX,
int dY)
Resize the shape by the specified deltas for the left and top coordinate.
|
void |
resizeTo(int width,
int height)
Resize to the specified size
|
void |
rotateBy(double degrees)
Rotate the shape by the relative rotation in degrees
|
void |
rotateBy(float degrees)
Rotate the shape by the relative rotation in degrees
|
void |
rotateTo(double degrees)
Rotate the shape by the absolute rotation in degrees
|
void |
rotateTo(float degrees)
Rotate the shape by the absolute rotation in degrees
|
void |
scaleBy(double x,
double y)
Scale the shape by the x, y multipliers
|
void |
scaleBy(float x,
float y)
Scale the shape by the x, y multipliers
|
void |
scaleTo(double x,
double y)
Scale the shape by the x, y multipliers
|
void |
scaleTo(float x,
float y)
Scale the shape by the x, y multipliers
|
protected void |
setAttribute(java.lang.String attribute,
java.lang.Float[] value,
boolean allowPostCreate) |
void |
setCanDrag(java.lang.Boolean canDrag)
Is this drawItem draggable? Note that dragging must be enabled for the dragPane in which this item is rendered via
canDrag for this to have an effect. |
void |
setCanHover(java.lang.Boolean canHover)
Will this DrawItem fire hover events when the user hovers over it?
|
void |
setContextMenu(Menu contextMenu)
Context menu to show for this object, an instance of the Menu widget.
|
void |
setCursor(Cursor cursor)
If set, specifies the cursor to display when the mouse pointer is over this DrawItem.
|
static void |
setDefaultProperties(DrawItem drawItemProperties)
Class level method to set the default properties of this class.
|
void |
setDragStartDistance(int dragStartDistance)
Number of pixels the cursor needs to move before the EventHandler starts a drag operation.
|
void |
setDrawGroup(DrawGroup drawGroup)
DrawGroup this drawItem is a member of. |
void |
setDrawPane(DrawPane drawPane)
DrawPane this drawItem should draw in. |
void |
setEndArrow(ArrowStyle endArrow)
Style of arrowhead to draw at the end of the line or path.
|
void |
setFillColor(java.lang.String fillColor)
Fill color to use for shapes.
|
void |
setFillGradient(Gradient fillGradient)
Fill gradient to use for shapes.
|
void |
setFillOpacity(float fillOpacity)
Opacity of the fillColor, as a number between 0 (transparent) and 1 (opaque).
|
void |
setJavaScriptObject(com.google.gwt.core.client.JavaScriptObject jsObj) |
void |
setKeepInParentRect(java.lang.Boolean keepInParentRect)
Constrains drag-resizing and drag-repositioning of this draw item to either the current visible area of the
draw pane or an arbitrary bounding box (if set to an array of the form
[left, top, left + width, top + height] ). |
void |
setKeepInParentRect(java.lang.Float... keepInParentRect)
Constrains drag-resizing and drag-repositioning of this draw item to either the current visible area of the
draw pane or an arbitrary bounding box (if set to an array of the form
[left, top, left + width, top + height] ). |
void |
setKnobs(KnobType... knobs)
Array of control knobs to display for this item.
|
void |
setLineCap(LineCap lineCap)
Style of drawing the endpoints of a line.
|
void |
setLineColor(java.lang.String lineColor)
Line color
If this method is called after the component has been drawn/initialized: Update lineColor for this drawItem. |
void |
setLineOpacity(float lineOpacity)
Opacity for lines, as a number between 0 (transparent) and 1 (opaque).
|
void |
setLinePattern(LinePattern linePattern)
Pattern for lines, eg "solid" or "dash"
If this method is called after the component has been drawn/initialized: Update linePattern for this drawItem. |
void |
setLineWidth(int lineWidth)
Pixel width for lines.
|
void |
setMoveKnobOffset(int[] offset)
Array holds 2 values representing the x and y offset from moveKnobPoint.
|
void |
setMoveKnobPoint(java.lang.String moveKnobPoint)
If this item is showing a
"move" control
knob , this attribute
specifies where the knob should appear with respect to the drawItem. |
void |
setPrompt(java.lang.String prompt)
Default
hover HTML that is displayed in the global
hover canvas if the user hovers over this DrawItem and showHover is true. |
void |
setResizeKnobPoints(java.lang.String[] resizeKnobPoints)
If this item is showing
"resize" control
knobs , this attribute
specifies which sides / edges should show knobs. |
void |
setRotation(float rotation)
Rotation in degrees.
|
void |
setScale(int[] scale)
Array holds 2 values representing scaling along x and y dimensions.
|
void |
setShadow(Shadow shadow)
Shadow used for all DrawItem subtypes.
|
void |
setShowHover(boolean showHover)
If
canHover is true, should we show the global hover
canvas by default when the user hovers over this DrawItem? |
void |
setStartArrow(ArrowStyle startArrow)
Style of arrowhead to draw at the beginning of the line or path.
|
void |
show()
Make this drawItem visible.
|
void |
showKnobs(KnobType... knobType)
Shows a set of control knobs for this drawItem.
|
asSGWTComponent, 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, internalSetID, internalSetID, isCreated, onBind, onInit, registerID, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setID, setProperty, setProperty, setProperty, setProperty, setScClassName
public DrawItem()
public DrawItem(com.google.gwt.core.client.JavaScriptObject jsObj)
public static DrawItem getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)
public void setJavaScriptObject(com.google.gwt.core.client.JavaScriptObject jsObj)
public com.google.gwt.core.client.JavaScriptObject create()
public void setCanDrag(java.lang.Boolean canDrag)
canDrag
for this to have an effect.
Note : This is an advanced setting
canDrag
- canDrag Default value is falsepublic java.lang.Boolean getCanDrag()
canDrag
for this to have an effect.public void setCanHover(java.lang.Boolean canHover)
canHover
- canHover Default value is nullsetShowHover(boolean)
public java.lang.Boolean getCanHover()
getShowHover()
public void setContextMenu(Menu contextMenu)
Note: if Canvas.destroy
is called on a canvas, any specified context menu is not
automatically destroyed as well. This is in contrast to MenuButton
s which
automatically destroy their specified menu
by default. The
behavior is intentional as context menus are commonly reused across components.
contextMenu
- contextMenu Default value is nullShowContextMenuEvent
,
Cues overview and related methods
,
Context menus Examplepublic Menu getContextMenu()
Note: if Canvas.destroy
is called on a canvas, any specified context menu is not
automatically destroyed as well. This is in contrast to MenuButton
s which
automatically destroy their specified menu
by default. The
behavior is intentional as context menus are commonly reused across components.
ShowContextMenuEvent
,
Cues overview and related methods
,
Context menus Examplepublic void setCursor(Cursor cursor)
Note : This is an advanced setting
cursor
- cursor Default value is nullpublic Cursor getCursor()
public java.lang.Boolean getDestroyed() throws java.lang.IllegalStateException
destroyed
.
Note : This method should be called only after the underlying component has been created.
java.lang.IllegalStateException
- if the underlying component has not yet been created.public java.lang.Boolean getDestroying() throws java.lang.IllegalStateException
destroying
.
Note : This method should be called only after the underlying component has been created.
java.lang.IllegalStateException
- if the underlying component has not yet been created.public void setDragStartDistance(int dragStartDistance)
Note : This is an advanced setting
dragStartDistance
- dragStartDistance Default value is 5Dragdrop overview and related methods
public int getDragStartDistance()
Dragdrop overview and related methods
public void setDrawGroup(DrawGroup drawGroup) throws java.lang.IllegalStateException
DrawGroup
this drawItem is a member of.drawGroup
- drawGroup Default value is nulljava.lang.IllegalStateException
- this property cannot be changed after the underlying component has been createdpublic DrawGroup getDrawGroup()
DrawGroup
this drawItem is a member of.public void setDrawPane(DrawPane drawPane) throws java.lang.IllegalStateException
DrawPane
this drawItem should draw in. If this item has a DrawGroup
, the drawGroup's drawPane is automatically used.
drawPane
- drawPane Default value is nulljava.lang.IllegalStateException
- this property cannot be changed after the underlying component has been createdpublic DrawPane getDrawPane()
DrawPane
this drawItem should draw in. If this item has a DrawGroup
, the drawGroup's drawPane is automatically used.
public void setEndArrow(ArrowStyle endArrow)
endArrow
- style of arrow to use. Default value is nullpublic ArrowStyle getEndArrow()
public void setFillColor(java.lang.String fillColor)
fillColor
- new fillColor to use. Pass null for transparent.. See CSSColor
. Default value is nullpublic java.lang.String getFillColor()
CSSColor
public void setFillOpacity(float fillOpacity)
fillOpacity
- new opacity, as a number between 0 (transparent) and 1 (opaque).. Default value is 1.0public float getFillOpacity()
public void setKeepInParentRect(java.lang.Boolean keepInParentRect)
draw pane
or an arbitrary bounding box (if set to an array of the form
[left, top, left + width, top + height]
). When using a bounding box-type argument the left/top values can
be negative, or the width/height values can be greater than the dimensions of the viewable area, to allow positioning or
resizing the draw item beyond the confines of the draw pane. Note: keepInParentRect affects only user drag interactions, not programmatic moves or resizes.
Note : This is an advanced setting
keepInParentRect
- keepInParentRect Default value is nullpublic java.lang.Boolean getKeepInParentRect()
draw pane
or an arbitrary bounding box (if set to an array of the form
[left, top, left + width, top + height]
). When using a bounding box-type argument the left/top values can
be negative, or the width/height values can be greater than the dimensions of the viewable area, to allow positioning or
resizing the draw item beyond the confines of the draw pane. Note: keepInParentRect affects only user drag interactions, not programmatic moves or resizes.
public void setKeepInParentRect(java.lang.Float... keepInParentRect)
draw pane
or an arbitrary bounding box (if set to an array of the form
[left, top, left + width, top + height]
). When using a bounding box-type argument the left/top values can
be negative, or the width/height values can be greater than the dimensions of the viewable area, to allow positioning or
resizing the draw item beyond the confines of the draw pane. Note: keepInParentRect affects only user drag interactions, not programmatic moves or resizes.
Note : This is an advanced setting
keepInParentRect
- keepInParentRect Default value is nullpublic void setKnobs(KnobType... knobs)
KnobType
specified in this will
turn on UI element(s) allowing the user to manipulate this drawItem. To update the set of knobs at runtime use DrawItem.showKnobs
and DrawItem.hideKnobs
. NOTE: Unless otherwise
documented, DrawItem types only support KnobType.RESIZE
and KnobType.MOVE
knobs.
knobs
- knobs Default value is nullpublic KnobType[] getKnobs()
KnobType
specified in this will
turn on UI element(s) allowing the user to manipulate this drawItem. To update the set of knobs at runtime use DrawItem.showKnobs
and DrawItem.hideKnobs
. NOTE: Unless otherwise
documented, DrawItem types only support KnobType.RESIZE
and KnobType.MOVE
knobs.
public void setLineCap(LineCap lineCap)
Note that for dashed and dotted lines, the lineCap style affects each dash
or dot.
If this method is called after the component has been drawn/initialized:
Update lineCap for this drawItem.
lineCap
- new lineCap to use. Default value is "round"public LineCap getLineCap()
Note that for dashed and dotted lines, the lineCap style affects each dash or dot.
public void setLineColor(java.lang.String lineColor)
lineColor
- new line color. Pass null for transparent.. See CSSColor
. Default value is "#808080"public java.lang.String getLineColor()
CSSColor
public void setLineOpacity(float lineOpacity)
lineOpacity
- new opacity, as a number between 0 (transparent) and 1 (opaque).. Default value is 1.0public float getLineOpacity()
public void setLinePattern(LinePattern linePattern)
linePattern
- new linePattern to use. Default value is "solid"public LinePattern getLinePattern()
public void setLineWidth(int lineWidth)
lineWidth
- new pixel lineWidth. Default value is 3public int getLineWidth()
public void setMoveKnobPoint(java.lang.String moveKnobPoint)
"move"
control
knob
, this attribute
specifies where the knob should appear with respect to the drawItem. Valid options are:
"TL"
Top Left corner"TR"
Top Right corner"BL"
Bottom Left corner"BR"
Bottom Right corner
moveKnobPoint
- . See String
. Default value is "TL"public java.lang.String getMoveKnobPoint()
"move"
control
knob
, this attribute
specifies where the knob should appear with respect to the drawItem. Valid options are:
"TL"
Top Left corner"TR"
Top Right corner"BL"
Bottom Left corner"BR"
Bottom Right corner
String
public void setPrompt(java.lang.String prompt)
hover HTML
that is displayed in the global
hover canvas if the user hovers over this DrawItem and showHover
is true.prompt
- . See HTMLString
. Default value is nullpublic java.lang.String getPrompt()
hover HTML
that is displayed in the global
hover canvas if the user hovers over this DrawItem and showHover
is true.HTMLString
public void setRotation(float rotation) throws java.lang.IllegalStateException
rotation
- rotation Default value is 0.0java.lang.IllegalStateException
- this property cannot be changed after the underlying component has been createdpublic float getRotation()
public void setShadow(Shadow shadow)
shadow
- new shadow. Default value is nullpublic Shadow getShadow()
public void setShowHover(boolean showHover)
canHover
is true, should we show the global hover
canvas by default when the user hovers over this DrawItem?showHover
- showHover Default value is truegetHoverHTML()
public boolean getShowHover()
canHover
is true, should we show the global hover
canvas by default when the user hovers over this DrawItem?getHoverHTML()
public void setStartArrow(ArrowStyle startArrow)
startArrow
- style of arrow to use. Default value is nullpublic ArrowStyle getStartArrow()
public com.google.gwt.event.shared.HandlerRegistration addClickHandler(ClickHandler handler)
Executed when the left mouse is clicked (pressed and then released) on this widget. No default implementation.
addClickHandler
in interface HasClickHandlers
handler
- the click handlerHandlerRegistration
used to remove this handlerpublic float computeAngle(int px1, int py1, int px2, int py2)
px1
- py1
- px2
- py2
- public double computeAngleAsDouble(int px1, int py1, int px2, int py2)
px1
- py1
- px2
- py2
- public void dragResizeMove(java.lang.String position, java.lang.Integer x, java.lang.Integer y, java.lang.Integer dX, java.lang.Integer dY)
canDrag
and canDrag
are both true and the control knobs
include "resize" knobs, then this notification
method will be fired when the user drag-resizes the draw item.position
- provides which knob of the resizeKnobPoints
was
draggedx
- new x-coordinate of the knoby
- new y-coordinate of the knobdX
- horizontal distance moveddY
- vertical distance movedpublic void draw()
DrawPane
.public void erase()
To re-draw the
item within the DrawPane, call DrawItem.draw
again, or use
DrawPane.addDrawItem
to move to another DrawGroup.
public java.lang.String getHoverHTML()
showHover
is true, when the user holds the mouse
over this DrawItem for long enough to trigger a hover event, a hover canvas is shown by default. This method returns the
contents of that hover canvas. Default implementation returns prompt
- override for custom hover HTML. Note that returning
null
or an empty string will suppress the hover canvas altogether.public int getPageLeft()
Positioning overview and related methods
public int getPageTop()
Positioning overview and related methods
public void getSvgString()
NOTE: The generated SVG source assumes that the
default namespace is http://www.w3.org/2000/svg
and that namespace prefix xlink
refers to
namespace name http://www.w3.org/1999/xlink
.
public void hide()
public boolean hover()
canHover
is true for this DrawItem, the hover()
string method will be fired when the user hovers over this DrawItem. If this method returns false, it will suppress the
default behavior of showing a hover canvas if showHover
is true.public java.lang.Boolean isInBounds(int x, int y)
x
- y
- public java.lang.Boolean isPointInPath(int x, int y)
x
- y
- public com.google.gwt.event.shared.HandlerRegistration addMouseDownHandler(MouseDownHandler handler)
Executed when the left mouse down is pressed on this widget. No default implementation.
addMouseDownHandler
in interface HasMouseDownHandlers
handler
- the mouseDown handlerHandlerRegistration
used to remove this handlerpublic com.google.gwt.event.shared.HandlerRegistration addMouseMoveHandler(MouseMoveHandler handler)
Executed when the mouse moves within this widget. No default implementation.
addMouseMoveHandler
in interface HasMouseMoveHandlers
handler
- the mouseMove handlerHandlerRegistration
used to remove this handlerpublic com.google.gwt.event.shared.HandlerRegistration addMouseOutHandler(MouseOutHandler handler)
Executed when the mouse leaves this widget. No default implementation.
addMouseOutHandler
in interface HasMouseOutHandlers
handler
- the mouseOut handlerHandlerRegistration
used to remove this handlerpublic com.google.gwt.event.shared.HandlerRegistration addMouseOverHandler(MouseOverHandler handler)
Executed when mouse enters this widget. No default implementation.
addMouseOverHandler
in interface HasMouseOverHandlers
handler
- the mouseOver handlerHandlerRegistration
used to remove this handlerpublic com.google.gwt.event.shared.HandlerRegistration addMouseUpHandler(MouseUpHandler handler)
Executed when the left mouse is released on this widget. No default implementation.
addMouseUpHandler
in interface HasMouseUpHandlers
handler
- the mouseUp handlerHandlerRegistration
used to remove this handlerpublic void moveBy(int dX, int dY)
dX
- change to left coordinate in pixelsdY
- change to top coordinate in pixelspublic com.google.gwt.event.shared.HandlerRegistration addMovedHandler(MovedHandler handler)
Notification method fired when this component is explicitly moved. Note that a component's position on the screen may also changed due to an ancestor being moved. The parentMoved method provides a notification entry point to catch that case as well.
addMovedHandler
in interface HasMovedHandlers
handler
- the moved handlerHandlerRegistration
used to remove this handlerpublic com.google.gwt.event.shared.HandlerRegistration addDragMoveHandler(DragMoveHandler handler)
If canDrag
is true and canDrag
is true, this notification method will be fired when
the user drags the drawItem
addDragMoveHandler
in interface HasDragMoveHandlers
handler
- the dragMove handlerHandlerRegistration
used to remove this handlerpublic com.google.gwt.event.shared.HandlerRegistration addDragResizeMoveHandler(DragResizeMoveHandler handler)
If canDrag
and canDrag
are both true and the control knobs
include "resize" knobs, then this notification
method will be fired when the user drags the resize knobs of the draw item.
addDragResizeMoveHandler
in interface HasDragResizeMoveHandlers
handler
- the dragResizeMove handlerHandlerRegistration
used to remove this handlerpublic com.google.gwt.event.shared.HandlerRegistration addDragStartHandler(DragStartHandler handler)
If canDrag
is true and canDrag
is true, this notification method will be fired when
the user starts to drag the drawItem
addDragStartHandler
in interface HasDragStartHandlers
handler
- the dragStart handlerHandlerRegistration
used to remove this handlerpublic com.google.gwt.event.shared.HandlerRegistration addDragStopHandler(DragStopHandler handler)
If canDrag
is true and canDrag
is true, this notification method will be fired when
the user completes a drag on the drawItem
addDragStopHandler
in interface HasDragStopHandlers
handler
- the dragStop handlerHandlerRegistration
used to remove this handlerpublic void resizeBy(int dX, int dY)
dX
- change to left coordinate in pixelsdY
- change to top coordinate in pixelspublic com.google.gwt.event.shared.HandlerRegistration addResizedHandler(ResizedHandler handler)
Observable method called whenever a DrawItem changes size.
addResizedHandler
in interface HasResizedHandlers
handler
- the resized handlerHandlerRegistration
used to remove this handlerpublic void resizeTo(int width, int height)
width
- new widthheight
- new heightpublic void rotateBy(float degrees)
degrees
- number of degrees to rotate from current orientation.public void rotateBy(double degrees)
degrees
- number of degrees to rotate from current orientation.public void rotateTo(float degrees)
degrees
- number of degrees to rotatepublic void rotateTo(double degrees)
degrees
- number of degrees to rotatepublic void scaleBy(float x, float y)
x
- scale in the x directiony
- scale in the y directionpublic void scaleBy(double x, double y)
x
- scale in the x directiony
- scale in the y directionpublic void scaleTo(float x, float y)
x
- scale in the x directiony
- scale in the y directionpublic void scaleTo(double x, double y)
x
- scale in the x directiony
- scale in the y directionpublic void show()
public com.google.gwt.event.shared.HandlerRegistration addShowContextMenuHandler(ShowContextMenuHandler handler)
Executed when the right mouse button is clicked. The default implementation of this method auto-creates a Menu
from the contextMenu
property on this component and then calls Menu.showContextMenu
on it to show it.
If you want to show a standard context menu, you can simply define your Menu and set it as the contextMenu property on your component - you do not need to override this method.
If you want to do some other processing before showing a menu or do something else entirely, then you should override this method. Note that the return value from this method controls whether or not the native browser context menu is shown.
addShowContextMenuHandler
in interface HasShowContextMenuHandlers
handler
- the showContextMenu handlerHandlerRegistration
used to remove this handlerpublic static void setDefaultProperties(DrawItem drawItemProperties)
Note: This method is intended for setting default attributes only and will effect 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.
drawItemProperties
- properties that should be used as new defaults when instances of this class are createdpublic static DrawItem getRef(com.google.gwt.core.client.JavaScriptObject jsObj)
public int[] getCenter()
public int[] getBoundingBox()
protected int[] getAttributeAsIntArray(java.lang.String property)
public void hideKnobs(KnobType... knobType)
knobs
to remove the specified knobType, and clears any drawn knobs for this knobType.knobType
- knobs to hidepublic void showKnobs(KnobType... knobType)
knobs
to include the specified knobType, and if necessary draws out the appropriate control knobs.knobType
- knobs to showpublic void setResizeKnobPoints(java.lang.String[] resizeKnobPoints)
"resize"
control
knobs
, this attribute
specifies which sides / edges should show knobs. May include any of the following values:
"TL"
Top Left corner"TR"
Top Right corner"BL"
Bottom Left corner"BR"
Bottom Right corner
resizeKnobPoints
- resizeKnobPoints Default value is ["TL","TR","BL","BR"]public java.lang.String[] getResizeKnobPoints()
"resize"
control
knobs
, this attribute
specifies which sides / edges should show knobs. May include any of the following values:
"TL"
Top Left corner"TR"
Top Right corner"BL"
Bottom Left corner"BR"
Bottom Right corner
public void setScale(int[] scale) throws java.lang.IllegalStateException
scale
- scale Default value is nulljava.lang.IllegalStateException
- this property cannot be changed after the underlying component has been createdpublic int[] getScale()
public void setMoveKnobOffset(int[] offset) throws java.lang.IllegalStateException
scale
- scale Default value is nulljava.lang.IllegalStateException
- this property cannot be changed after the underlying component has been createdpublic int[] getMoveKnobOffset()
public void setFillGradient(Gradient fillGradient)
drawPane.createSimpleGradient
, drawPane.createRadialGradient
or drawPane.createLinearGradient
. Otherwise it expects
one of SimpleGradient
, LinearGradient
or RadialGradient
.
fillGradient
- new gradient to use. Pass null for transparent.. Default value is nullGradient
public Gradient getFillGradient()
drawPane.createSimpleGradient
, drawPane.createRadialGradient
or drawPane.createLinearGradient
. Otherwise it expects
one of SimpleGradient
, LinearGradient
or RadialGradient
.Gradient
protected void setAttribute(java.lang.String attribute, java.lang.Float[] value, boolean allowPostCreate)