Piccolo.NET

PNode Members

PNode overview

Public Static Fields

PROPERTY_CODE_BOUNDS A bit field that identifies BoundsChanged event.
PROPERTY_CODE_BRUSH A bit field that identifies a BrushChanged event.
PROPERTY_CODE_CHILDREN A bit field that identifies a ChildrenChanged event.
PROPERTY_CODE_CHILDRENPICKABLE A bit field that identifies a ChildrenPickableChanged event.
PROPERTY_CODE_FULLBOUNDS A bit field that identifies a FullBoundsChanged event.
PROPERTY_CODE_PARENT A bit field that identifies a ParentChanged event.
PROPERTY_CODE_PICKABLE A bit field that identifies a PickableChanged event.
PROPERTY_CODE_TAG A bit field that identifies a TagChanged event.
PROPERTY_CODE_TRANSFORM A bit field that identifies a TransformChanged event.
PROPERTY_CODE_VISIBLE A bit field that identifies a VisibleChanged event.

Public Static Methods

Lerp Linearly interpolates between a and b, based on t. Specifically, it computes Lerp(a, b, t) = a + t*(b - a). This produces a result that changes from a (when t = 0) to b (when t = 1).

Protected Static Fields

EVENT_KEY_CLICK The key that identifies Click events in a node's event handler list.
EVENT_KEY_DOUBLECLICK The key that identifies DoubleClick events in a node's event handler list.
EVENT_KEY_DRAGDROP The key that identifies DragDrop events in a node's event handler list.
EVENT_KEY_DRAGENTER The key that identifies DragEnter events in a node's event handler list.
EVENT_KEY_DRAGLEAVE The key that identifies DragLeave events in a node's event handler list.
EVENT_KEY_DRAGOVER The key that identifies DragOver events in a node's event handler list.
EVENT_KEY_GOTFOCUS The key that identifies GotFocus events in a node's event handler list.
EVENT_KEY_KEYDOWN The key that identifies KeyDown events in a node's event handler list.
EVENT_KEY_KEYPRESS The key that identifies KeyPress events in a node's event handler list.
EVENT_KEY_KEYUP The key that identifies KeyUp events in a node's event handler list.
EVENT_KEY_LOSTFOCUS The key that identifies LostFocus events in a node's event handler list.
EVENT_KEY_MOUSEDOWN The key that identifies MouseDown events in a node's event handler list.
EVENT_KEY_MOUSEDRAG The key that identifies MouseDrag events in a node's event handler list.
EVENT_KEY_MOUSEENTER The key that identifies MouseEnter events in a node's event handler list.
EVENT_KEY_MOUSELEAVE The key that identifies MouseLeave events in a node's event handler list.
EVENT_KEY_MOUSEMOVE The key that identifies MouseMove events in a node's event handler list.
EVENT_KEY_MOUSEUP The key that identifies MouseUp events in a node's event handler list.
EVENT_KEY_MOUSEWHEEL The key that identifies MouseWheel events in a node's event handler list.
PROPERTY_KEY_BOUNDS The key that identifies BoundsChanged events in a node's event handler list.
PROPERTY_KEY_BRUSH The key that identifies BrushChanged events in a node's event handler list.
PROPERTY_KEY_CHILDREN The key that identifies ChildrenChanged events in a node's event handler list.
PROPERTY_KEY_CHILDRENPICKABLE The key that identifies ChildrenPickableChanged events in a node's event handler list.
PROPERTY_KEY_FULLBOUNDS The key that identifies FullBoundsChanged events in a node's event handler list.
PROPERTY_KEY_PARENT The key that identifies ParentChanged events in a node's event handler list.
PROPERTY_KEY_PICKABLE The key that identifies PickableChanged events in a node's event handler list.
PROPERTY_KEY_TAG The key that identifies TagChanged events in a node's event handler list.
PROPERTY_KEY_TRANSFORM The key that identifies TransformChanged events in a node's event handler list.
PROPERTY_KEY_VISIBLE The key that identifies VisibleChanged events in a node's event handler list.

Public Instance Constructors

PNodeOverloaded. Initializes a new instance of the PNode class.

Public Instance Fields

FullBoundsInvalidated Used to recieve low level full bounds invalidated events.
PaintInvalidated Used to recieve low level paint invalidated events.

Public Instance Properties

