public class ContainerNode extends DiagramNode implements InplaceEditable
allowIncomingLinks, allowOutgoingLinks, anchorPattern, AV_Cancel, AV_EndModIncoming, AV_EndModOutgoing, AV_StartModIncoming, AV_StartModOutgoing, AV_UpdateIncoming, AV_UpdateOutgoing, AV_UpdIntscIncoming, AV_UpdIntscOutgoing, AV_UpdPosIncoming, AV_UpdPosOutgoing, bounds, enabledHandles, handlesStyle, incomingLinks, masterGroup, obstacle, outgoingLinks, savedBounds
brush, cycleDetected, cycleProtect, modifyDX, modifyDY, modifyHandle, modifying, pen, ptEnd, ptMdfLast, ptOrg, ptSavedEnd, ptSavedOrg, subordinateGroup
Constructor and Description |
---|
ContainerNode()
Initializes a new instance of the ContainerNode class.
|
ContainerNode(ContainerNode prototype)
Initializes a new instance of the ContainerNode class using
the specified node as a prototype.
|
ContainerNode(Diagram parent)
Initializes a new instance of the ContainerNode class with
the default values of the specified diagram.
|
Modifier and Type | Method and Description |
---|---|
void |
add(DiagramNode node)
Adds a node to this container.
|
boolean |
containsRecursively(DiagramNode node)
Determines whether this container contains the specified node,
either directly or recursively through other containers.
|
protected DiagramItemProperties |
createProperties()
DiagramItem.createProperties() override. |
void |
drawLocal(android.graphics.Canvas graphics,
RenderOptions options)
Draws the container on the specified Graphics2D surface.
|
boolean |
getAllowAddChildren()
Gets a value indicating whether child nodes can be added interactively to this container.
|
boolean |
getAllowRemoveChildren()
Gets a value indicating whether child nodes can be removed interactively from this container.
|
boolean |
getAutoShrink()
Gets a value indicating whether the container should
shrink in size when nodes are removed from it.
|
java.lang.String |
getCaption()
Gets the container's caption text.
|
Brush |
getCaptionBackBrush()
Gets the brush used to paint the caption area of this container.
|
Brush |
getCaptionBrush()
Gets the brush used to draw the container's caption text.
|
TextFormat |
getCaptionFormat()
Gets the caption alignment and format.
|
float |
getCaptionHeight()
Gets the height of the container's caption area.
|
static ContainerNode |
getContainer(DiagramNode node)
Retrieves the container node (if any) the specified node belongs to.
|
float |
getCornerRadius()
Gets the radius of node's corner arcs when its Shape is set to RoundedRectangle.
|
android.graphics.RectF |
getEditRect(DiagramItem item,
android.graphics.PointF pointerPosition)
Implements InplaceEditable.getEditRect.
|
Brush |
getEffectiveCaptionBrush()
Creates a
Brush object representing the currently
effective caption brush of the container. |
boolean |
getFoldable()
Gets a value indicating whether the user is allowed
to fold this container.
|
boolean |
getFolded()
Gets a value indicating whether this container is folded.
|
Dimension |
getFoldedSize()
Gets the size of the container when folded.
|
Pen |
getHighlightPen()
Gets the
Pen used to draw the container frame lines
when an item is dragged over the container. |
float |
getMargin()
Gets how much space should be left between
contained nodes and the container borders.
|
Dimension |
getMinimumSize()
Gets the minimum size of the container.
|
SimpleShape |
getShape()
Gets the shape of this container.
|
java.lang.String |
getTextToEdit()
Implements InplaceEditable.getTextToEdit.
|
Dimension |
getUnfoldedSize()
Returns the original size of a folded container.
|
boolean |
getVisible()
Gets a value indicating whether the container is visible.
|
AdjustmentHandle |
hitTestHandle(android.graphics.PointF point)
|
com.mindfusion.diagramming.builders.ContainerNodeBuilder |
init()
Returns a ContainerNodeBuilder object used to configure this ContainerNode instance.
|
protected void |
loadFromXml(org.w3c.dom.Element xmlElement,
XmlPersistContext context)
Loads the item content from an XML element.
|
protected void |
onChildModified(DiagramNode node,
AdjustmentHandle handle)
Called when a group child node has been modified.
|
void |
onDragOut(DiagramItem item)
Invoked when a diagram item is being dragged out of this node.
|
boolean |
onDragOver(DiagramItem item)
Invoked when a diagram item is being dragged over this node.
|
boolean |
onDropOver(DiagramItem item)
Invoked when a diagram item is dropped over this node.
|
void |
readExternal(java.io.ObjectInput in)
Implements Externalizable.
|
void |
remove(DiagramNode node)
Removes a node from this container.
|
protected void |
restoreProperties(DiagramItemProperties props)
|
protected void |
saveProperties(DiagramItemProperties props)
|
protected void |
saveToXml(org.w3c.dom.Element xmlElement,
XmlPersistContext context)
Saves the item content into an XML element.
|
protected void |
scaleElements(float scale)
DiagramNode.scaleElements override.
|
void |
setAllowAddChildren(boolean value)
Sets a value indicating whether child nodes can be added interactively to this container.
|
void |
setAllowRemoveChildren(boolean value)
Sets a value indicating whether child nodes can be removed interactively from this container.
|
void |
setAutoShrink(boolean value)
Sets a value indicating whether the container should
shrink in size when nodes are removed from it.
|
void |
setCaption(java.lang.String value)
Sets the container's caption text.
|
void |
setCaptionBackBrush(Brush value)
Sets the brush used to paint the caption area of this container.
|
void |
setCaptionBrush(Brush value)
Sets the brush used to draw the container's caption text.
|
void |
setCaptionFormat(TextFormat value)
Sets the caption alignment and format.
|
void |
setCaptionHeight(float value)
Sets the height of the container's caption area.
|
void |
setCornerRadius(float value)
Sets the radius of node's corner arcs when its Shape is set to RoundedRectangle.
|
void |
setEditedText(java.lang.String newText)
Implements InplaceEditable.setEditedText.
|
void |
setFoldable(boolean value)
Sets a value indicating whether the user is allowed
to fold this container.
|
void |
setFolded(boolean value)
Sets a value indicating whether this container is folded.
|
void |
setFoldedSize(Dimension value)
Sets the size of the container when folded.
|
void |
setHighlightPen(Pen value)
Sets the
Pen used to draw the container frame lines
when an item is dragged over the container. |
void |
setMargin(float value)
Sets how much space should be left between
contained nodes and the container borders.
|
void |
setMinimumSize(Dimension value)
Sets the minimum size of the container.
|
void |
setShape(SimpleShape value)
Sets the shape of this container.
|
void |
setVisible(boolean value)
Sets a value indicating whether the container is visible.
|
void |
updateBounds()
Updates the container bounds to fit its contents.
|
void |
updateBounds(boolean includeLinks)
Updates the container bounds to fit its contents.
|
static com.mindfusion.diagramming.builders.ContainerNodeBuilder |
with()
Returns a ContainerNodeBuilder object used to configure and create new ContainerNode instances.
|
void |
writeExternal(java.io.ObjectOutput out)
Implements Externalizable.
|
allowCreate, allowModify, allowModifyImpl, attachTo, attachTo, attachTo, cancelModify, completeCreate, completeModify, constraintsInfringed, containsPoint, containsPoint, createConnectionPoint, createState, detach, draw, drawShadow, drawShadowLocal, getAllIncomingLinks, getAllLinks, getAllOutgoingLinks, getAllowIncomingLinks, getAllowOutgoingLinks, getAnchorPattern, getBounds, getCenter, getConstraints, getEffects, getEnabledHandles, getExpandable, getExpanded, getHandlesStyle, getIncomingLinks, getLocalBounds, getLocalBoundsD, getLocalCenter, getMasterGroup, getObstacle, getOutgoingLinks, getRepaintRect, getRotatedBounds, getRotationAngle, groupContains, move, moveTo, nodesIntersect, onModify, onRemove, onRotationAngleChanged, onUpdateBounds, parentConstraintsInfringed, putExpandable, rectFromPoints, resize, resizeToFitImage, restoreState, saveState, setAllowIncomingLinks, setAllowOutgoingLinks, setAnchorPattern, setBounds, setBounds, setBounds, setBoundsDirect, setConstraints, setEnabledHandles, setExpandable, setExpanded, setExpandedFlag, setHandlesStyle, setObstacle, setReflexive, setRotationAngle, shouldRenderAnchors, startCreate, startModify, updateCreate, updateLinkPositions, updateModify
clone, getBrush, getEffectiveBrush, getEffectiveFont, getEffectivePen, getEffectiveShadowBrush, getEffectiveTextBrush, getFont, getHyperLink, getId, getIgnoreLayout, getLayerIndex, getLayoutTraits, getLocked, getMeasureUnit, getParent, getPen, getPrintable, getRuntimeIndex, getSelected, getShadowBrush, getShadowOffsetX, getShadowOffsetY, getStyle, getSubordinateGroup, getTag, getTextBrush, getTextPadding, getToolTip, getValue, getWeight, getZIndex, hasSubordinates, onAdd, onChangeFont, onChangeTextPadding, onClick, onDoubleClick, onLoad, onMeasureUnitChanged, onStyleChanged, putSelected, query, repaint, repaint, repaint, setBrush, setDiagramDirty, setFont, setHyperLink, setId, setIgnoreLayout, setLayerIndex, setLocked, setPen, setPrintable, setSelected, setShadowBrush, setShadowOffsetX, setShadowOffsetY, setStyle, setTag, setTextBrush, setTextPadding, setToolTip, setWeight, setZIndex, shouldRender, zBottom, zLevelDown, zLevelUp, zTop
public ContainerNode()
public ContainerNode(Diagram parent)
public ContainerNode(ContainerNode prototype)
public static com.mindfusion.diagramming.builders.ContainerNodeBuilder with()
ContainerNodeBuilder
instance.public com.mindfusion.diagramming.builders.ContainerNodeBuilder init()
ContainerNodeBuilder
instance.public void add(DiagramNode node)
node
- The DiagramNode that should be added to the container.public void remove(DiagramNode node)
node
- The DiagramNode
that should be removed from the container.public void drawLocal(android.graphics.Canvas graphics, RenderOptions options)
drawLocal
in class DiagramNode
graphics
- A Graphics2D object where the node should be rendered.options
- Provides options for the drawing operation.protected void scaleElements(float scale)
scaleElements
in class DiagramNode
scale
- The value by which to multiply node elements' sizes.public AdjustmentHandle hitTestHandle(android.graphics.PointF point)
hitTestHandle
in class DiagramNode
point
- A PointF value specifying where to look for a selection handle.public boolean onDragOver(DiagramItem item)
onDragOver
in class DiagramNode
item
- The DiagramItem
being dragged.public void onDragOut(DiagramItem item)
onDragOut
in class DiagramNode
item
- The DiagramItem
being dragged.public boolean onDropOver(DiagramItem item)
onDropOver
in class DiagramNode
item
- The DiagramItem
being dragged.protected void onChildModified(DiagramNode node, AdjustmentHandle handle)
onChildModified
in class DiagramItem
node
- The DiagramNode
that has been moved or resized.handle
- An AdjustmentHandles
constant indicating
which handle has been used to modify the node.public void updateBounds()
public void updateBounds(boolean includeLinks)
public void writeExternal(java.io.ObjectOutput out) throws java.io.IOException
writeExternal
in interface java.io.Externalizable
writeExternal
in class DiagramNode
java.io.IOException
public void readExternal(java.io.ObjectInput in) throws java.io.IOException, java.lang.ClassNotFoundException
readExternal
in interface java.io.Externalizable
readExternal
in class DiagramNode
java.io.IOException
java.lang.ClassNotFoundException
protected void saveToXml(org.w3c.dom.Element xmlElement, XmlPersistContext context)
saveToXml
in class DiagramNode
xmlElement
- An Element the item's data should be stored into.context
- Provides contextual information about the serialization
process and some helper serialization methods.protected void loadFromXml(org.w3c.dom.Element xmlElement, XmlPersistContext context) throws javax.xml.transform.TransformerException, XmlException
loadFromXml
in class DiagramNode
xmlElement
- An Element containing the item's data.context
- Provides contextual information about the serialization
process and some helper serialization methods.javax.xml.transform.TransformerException
XmlException
protected DiagramItemProperties createProperties()
DiagramItem.createProperties()
override.createProperties
in class DiagramNode
protected void saveProperties(DiagramItemProperties props)
saveProperties
in class DiagramNode
props
- A DiagramItemProperties-derived object where
the item's properties should be saved.protected void restoreProperties(DiagramItemProperties props)
restoreProperties
in class DiagramNode
props
- A DiagramItemProperties -derived object containing a
snapshot of the item's properties.public java.lang.String getTextToEdit()
getTextToEdit
in interface InplaceEditable
public void setEditedText(java.lang.String newText)
setEditedText
in interface InplaceEditable
newText
- The new text of the container's caption.public android.graphics.RectF getEditRect(DiagramItem item, android.graphics.PointF pointerPosition)
getEditRect
in interface InplaceEditable
item
- A reference to this node.mousePosition
- A PointF instance specifying the current pointer position.public static ContainerNode getContainer(DiagramNode node)
node
- The DiagramNode
whose container you need to find.ContainerNode
that contains the specified node,
or null if the node is not contained.public boolean containsRecursively(DiagramNode node)
node
- The DiagramNode to check.public Pen getHighlightPen()
Pen
used to draw the container frame lines
when an item is dragged over the container.public void setHighlightPen(Pen value)
Pen
used to draw the container frame lines
when an item is dragged over the container.public float getMargin()
public void setMargin(float value)
public Dimension getMinimumSize()
public void setMinimumSize(Dimension value)
public java.lang.String getCaption()
public void setCaption(java.lang.String value)
public Brush getCaptionBrush()
public void setCaptionBrush(Brush value)
public Brush getEffectiveCaptionBrush()
Brush
object representing the currently
effective caption brush of the container.
This method returns a system brush corresponding to the container's
CaptionBrush
if the container's
CaptionBrush
is not null
, or a
system brush corresponding to the TextBrush
property of the container's style.public float getCaptionHeight()
public void setCaptionHeight(float value)
public Brush getCaptionBackBrush()
public void setCaptionBackBrush(Brush value)
value
- A Brush instance that should be used to paint caption area.public TextFormat getCaptionFormat()
public void setCaptionFormat(TextFormat value)
public boolean getFolded()
public void setFolded(boolean value)
public boolean getFoldable()
public void setFoldable(boolean value)
public boolean getAutoShrink()
public void setAutoShrink(boolean value)
public boolean getVisible()
getVisible
in class DiagramItem
true
if the item is visible,
otherwise false
.public void setVisible(boolean value)
setVisible
in class DiagramItem
value
- true
if the item should be visible,
otherwise false
.public Dimension getFoldedSize()
public void setFoldedSize(Dimension value)
public Dimension getUnfoldedSize()
public SimpleShape getShape()
SimpleShape
enumeration.public void setShape(SimpleShape value)
value
- A member of the SimpleShape
enumeration.public float getCornerRadius()
public void setCornerRadius(float value)
value
- The radius of node's corner arcs.public boolean getAllowAddChildren()
public void setAllowAddChildren(boolean value)
value
- true
to allow adding child nodes, otherwise false
. The default value is true
.public boolean getAllowRemoveChildren()
public void setAllowRemoveChildren(boolean value)
value
- true
to allow removing child nodes, otherwise false
. The default value is true
.