Detailed Description

A renderable text node.

Inheritance diagram for PowerUI.RenderableTextNode:
Dom.TextNode Css.IRenderableNode Dom.CharacterData Dom.Node Dom.EventTarget Dom.IParentNode Dom.IEventTarget MathML.MathTextNode PowerUI.HtmlTextNode Speech.SpeechTextNode Svg.SVGTextNode

Public Member Functions

 RenderableTextNode ()
 
LayoutBox BestBox (float y)
 Finds the best box for the given y coordinate. More...
 
int LetterIndex (float x, float y)
 Finds the index of the nearest character to x pixels. More...
 
int LetterIndex (float x, LayoutBox box)
 Finds the index of the nearest character to x pixels. More...
 
Element querySelector (string selector)
 Gets the first element which matches the given selector. More...
 
HTMLCollection querySelectorAll (string selector)
 Gets all child elements with the given tag. More...
 
HTMLCollection querySelectorAll (string selector, bool one)
 Gets all child elements with the given tag. More...
 
void querySelectorAll (Selector[] selectors, INodeList results, CssEvent e, bool one)
 Gets all child elements with the given tag. More...
 
void WentOffScreen ()
 Called when an element is no longer on the screen. More...
 
void OnRender (Renderman renderer)
 Called during a global render event on all elements. This knows exactly where the element is on screen. More...
 
void OnComputeBox (Renderman renderer, Css.LayoutBox box, ref bool widthUndefined, ref bool heightUndefined)
 
Vector2 GetPosition (int index)
 Gets the relative position (relative to parent) in pixels of the letter at the given index. More...
 
void FontLoaded (DynamicFont font)
 Called when a -face font is done loading. More...
 
void GetWidthBounds (out float min, out float max)
 Part of shrink-to-fit. Computes the maximum and minimum possible width for an element. More...
 
- Public Member Functions inherited from Dom.TextNode
void splitText (int offset)
 Splits the text into two nodes at the given offset. More...
 
override bool isEqualNode (Node other)
 Tests whether two nodes are the same by attribute comparison. More...
 
override string ToString ()
 
override bool OnLexerAddNode (HtmlLexer lexer, int mode)
 Called when this node has been created and is being added to the given lexer. Closely related to Element.OnLexerCloseNode. More...
 
- Public Member Functions inherited from Dom.CharacterData
string substringData (int offset, int count)
 Gets a substring from this text at the given position. More...
 
void replaceData (int offset, int count, string with)
 Replaces the given block of data. More...
 
void deleteData (int offset, int count)
 Deletes the given block of data. More...
 
override Node cloneNode (bool deep)
 Clones this node. More...
 
void appendData (string newData)
 Appends the given data to this text element. Must not contain HTML. More...
 
void replaceWholeText (string with)
 Replaces whole text data. More...
 
override void ToString (System.Text.StringBuilder builder)
 
- Public Member Functions inherited from Dom.Node
HtmlElement getByTagName (string tag)
 Casts getElementByTagName to a HtmlElement for you (exists because of SVG and MathML). More...
 
HtmlElement getById (string id)
 Casts getElementById to a HtmlElement for you (exists because of SVG and MathML). More...
 
HtmlElement getByAttribute (string property, string value)
 Casts getElementByAttribute to a HtmlElement for you (exists because of SVG and MathML). More...
 
bool isBefore (Node other)
 True if this element is before the other one in the DOM. More...
 
void insertAfter (Node toInsert, Node after)
 Inserts the given element after the given one. More...
 
Node prependChild (Node child)
 Prepends the given element as a child. More...
 
Node insertBefore (Node toInsert, Node before)
 Inserts the given element before the given one. More...
 
Node replaceChild (Node with, Node element)
 Replaces the given child with another. More...
 
Node appendChild (Node element)
 Adds the given element to the children of this element. More...
 
Node moveChild (Node toMove, int index)
 Moves the given node to the given new index. More...
 
Node removeChildAt (int index)
 Removes the child at the given index from this element. More...
 
Node removeChild (Node element)
 Removes the given child from this element. More...
 
bool hasChildNodes ()
 True if this element has any child nodes. More...
 
void normalize ()
 Normalises this node. More...
 
bool isSupported (string feature, string version)
 Is the given feature supported? More...
 
bool hasAttributes ()
 Does this node have any attributes? More...
 
ushort compareDocumentPosition (Node other)
 Compare document position (two elements only here). More...
 
bool isParentOf (Node node)
 True if this is a parent of the given node. More...
 
bool contains (Node node)
 True if the given node is a descendant of this or not. More...
 
string lookupNamespaceURI (string nsUri)
 Looks up a namespace URI, returning the prefix. More...
 