AllNodes Gets a list containing this node and all of its descendent nodes.
Bounds Gets or sets this node's bounds in local coordinates.
Brush Gets or sets the Brush used to paint this node.
ChildPaintInvalid Gets or sets a value indicating whether this node has a child with invalid paint.
ChildrenCount Gets the number of children that this node has.
ChildrenEnumerator Return an enumerator for this node’s direct descendent children.
ChildrenPickable Gets or sets a value indicating whether the children of his node should be picked.
ChildrenReference Gets a reference to the list used to manage this node’s children.
FullBounds Gets this node's full bounds in the parent coordinate system of this node.
GlobalBounds Gets a copy of the bounds of this node in the global coordinate system.
GlobalFullBounds Gets the full bounds of this node in the global coordinate system.
GlobalRotation Gets or sets a the total amount of rotation applied to this node by its own matrix together with the matrices of all its ancestors.
GlobalScale Gets or sets the global scale that is being applied to this node by its matrix together with the matrices of all its ancestors.
GlobalToLocalMatrix Return the matrix that converts global coordinates to local coordinates of this node.
GlobalTranslation Gets or sets the global translation that is being applied to this node by its matrix together with the matrices of all its ancestors.
HandlerList Return the list of event handlers associated with this node.
Height Gets the height (in local coordinates) of this node's bounds.
InverseMatrix Gets an inverted copy of the matrix associated with this node.
Item Allows a PNode to be indexed directly to access it's children.
LocalToGlobalMatrix Return the matrix that converts local coordinates at this node to the global coordinate system.
Matrix Gets or sets the matrix associated with this node.
MatrixReference Gets a reference to the matrix associated with this node.
Occluded Returns true if this node is occluded by another node, in which case it should not be drawn.
Offset Gets or sets the offset applied to this node by its matrix.
OffsetX Gets or sets the x offset applied to this node by its matrix.
OffsetY Gets or sets the y offset applied to this node by its matrix.
PaintInvalid Gets or sets a value indicating whether this node's paint is invalid, in which case the node needs to be repainted.
Parent Gets or sets the parent of this node.
Pickable Gets or sets a value indicating whether this node is pickable
PropertyChangeParentMask Gets or sets a value that determines which property change events are forwarded to this node's parent so that it's property change listeners will also be notified.
Root Gets the root node (instance of PRoot).
Rotation Gets or sets the rotation applied by this node's transform in degrees.
Scale Gets or sets the scale applied by this node's matrix.
Tag Gets or sets the object that contains data about the control.
UnionOfChildrenBounds Gets the union of the full bounds of all the children of this node.
Visible Gets or sets a value indicating whether this node is visible, that is if it will paint itself and its descendents.
Width Gets the width (in local coordinates) of this node's bounds.
X Gets the x position (in local coordinates) of this node's bounds.
Y Gets the y position (in local coordinates) of this node's bounds.

Public Instance Methods

