| Package | com.yworks.graph.drawing |
| Class | public class AbstractStyleRenderer |
| Implements | IBoundsProvider, IHitTestable, ILookup, IMarqueeTestable, IPaintable, IStyleRenderer, IVisibilityTest |
| Subclasses | AbstractEdgeStyleRenderer, AbstractLabelStyleRenderer, AbstractNodeStyleRenderer, IconLabelStyleRenderer, SimplePortStyleRenderer |
IStyleRenderer
that can be used to install an IModelItem with
a corresponding IVisualStyle and a concrete
style implementation.
| Property | Defined by | ||
|---|---|---|---|
| item : IModelItem
[read-only]
Gets the currently configured item.
| AbstractStyleRenderer | ||
| style : IVisualStyle
[read-only]
Gets the currently configured style.
| AbstractStyleRenderer | ||
| styleDescriptor : ICanvasObjectDescriptor
[read-only]
Gets the ICanvasObjectDescriptor to use for new installations.
| AbstractStyleRenderer | ||
| Method | Defined by | ||
|---|---|---|---|
|
Returns a tight rectangular area where the whole rendering
would fit into.
| AbstractStyleRenderer | ||
|
Configures the
style and item parameters,
calls configure and returns this. | AbstractStyleRenderer | ||
|
Configures the
style and item parameters,
does not call configure and returns this. | AbstractStyleRenderer | ||
|
Configures the
style and item parameters,
calls configure and returns this. | AbstractStyleRenderer | ||
|
Configures the
style and item parameters,
calls configure and returns this. | AbstractStyleRenderer | ||
|
Configures the
style and item parameters,
calls configure and returns this. | AbstractStyleRenderer | ||
|
Installs the model in the canvas at the given group using the
styleDescriptor. | AbstractStyleRenderer | ||
|
isHit(x:Number, y:Number, ctx:ICanvasContext):Boolean
Hit tests the item by trying to apply the flash internal hit testing.
| AbstractStyleRenderer | ||
|
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. | AbstractStyleRenderer | ||
|
Calls
configure and tests the item using the style
for a visible intersection with the clip bounds. | AbstractStyleRenderer | ||
|
lookup(type:Class):Object
Implements the
ILookup interface. | AbstractStyleRenderer | ||
|
Performs the actual painting into the given graphics context.
| AbstractStyleRenderer | ||
| Method | Defined by | ||
|---|---|---|---|
|
configure():void
Prepares this instance for subsequent calls after the
style and item have been initialized.
| AbstractStyleRenderer | ||
|
Factory method for the StyleDescriptor property.
| AbstractStyleRenderer | ||
|
setItem(item:IModelItem):void
Called by the various descriptor getters to initialize the item.
| AbstractStyleRenderer | ||
|
setStyle(style:IVisualStyle):void
Called by the various descriptor getters to initialize the style.
| AbstractStyleRenderer | ||
| item | property |
item:IModelItem [read-only]Gets the currently configured item.
Implementation public function get item():IModelItem
| style | property |
style:IVisualStyle [read-only]Gets the currently configured style.
Implementation public function get style():IVisualStyle
| styleDescriptor | property |
styleDescriptor:ICanvasObjectDescriptor [read-only]
Gets the ICanvasObjectDescriptor to use for new installations.
If the field has not yet been initialized upon first access, the
factory method createStyleDescriptor will be called.
public function get styleDescriptor():ICanvasObjectDescriptor
| calculateBounds | () | method |
public function calculateBounds(scratch:IMutableRectangle, ctx:ICanvasContext):IRectangleReturns 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.
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)
|
IRectangle —
The bounds or null to indicate an unbound area
|
| configure | () | method |
protected function configure():voidPrepares this instance for subsequent calls after the style and item have been initialized.
Upon invocation the style and item fields have
been populated by the getPaintable or getBoundsProvider
methods.
| createStyleDescriptor | () | method |
protected function createStyleDescriptor():ICanvasObjectDescriptor
Factory method for the StyleDescriptor property. This method will be called
upon first access to the styleDescriptor property.
ICanvasObjectDescriptor —
An ICanvasObjectDescriptor instance that will delegate to this
instance's methods
|
| getBoundsProvider | () | method |
public function getBoundsProvider(item:IModelItem, style:IVisualStyle):IBoundsProvider
Configures the style and item parameters,
calls configure and returns this.
item:IModelItem — The item to retrieve the bounds provider for. The value will
be stored in the item field by setItem
|
|
style:IVisualStyle — The style to associate with the item. The value will
be stored in the style field by setStyle.
|
IBoundsProvider —
this
|
| getContext | () | method |
public function getContext(item:IModelItem, style:IVisualStyle):ILookup
Configures the style and item parameters,
does not call configure and returns this.
As this method may be called often it will not automatically call configure,
instead subclasses should ensure that in the lookup method call they should
call configure only if needed, i.e. if they decide to return this or
an instance that depends on a correctly configured this.
item:IModelItem — The item to query the context for. The value will
be stored in the item field by setItem.
|
|
style:IVisualStyle — The style to associate with the item. The value will
be stored in the style field by setStyle.
|
ILookup —
this
|
| getHitTestable | () | method |
public function getHitTestable(item:IModelItem, style:IVisualStyle):IHitTestable
Configures the style and item parameters,
calls configure and returns this.
item:IModelItem — The item to query hit test with. The value will
be stored in the item field by setItem.
|
|
style:IVisualStyle — The style to associate with the item. The value will
be stored in the style field by setStyle.
|
IHitTestable —
this
|
| getMarqueeTestable | () | method |
public function getMarqueeTestable(item:IModelItem, style:IVisualStyle):IMarqueeTestable
Configures the style and item parameters,
calls configure and returns this.
item:IModelItem — The item to query for marquee intersection tests. The value will
be stored in the item field by setItem.
|
|
style:IVisualStyle — The style to associate with the item. The value will
be stored in the style field by setStyle.
|
IMarqueeTestable —
this
|
| getPaintable | () | method |
public function getPaintable(item:IModelItem, style:IVisualStyle):IPaintable
Configures the style and item parameters,
calls configure and returns this.
item:IModelItem — The item to retrieve the paintable for. The value will
be stored in the item field by setItem.
|
|
style:IVisualStyle — The style to associate with the item. The value will
be stored in the style field by setStyle.
|
IPaintable —
this
|
| install | () | method |
public function install(canvas:CanvasComponent, group:ICanvasObjectGroup, modelItem:IModelItem):Array
Installs the model in the canvas at the given group using the styleDescriptor.
canvas:CanvasComponent |
|
group:ICanvasObjectGroup |
|
modelItem:IModelItem |
Array |
| isHit | () | method |
public function isHit(x:Number, y:Number, ctx:ICanvasContext):BooleanHit tests the item by trying to apply the flash internal hit testing.
This implementation does not take ICanvasContext.hitTestRadius into account.
Parametersx:Number |
|
y:Number |
|
ctx:ICanvasContext |
Boolean |
| isInBox | () | method |
public function isInBox(box:IRectangle, ctx:ICanvasContext):Boolean
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.
box:IRectangle — The box describing the marquee's bounds
|
|
ctx:ICanvasContext — The current canvas context
|
Boolean — true if the item is considered to be captured by the marquee
|
| isVisible | () | method |
public function isVisible(clip:IRectangle, ctx:ICanvasContext):Boolean
Calls configure and tests the item using the style
for a visible intersection with the clip bounds.
This simple implementation uses calculateBounds to determine the visibility.
Subclasses may choose to override this behavior for improved performance
but need to make sure to call configure
if they depend on a configured instance.
clip:IRectangle — The clip bounds
|
|
ctx:ICanvasContext — The current canvas context
|
Boolean — true if teh item may be painted within the clip bounds.
|
| lookup | () | method |
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.
type:Class — The type to query for
|
Object — An implementation of the given type or null
|
| paint | () | method |
public function paint(g:YGraphics, ctx:IPaintContext):voidPerforms the actual painting into the given graphics context.
Parametersg:YGraphics — The graphics context to paint into
|
|
ctx:IPaintContext — Currently not used
|
| setItem | () | method |
protected function setItem(item:IModelItem):voidCalled by the various descriptor getters to initialize the item.
Sets the item field to the given argument.
item:IModelItem — The item to use for the subsequent calls
|
| setStyle | () | method |
protected function setStyle(style:IVisualStyle):voidCalled by the various descriptor getters to initialize the style.
Sets the style field to the given argument.
style:IVisualStyle — The style to use for the subsequent calls
|