HTMLCollection getElementsByClassName (string className)
 Gets all elements with the given class name(s), seperated by spaces. May include this element or any of it's kids. More...
 
Element getElementByTagNameNS (string namespaceURI, string tag)
 Gets the first child element with the given tag. More...
 
HTMLCollection getElementsByTagNameNS (string namespaceURI, string tag)
 Gets all child elements with the given tag. More...
 
HTMLCollection getElementsByTagNameNS (MLNamespace ns, string tag, bool stopWithOne)
 Gets all child elements with the given tag. More...
 
bool getElementsByTagNameNS (MLNamespace ns, string tag, bool stopWithOne, INodeList results)
 Gets all child elements with the given tag. More...
 
Element getElementByTagName (string tag)
 Gets the first child element with the given tag. More...
 
HTMLCollection getElementsByTagName (string tag)
 Gets all child elements with the given tag. More...
 
HTMLCollection getElementsByTagName (string tag, bool stopWithOne)
 Gets all child elements with the given tag. More...
 
bool getElementsByTagName (string tag, bool stopWithOne, INodeList results)
 Gets all child elements with the given tag. More...
 
Element getElementByName (string name)
 Gets the first child element with the given name. More...
 
HTMLCollection getElementsByName (string name)
 Gets all child elements with the given name. More...
 
HTMLCollection getElementsByName (string name, bool stopWithOne)
 Gets all child elements with the given name. More...
 
bool getElementsByName (string name, bool stopWithOne, INodeList results)
 Gets all child elements with the given name. More...
 
Element getElementById (string value)
 Gets a child element by ID. More...
 
NodeList getElementsByAttribute (string property, string value)
 Gets all elements with the given attribute. May include this element or any of it's kids. More...
 
NodeList getElementsWithProperty (string property, string value)
 Gets all elements with the given attribute. May include this element or any of it's kids. More...
 
void getElementsByAttribute (string property, string value, INodeList results)
 Gets all elements with the given property. May include this element or any of it's kids. More...
 
void getElementsByClassName (string[] classes, INodeList results)
 Gets all elements with the given class name(s). May include this element or any of it's kids. More...
 
Element getElementByAttribute (string property, string value)
 Gets an element with the given attribute. May be this element or any of it's kids. More...
 
bool isSameNode (Node other)
 Tests whether two nodes are the same, that is if they reference the same object More...
 
bool isDefaultNamespace (string nsUri)
 Tests if this elements default namespace is the same as the given one. More...
 
string lookupPrefix (string prefix)
 Looks up a namespace prefix, returning the namespace URI. More...
 
Node remove ()
 Removes this node from the tree it belongs to. More...
 
override string ToString ()
 
Node insertChild (int index, Node child)
 Inserts a child into this element at the given index. Pushes any elements at the given index over. More...
 
Node replaceWith (Node element)
 Replaces this element with the given element. More...
 
virtual bool OnAttributeChange (string attribute)
 Called on an instance of this handler when an attribute on the element it's attached to changes. It's also called when the tag is being loaded. More...
 
- Public Member Functions inherited from Dom.EventTarget
void ClearEvents ()
 Clears all events on this document. More...
 
bool dispatchEvent (Event e)
 Runs an event of the given name. More...
 
void addEventListener (string name, EventListener listener)
 Adds an event listener to this document. More...
 
void addEventListener (string name, EventListener listener, bool useCapture)
 Adds an event listener to this document. More...
 
void removeEventListener (string name, object evtHandlerInternal)
 Removes an event listener from this document. More...
 
void addEventListener (string name, AnimationEventDelegate method)
 
void addEventListener (string name, AudioProcessingEventDelegate method)
 
void addEventListener (string name, BeforeInputEventDelegate method)
 
void addEventListener (string name, BeforeUnloadEventDelegate method)
 
void addEventListener (string name, BlobEventDelegate method)
 
void addEventListener (string name, ClipboardEventDelegate method)
 
void addEventListener (string name, CloseEventDelegate method)
 
void addEventListener (string name, CompositionEventDelegate method)
 
void addEventListener (string name, CustomEventDelegate method)
 
void addEventListener (string name, CSSFontFaceLoadEventDelegate method)
 
void addEventListener (string name, DeviceLightEventDelegate method)
 
void addEventListener (string name, DeviceMotionEventDelegate method)
 
void addEventListener (string name, DeviceOrientationEventDelegate method)
 
void addEventListener (string name, DeviceProximityEventDelegate method)
 
void addEventListener (string name, DomEventDelegate method)
 
void addEventListener (string name, DOMTransactionEventDelegate method)
 