AddActivity Schedule the given activity with the root.
AddChildOverloaded. Add a node to be a new child of this node at the specified index.
AddChildrenOverloaded. Add a list of nodes to be children of this node.
AddInputEventListener Adds the specified input event listener to receive input events from this node.
AnimateMatrixToBounds Animate this node from it's current matrix when the activity starts a new matrix that will fit the node into the given bounds.
AnimateToBounds Animate this node's bounds from their current location when the activity starts to the specified bounds.
AnimateToColor Animate this node's color from its current value to the new value specified.
AnimateToMatrix Animate this node's matrix from its current values when the activity starts to the new values specified in the given matrix.
AnimateToPositionScaleRotation Animate this node's matrix from its current location when the activity starts to the specified location, scale, and rotation.
CenterBoundsOnPoint Adjust the bounds of this node so that they are centered on the given point specified in the local coordinate system of this node.
CenterFullBoundsOnPoint Adjust the full bounds of this node so that they are centered on the given point specified in the local coordinates of this node's parent.
Clone The copy method copies this node and all of its descendents.
ComputeFullBounds Compute and return the full bounds of this node.
EndResizeBounds Notify this node that you have finished a resize bounds sequence.
Equals (inherited from Object)Determines whether the specified Object is equal to the current Object.
FindIntersectingNodes Checks this node and it's descendents for intersection with the given bounds and adds any intersecting nodes to the given list.
FullIntersects Return true if the full bounds of this node intersect with the specified bounds.
FullPaint Paint this node and all of its descendents.
FullPick Try to pick this node and all of its descendents.
GetAllNodes Gets a list containing the subset of this node and all of its descendent nodes that are accepted by the given node filter.
GetChild Return the child node at the specified index.
GetEnumerator Return an enumerator for this node’s direct descendent children.
GetHashCode (inherited from Object)Serves as a hash function for a particular type, suitable for use in hashing algorithms and data structures like a hash table.
GetObjectData Write this node and all of its descendent nodes to the given SerializationInfo.
GetType (inherited from Object)Gets the Type of the current instance.
GlobalToLocalOverloaded. Transform the given rectangle from global coordinates to this node's local coordinate system.
IndexOfChild Return the index where the given child is stored.
Intersects Return true if this node intersects the given rectangle specified in local bounds.
InvalidateFullBounds Invalidates the full bounds of this node, and sets the child bounds invalid flag on each of this node's ancestors.
InvalidateLayout Invalidate this node's layout, so that later LayoutChildren will get called.
InvalidatePaint Invalidate this node's paint, and mark all of its ancestors as having a node with invalid paint.
IsAncestorOf Return true if this node is an ancestor of the parameter node.
IsDescendentOf Return true if this node is a descendent of the parameter node.
IsDescendentOfRoot Return true if this node is a descendent of the Root.
IsOpaque 
LayoutChildren Nodes that apply layout constraints to their children should override this method and do the layout there.
LocalToGlobalOverloaded. Transform the given rectangle from this node's local coordinate system to the global coordinate system.
LocalToParentOverloaded. Transform the given rectangle from this node's local coordinate system to its parent's local coordinate system.
MoveInBackOf Change the order of this node in its parent's children list so that it will draw before the given sibling node.
MoveInFrontOf Change the order of this node in its parent's children list so that it will draw after the given sibling node.
MoveToBack Change the order of this node in its parent's children list so that it will draw in back of all of its other sibling nodes.
MoveToFront Change the order of this node in its parent's children list so that it will draw in front of all of its other sibling nodes.
OffsetBy Offset this node relative to the parent's coordinate system. This is NOT affected by this node's current scale or rotation.
OnClick Raises the Click event.
OnDoubleClick Raises the DoubleClick event.
OnDragDrop Raises the DragDrop event.
OnDragEnter Raises the DragEnter event.
OnDragLeave Raises the DragLeave event.
OnDragOver Raises the DragOver event.
OnGotFocus Raises the GotFocus event.
OnKeyDown Raises the KeyDown event.
OnKeyPress Raises the KeyPress event.
OnKeyUp Raises the KeyUp event.
OnLostFocus Raises the LostFocus event.
OnMouseDown Raises the MouseDown event.
OnMouseDrag Raises the MouseDrag event.
OnMouseEnter Raises the MouseEnter event.
OnMouseLeave Raises the MouseLeave event.
OnMouseMove Raises the MouseMove event.
OnMouseUp Raises the MouseUp event.
OnMouseWheel Raises the MouseWheel event.
ParentBoundsChanged A notification that the bounds of this node's parent have changed.
ParentToLocalOverloaded. Transform the given rectangle from this node's parent's local coordinate system to the local coordinate system of this node.
Position Animate this node's matrix to one that will make this node appear at the specified position relative to the specified bounding box.
Print Constructs a new PrintDocument, allows the user to select which printer to print to, and then prints the node.
RemoveAllChildren Remove all the children from this node.
RemoveChildOverloaded. Remove the child at the specified position from this node's children.
RemoveChildrenOverloaded. Remove all the children in the given list from this node’s list of children.
RemoveFromParent Delete this node by removing it from its parent’s list of children.
RemoveInputEventListener Removes the specified input event listener so that it no longer receives input events from this node.
Repaint Mark the area on the screen represented by this node's full bounds as needing a repaint.
RepaintFrom Pass the given repaint request up the tree, so that any cameras can invalidate that region on their associated canvas.
Reparent Set the parent of this node, and transform the node in such a way that it doesn't move in global coordinates.
ReplaceWith Swaps this node out of the scene graph tree, and replaces it with the specified replacement node.
ResetBounds Set the bounds of this node back to an empty rectangle.
RotateByOverloaded. Rotates this node by theta (in degrees) about the given point.
RotateInPlace Rotates this node by theta (in degrees), and then translates the node so that the x, y position of its fullBounds stays constant.
ScaleByOverloaded. Scale this node's matrix by the given amount about the specified point.
SetBounds Set the bounds of this node to the given values.
SetOffset Sets the offset applied to this node by it's matrix.
SignalBoundsChanged This method should be called when the bounds of this node are changed.
StartResizeBounds Notify this node that you will begin to repeatedly call SetBounds.
ToImageOverloaded. Paint a representation of this node into the specified image. If backgroundBrush is null, then the image will not be filled with a color prior to rendering.
ToPickPathOverloaded. Creates a pick path with the given Camera and pickbounds and adds this node.
ToString Returns a string representation of this object for debugging purposes.
TransformBy Transform this node's matrix by the given matrix.
TranslateBy Translate this node's matrix by the given amount, using the standard matrix Translate method.
ValidateFullPaint Repaint this node and any of its descendents if they have invalid paint.

