Packagecom.yworks.graph.drawing
Classpublic class ImageNodeStyleRenderer
InheritanceImageNodeStyleRenderer Inheritance AbstractNodeStyleRenderer Inheritance AbstractStyleRenderer Inheritance Object

A style renderer implementation that can be used together with ImageNodeStyle instances.

See also

com.yworks.graph.drawing.ImageNodeStyle


Public Properties
 PropertyDefined By
 Inheriteditem : IModelItem
[read-only] Gets the currently configured item.
AbstractStyleRenderer
 Inheritedlayout : IRectangle
[read-only] Returns the INode.layout of the node this renderer is currently configured for.
AbstractNodeStyleRenderer
 Inheritedstyle : IVisualStyle
[read-only] Gets the currently configured style.
AbstractStyleRenderer
 InheritedstyleDescriptor : ICanvasObjectDescriptor
[read-only] Gets the ICanvasObjectDescriptor to use for new installations.
AbstractStyleRenderer
Public Methods
 MethodDefined By
  
[override] Returns a tight rectangular area where the whole rendering would fit into.
ImageNodeStyleRenderer
  
[override] Creates a new DisplayObject from scratch.
ImageNodeStyleRenderer
 Inherited
Configures the style and item parameters, calls configure and returns this.
AbstractStyleRenderer
 Inherited
Configures the style and item parameters, does not call configure and returns this.
AbstractStyleRenderer
 Inherited
Configures the style and item parameters, calls configure and returns this.
AbstractStyleRenderer
 Inherited
Configures the style and item parameters, calls configure and returns this.
AbstractStyleRenderer
 Inherited
getIntersection(innerX:Number, innerY:Number, outerX:Number, outerY:Number, intersectionPoint:IPointSetter):Boolean
Finds an intersection for the current item using the style.
AbstractNodeStyleRenderer
 Inherited
Configures the style and item parameters, calls configure and returns this.
AbstractStyleRenderer
 Inherited
Returns the outline of the shape using the node's layout.
AbstractNodeStyleRenderer
 Inherited
Configures the style and item parameters, calls configure and returns this.
AbstractNodeStyleRenderer
  
install(canvas:CanvasComponent, group:ICanvasObjectGroup, modelItem:IModelItem):Array
[override] Installs the model in the canvas at the given group using the styleDescriptor.
ImageNodeStyleRenderer
 Inherited
isHit(x:Number, y:Number, ctx:ICanvasContext):Boolean
[override] Hit tests the item by trying to apply the flash internal hit testing.
AbstractNodeStyleRenderer
 Inherited
[override] Returns true if the corresponding item is considered to intersect the given rectangular box. This method may return false if the item cannot be selected using a selection marquee or optionally if the item is only partially contained within the box.
AbstractNodeStyleRenderer
 Inherited
isInside(x:Number, y:Number):Boolean
Checks whether the given coordinate lies within the shape's geometric bounds.
AbstractNodeStyleRenderer
 Inherited
Calls configure and tests the item using the style for a visible intersection with the clip bounds.
AbstractStyleRenderer
  
lookup(type:Class):Object
[override] Implements the ILookup interface.
ImageNodeStyleRenderer
  
updateDisplayObject(oldDisplayObject:DisplayObject, context:IDisplayObjectContext):DisplayObject
[override] Updates the given DisplayObject or creates a new one.
ImageNodeStyleRenderer
Protected Methods
 MethodDefined By
 Inherited
configure():void
[override] This is an empty implementation of the AbstractStyleRenderer.configure method.
AbstractNodeStyleRenderer
  
Creates an Object which reflects the current state of the style and the model item.
ImageNodeStyleRenderer
 Inherited
[override] Factory method for the StyleDescriptor property.
AbstractNodeStyleRenderer
  
getImageBounds(image:DisplayObject):Rectangle
Returns the bounds of the image DisplayObject This implementation uses image.getBounds(image)
ImageNodeStyleRenderer
 Inherited