void addEventListener (string name, DragEventDelegate method)
 
void addEventListener (string name, EditingBeforeInputEventDelegate method)
 
void addEventListener (string name, ErrorEventDelegate method)
 
void addEventListener (string name, FetchEventDelegate method)
 
void addEventListener (string name, FocusEventDelegate method)
 
void addEventListener (string name, GamepadEventDelegate method)
 
void addEventListener (string name, HashChangeEventDelegate method)
 
void addEventListener (string name, IDBVersionChangeEventDelegate method)
 
void addEventListener (string name, InputEventDelegate method)
 
void addEventListener (string name, KeyboardEventDelegate method)
 
void addEventListener (string name, MediaStreamEventDelegate method)
 
void addEventListener (string name, MessageEventDelegate method)
 
void addEventListener (string name, MouseEventDelegate method)
 
void addEventListener (string name, MutationEventDelegate method)
 
void addEventListener (string name, OfflineAudioCompletionEventDelegate method)
 
void addEventListener (string name, PageTransitionEventDelegate method)
 
void addEventListener (string name, PointerEventDelegate method)
 
void addEventListener (string name, PopStateEventDelegate method)
 
void addEventListener (string name, ProgressEventDelegate method)
 
void addEventListener (string name, RelatedEventDelegate method)
 
void addEventListener (string name, RTCDataChannelEventDelegate method)
 
void addEventListener (string name, RTCIdentityErrorEventDelegate method)
 
void addEventListener (string name, RTCIdentityEventDelegate method)
 
void addEventListener (string name, RTCPeerConnectionIceEventDelegate method)
 
void addEventListener (string name, SensorEventDelegate method)
 
void addEventListener (string name, StorageEventDelegate method)
 
void addEventListener (string name, TextEventDelegate method)
 
void addEventListener (string name, TimeEventDelegate method)
 
void addEventListener (string name, TouchEventDelegate method)
 
void addEventListener (string name, TrackEventDelegate method)
 
void addEventListener (string name, TransitionEventDelegate method)
 
void addEventListener (string name, UIEventDelegate method)
 
void addEventListener (string name, UserProximityEventDelegate method)
 
void addEventListener (string name, WebGLContextEventDelegate method)
 
void addEventListener (string name, WheelEventDelegate method)
 
void addEventListener (string name, Nitro.DynamicMethod< Nitro.Void > listener)
 
void addEventListener (string name, Nitro.DynamicMethod< Nitro.Void > listener, bool capture)
 
void addEventListener (string name, ContextEventDelegate method)
 
void addEventListener (string name, SlideEventDelegate method)
 
void addEventListener (string name, PowerUI.SpriteEventDelegate method)
 
void addEventListener (string name, SVGEventDelegate method)
 Adds an event listener to this document. More...
 
void addEventListener (string name, SVGZoomEventDelegate method)
 
- Public Member Functions inherited from Css.IRenderableNode
void OnComputeBox (Renderman renderer, LayoutBox box, ref bool widthUndefined, ref bool heightUndefined)
 Called whilst a CSS box is being recomputed. More...
 

Public Attributes

int SpaceCount
 The total number of spaces. More...
 
float LongestWord
 The advance width (for a 1px font) of the longest word. More...
 
float TotalAdvanceWidth =float.MinValue
 The total advance width (for a 1px font). Doesn't include word spacing. More...
 

Package Functions

override void RemovedFromDOM ()
 Called when this element got removed from the DOM. More...
 

Package Attributes

TextRenderableData RenderData_
 Information such as this nodes computed box model. This one is where 'anonymous' boxes are stored. More...
 

Properties

override string data [get, set]
 Enables the various TextNode API's. More...
 
RenderableData RenderData [get]
 This nodes render data. More...
 
ComputedStyle ComputedStyle [get]
 This nodes computed style. More...
 
- Properties inherited from Dom.TextNode
override string nodeName [get]
 The name for this type of node. More...
 
override ushort nodeType [get]
 The type of element that this is. More...
 
- Properties inherited from Dom.CharacterData
virtual string data [get, set]
 
int length [get]
 
bool IsSpaces [get]
 True if this is all 'whitespace' characters as defined by the HTML spec (includes newlines). More...
 
bool isElementContentWhitespace [get]
 True if the content is only a whitespace. More...
 
string wholeText [get]
 The text of all Text nodes logically adjacent to this node More...
 
override string nodeValue [get, set]
 The value of this node. More...
 
override string textContent [get, set]
 Gets or sets the text content of this element (i.e. the content without any html.). Setting this is good for preventing any html injection as it will be taken literally. More...
 