Public Instance Events

BoundsChanged Occurs when the value of the Bounds property changes.
BrushChanged Occurs when the value of the Brush property changes.
ChildrenChanged Occurs when there is a change in the set of this node's direct children.
ChildrenPickableChanged Occurs when the value of the ChildrenPickable property changes.
Click Occurs when the node is clicked.
DoubleClick Occurs when the node is double clicked.
DragDrop Occurs when a drag-and-drop operation is completed.
DragEnter Occurs when an object is dragged into this node's bounds.
DragLeave Occurs when an object is dragged out of this node's bounds.
DragOver Occurs when an object is dragged over this node's bounds.
FullBoundsChanged Occurs when the value of the FullBounds property changes.
GotFocus Occurs when the node receives focus.
KeyDown Occurs when a key is pressed while the node has focus.
KeyPress Occurs when a key is pressed while the node has focus.
KeyUp Occurs when a key is released while the node has focus.
LostFocus Occurs when the node loses focus.
MouseDown Occurs when the mouse pointer is over the node and a mouse button is pressed.
MouseDrag Occurs when the mouse pointer is dragged over the node.
MouseEnter Occurs when the mouse pointer enters the node.
MouseLeave Occurs when the mouse pointer leaves the node.
MouseMove Occurs when the mouse pointer is moved over the node.
MouseUp Occurs when the mouse pointer is over the node and a mouse button is released.
MouseWheel Occurs when the mouse wheel moves while the node has focus.
ParentChanged Occurs when the value of the Parent property changes.
PickableChanged Occurs when the value of the Pickable property changes.
TagChanged Occurs when the value of the Tag property changes.
TransformChanged Occurs when the value of the Matrix property changes.
VisibleChanged Occurs when the value of the Visible property changes.

Protected Instance Constructors

PNodeOverloaded. Initializes a new instance of the PNode class.

Protected Instance Fields

bounds The bounds of this node, stored in local coordinates.

Protected Instance Properties

BoundsModified Gets or sets a value indicating whether this node's bounds have recently changed.
BoundsVolatile Gets a value indicating whether this nodes bounds may change at any time.
ChildBoundsInvalid Gets or sets a value indicating if one of this node's descendents has invalid bounds.
ChildBoundsVolatile Gets or sets a value indicating whether this has a child with volatile bounds.
FullBoundsInvalid Gets or sets a value indicating whether the full bounds of this node are valid.
ParamString Gets a string representing the state of this node.

Protected Instance Methods

AddChildrenOverloaded. Add a collection of nodes to be children of this node.
Finalize (inherited from Object)Allows an Object to attempt to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection.
FireChildPropertyChangedEvent Called by child node to forward property change events up the node tree so that property change listeners registered with this node will be notified of property changes of its children nodes.
FirePropertyChangedEvent Raise the given property change event.
GetPropertyHandlers Gets all property event handlers for this node, that are associated with the specified property key.
HandleEvent Raise the given input event.
InternalUpdateBounds Gives nodes a chance to update their internal structure before bounds changed notifications are sent. When this message is received, the node's bounds field will contain the new value.
MemberwiseClone (inherited from Object)Creates a shallow copy of the current Object.
OnFullBoundsInvalidated Raises the FullBoundsInvalidated event.
OnPaintInvalidated Raises the PaintInvalidated event.
Paint Paint this node behind any of its children nodes.
PaintAfterChildren Subclasses that wish to do additional painting after their children are painted should override this method and do that painting here.
Pick Try to pick this node before its children have had a chance to be picked.
PickAfterChildren Try to pick this node after its children have had a chance to be picked.
printDocument_PrintPage Prints the node into the given Graphics context.
RemoveChildrenOverloaded. Remove all the children in the given collection from this node’s list of children.
ScaleAndDraw Scale the Graphics so that this node's full bounds fit in displayRect and then render into the given Graphics context.
ValidateFullBounds This method is called to validate the bounds of this node and all of its descendents.

See Also

PNode Class | UMD.HCIL.Piccolo Namespace


Web Accessibility