setItem(item:IModelItem):void
Called by the various descriptor getters to initialize the item.
AbstractStyleRenderer
 Inherited
Called by the various descriptor getters to initialize the style.
AbstractStyleRenderer
  
shouldRepaint(oldCache:Object):Boolean
Whether the current display object should be repainted.
ImageNodeStyleRenderer
  
updateRenderDataCache(renderDataCache:Object):Object
Updates the given object with the current state of the style and the node.
ImageNodeStyleRenderer
Method Detail
calculateBounds()method
override public function calculateBounds(scratch:IMutableRectangle, ctx:ICanvasContext):IRectangle

Returns a tight rectangular area where the whole rendering would fit into.

Implementations can use the scratch rectangle to put their results in and return it as the result of the operation. Client has to always provide a non-null instance as a parameter. They may however decide to return an internally cached or dynamically created IRectangle implementation and disregard the scratch parameter. If calculating the bounds is too expensive or the painting is not bound to a certain area, this method may return null. If nothing is painted, this method should return an empty rectangle, where either or both the width and height is non-positive or ImmutableRectangle.Empty.

Parameters

scratch:IMutableRectangle — An instance that can optionally be used to fill with the corresponding values and be returned
 
ctx:ICanvasContext — The context to calculate the bounds for (currently not used)

Returns
IRectangle — The bounds or null to indicate an unbound area
createDisplayObject()method 
override public function createDisplayObject(context:IDisplayObjectContext):DisplayObject

Creates a new DisplayObject from scratch.

Parameters

context:IDisplayObjectContext — The context for which the display object is created.

Returns
DisplayObject — A DisplayObject.
createRenderDataCache()method 
protected function createRenderDataCache():Object

Creates an Object which reflects the current state of the style and the model item.

Returns
Object — An Object which reflects the current state of the style and the model item.
getImageBounds()method 
protected function getImageBounds(image:DisplayObject):Rectangle

Returns the bounds of the image DisplayObject

This implementation uses image.getBounds(image)

Parameters

image:DisplayObject

Returns
Rectangle
install()method 
override public function install(canvas:CanvasComponent, group:ICanvasObjectGroup, modelItem:IModelItem):Array

Installs the model in the canvas at the given group using the styleDescriptor.

Parameters

canvas:CanvasComponent
 
group:ICanvasObjectGroup
 
modelItem:IModelItem

Returns
Array
lookup()method 
override public function lookup(type:Class):Object

Implements the ILookup interface.

This method will be used by default if getContext has been queried for a lookup implementation. Note that it cannot be assumed that configure has already been invoked. However, normally item and style will be correctly configured if invoked directly after getContext. Subclass implementations should make sure to configure this instance before they return this as a result of a successful lookup.

Parameters

type:Class — The type to query for

Returns
Object — An implementation of the given type or null
shouldRepaint()method 
protected function shouldRepaint(oldCache:Object):Boolean

Whether the current display object should be repainted.

Parameters

oldCache:Object — An object which reflects the state of the style and node when the object was repainted the last time.

Returns
Booleantrue if a repaint is necessary.
updateDisplayObject()method 
override public function updateDisplayObject(oldDisplayObject:DisplayObject, context:IDisplayObjectContext):DisplayObject

Updates the given DisplayObject or creates a new one.

Implementors can decide whether they update the given display object or create a new one. Updating can mean re-rendering or updating size and/or coordinates.

Parameters

oldDisplayObject:DisplayObject — The display object to update.
 
context:IDisplayObjectContext — The context for which the display object should be updated.

Returns
DisplayObject — The updated display object or a completely new display object.
updateRenderDataCache()method 
protected function updateRenderDataCache(renderDataCache:Object):Object

Updates the given object with the current state of the style and the node.

Parameters

renderDataCache:Object — The object to update.

Returns
Object — An object with the current state of the style and the node.