- Properties inherited from Dom.Node
HtmlElement htmlParentNode [get]
 The parent as a HtmlElement (convenience method). More...
 
HtmlDocument htmlDocument [get]
 The ownerDocument as a Html document. More...
 
string this[string property] [get, set]
 Gets or sets the named attribute of this tag. An attribute is e.g. style="display:none;". More...
 
virtual bool ClearBackground [get]
 True if this node should clear the background state of the renderer. The background state essentially declares if this nodes background-color or background-image represents the viewports background. In HTML, both the body tag and root html tag can represent the background, so the root HTML node doesn't clear the state to allow body to set it if needed. So, only the root html element overrides this (and this is better than checking for .Tag=="html"). More...
 
override EventTarget eventTargetParentNode [get]
 The parent node as used by EventTarget during capture. Can be null. More...
 
Document document [get]
 The document that this node belongs to. More...
 
virtual string nodeName [get]
 The name for this type of node. More...
 
virtual string nodeValue [get, set]
 The value of this node. More...
 
virtual ushort nodeType [get]
 The type of element that this is. More...
 
Node firstChild [get]
 The first child of this element. More...
 
Node lastChild [get]
 The last child of this element. More...
 
Node previousSibling [get]
 The sibling before this one under this elements parent. Null if this is the first child. More...
 
Node nextSibling [get]
 The sibling following this one under this elements parent. Null if this is the last child. More...
 
Element previousElementSibling [get]
 The next non-text node sibling. More...
 
Element nextElementSibling [get]
 The next non-text node sibling. More...
 
virtual Document ownerDocument [get]
 The owner document. More...
 
virtual string localName [get]
 The local name of this node. More...
 
virtual string baseURI [get]
 The base URI. More...
 
string namespaceURI [get]
 The namespace this node is in. More...
 
string innerText [get, set]
 Gets or sets the text content of this element (i.e. the content without any html.). Setting this is good for preventing any html injection as it will be taken literally. More...
 
bool isRooted [get]
 True if this element is in any document and is rooted. More...
 
string outerText [get, set]
 Gets or sets the text content of this element (i.e. the content without any html.). Setting this is good for preventing any html injection as it will be taken literally. More...
 
virtual string textContent [get, set]
 Gets or sets the text content of this element (i.e. the content without any html.). Setting this is good for preventing any html injection as it will be taken literally. More...
 
Element parentElement [get]
 Gets the parent html element of this element. More...
 
string prefix [get]
 The prefix (namespace). More...
 
Node rootNode [get]
 The root node. More...
 
NodeList childNodes [get]
 The set of children of this element. More...
 
HTMLCollection children [get]
 The set of children elements. More...
 
int sameNameIndex [get]
 Gets the index of this element in it's parents childNodes in terms of child elements that have the same name (tag) as this one. More...
 
int childIndex [get]
 Gets the index of this element in it's parents childNodes. More...
 
int childElementCount [get]
 The number of child elements of this element. More...
 
int childCount [get]
 The number of children of this element. More...
 
Element firstElementChild [get]
 The first non-text child of this element. More...
 
Element lastElementChild [get]
 The last non-text child of this element. More...
 
string id [get, set]
 The ID of this element. Won't ever be null. More...
 
string className [get, set]
 The css class attribute of this element. Won't ever be null. Note that it can potentially hold multiple names, e.g. "red button". Use classList for those. More...
 
Node parentNode [get]
 This nodes parent node. More...
 
DOMTokenList classList [get]
 The set of class names. More...
 
- Properties inherited from Dom.EventTarget
static DispatchStack dispatchStackRef [get]
 The active dispatch stack. Use event.deepPath to access it (available during dispatch only). More...
 
virtual EventTarget eventTargetParentNode [get]
 The parent node as used by EventTarget during capture. Can be null. More...
 
virtual NodeList eventTargetChildren [get]
 The childNode set as used by EventTarget during capture. Can be null. More...
 
- Properties inherited from Dom.IParentNode
NodeList childNodes [get]
 The kids of this node. More...
 
Node parentNode [get]
 The parent node. More...
 
Element parentElement [get]
 The parent element. More...
 
int childCount [get]
 The number of kids of this node. More...
 
int childElementCount [get]
 The number of child elements of this parent. More...
 
HTMLCollection children [get]
 The kids of this node. More...
 
Element firstElementChild [get]
 The first element child of this node. More...
 
Element lastElementChild [get]
 The last element child of this node. More...
 
- Properties inherited from Css.IRenderableNode
RenderableData RenderData [get]
 The box model for a node. More...
 
ComputedStyle ComputedStyle [get]
 The computed style. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from Dom.Node
static bool PropertiesEqual (Dictionary< string, string > a, Dictionary< string, string > b)
 True if two args sets are equal. More...
 
- Protected Member Functions inherited from Dom.EventTarget
GetFirstDelegate< T > (string name)
 Gets the first delegate event handler for the given event name. More...
 
virtual bool HandleLocalEvent (Event e, bool bubblePhase)
 Handles triggering event handlers here. Elements can (and in PowerUI's case, do) override this. PowerUI overrides it to handle e.g. onclick="" attributes too. More...
 
- Static Package Attributes inherited from Dom.EventTarget
static DispatchStack PooledStack
 The current head of the pooled dispatched stacks. More...
 

Constructor & Destructor Documentation

PowerUI.RenderableTextNode.RenderableTextNode ( )
inline

Member Function Documentation

LayoutBox PowerUI.RenderableTextNode.BestBox ( float  y)
inline

Finds the best box for the given y coordinate.

void PowerUI.RenderableTextNode.FontLoaded ( DynamicFont  font)
inline

Called when a -face font is done loading.

Implements Css.IRenderableNode.

Vector2 PowerUI.RenderableTextNode.GetPosition ( int  index)
inline

Gets the relative position (relative to parent) in pixels of the letter at the given index.

Parameters
indexThe index of the letter in this text element.
Returns
The number of pixels from the left and top edges of this text element the letter is as a vector.
void PowerUI.RenderableTextNode.GetWidthBounds ( out float  min,
out float  max 
)
inline

Part of shrink-to-fit. Computes the maximum and minimum possible width for an element.

Implements Css.IRenderableNode.

int PowerUI.RenderableTextNode.LetterIndex ( float  x,
float  y 
)
inline

Finds the index of the nearest character to x pixels.

Parameters
xThe number of pixels from the left edge of the screen.
yThe number of pixels from the top edge of the screen.
Returns
The index of the nearest letter.
int PowerUI.RenderableTextNode.LetterIndex ( float  x,
LayoutBox  box 
)
inline

Finds the index of the nearest character to x pixels.

Parameters
xThe number of pixels from the left edge of the screen.
void PowerUI.RenderableTextNode.OnComputeBox ( Renderman  renderer,
Css.LayoutBox  box,
ref bool  widthUndefined,
ref bool  heightUndefined 
)
inline
void PowerUI.RenderableTextNode.OnRender ( Renderman  renderer)
inline

Called during a global render event on all elements. This knows exactly where the element is on screen.

Implements Css.IRenderableNode.

Element PowerUI.RenderableTextNode.querySelector ( string  selector)
inline

Gets the first element which matches the given selector.

Implements Css.IRenderableNode.

HTMLCollection PowerUI.RenderableTextNode.querySelectorAll ( string  selector)
inline

Gets all child elements with the given tag.

Parameters
selectorThe selector string to match.
Returns
The set of all tags with this tag.

Implements Css.IRenderableNode.

HTMLCollection PowerUI.RenderableTextNode.querySelectorAll ( string  selector,
bool  one 
)
inline

Gets all child elements with the given tag.

Parameters
selectorThe selector string to match.
Returns
The set of all tags with this tag.

Implements Css.IRenderableNode.

void PowerUI.RenderableTextNode.querySelectorAll ( Selector[]  selectors,
INodeList  results,
CssEvent  e,
bool  one 
)
inline

Gets all child elements with the given tag.

Parameters
selectorsThe selectors to match.
Returns
The set of all tags with this tag.

Implements Css.IRenderableNode.

override void PowerUI.RenderableTextNode.RemovedFromDOM ( )
inlinepackagevirtual

Called when this element got removed from the DOM.

Reimplemented from Dom.Node.

void PowerUI.RenderableTextNode.WentOffScreen ( )
inline

Called when an element is no longer on the screen.

Implements Css.IRenderableNode.

Member Data Documentation

float PowerUI.RenderableTextNode.LongestWord

The advance width (for a 1px font) of the longest word.

TextRenderableData PowerUI.RenderableTextNode.RenderData_
package

Information such as this nodes computed box model. This one is where 'anonymous' boxes are stored.

int PowerUI.RenderableTextNode.SpaceCount

The total number of spaces.

float PowerUI.RenderableTextNode.TotalAdvanceWidth =float.MinValue

The total advance width (for a 1px font). Doesn't include word spacing.

Property Documentation

ComputedStyle PowerUI.RenderableTextNode.ComputedStyle
get

This nodes computed style.

override string PowerUI.RenderableTextNode.data
getset

Enables the various TextNode API's.

RenderableData PowerUI.RenderableTextNode.RenderData
get

This nodes render data.