DOMObjectExtended

From Virtual World Web Wiki
Revision as of 16:35, 21 October 2016 by Spark5 (Talk | contribs) (Documentation for the DOMObjectExtended class)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
  • This is a JavaScript visible object

Remarks [edit]

Properties

Guid? BaseTypeID {get; set;} // Via attribution [[DOMObject]]
The type ID of the root Object Type in a derived Object Type Reference chain
string Class {get; set;} // Via attribution [[DOMObject]]
Much like the HTML concept of class, a space-separated list of class names which can be used by CSS Selectors to select this node
DOMObjectExtended Document {get;}
string DocumentTitle {get;}
bool Enabled {get; set;} // Via attribution [[DOMObject]]
When True the effects of this object and its children should be honored in a client, for example a DOMLight should shine, a DOMRenderable should display, etc. Conversely when False, this object should be treated as though it were hidden and it's effects ignored.
long ID {get;}
long ID {get; set;} // Via attribution [[DOMObject]]
The unique ID of this object in the view. DOM node IDs can change if a node is moved between view documents or removed from a document in which case this property will return zero. DOM node IDs are allocated by the RootDocument in a view
Guid? InstanceTypeID {get; set;} // Via attribution [[DOMObject]]
The type ID of the next Object Type up the hierarchy in a derived Object Type Reference chain
bool IsInstanceRoot {get;} // Via attribution [[DOMObject]]
True if this node is the root node in an Object Type Reference
bool IsTemplateRoot {get;} // Via attribution [[DOMObject]]
True if this node represents the root node of an instance of an Object Template
bool IsTypeRoot {get; set;} // Via attribution [[DOMObject]]
True if this node represents the root node of an Object Type
DOMPropertiesExtended LocalProperties {get;}
Guid NodeID {get; set;} // Via attribution [[DOMObject]]
Unique ID set on first creation (not sure how this is different than RecordID)
DOMObjectExtended Parent {get;}
DOMPropertiesExtended Properties {get;}
DOMProtectionFlags ProtectionFlags {get; set;} // Via attribution [[DOMObject]]
A set of flags representing protections enforced by the server. Delete object (1), Move object (2), Add child (4), Remove child (8), Change object (16) are some of the possible flags. This property can only be set on the server and is used to protect certain objects from accidental operations that could be harmful to the basic DOM structure, like deleting the root instance document for example.
Guid ReferenceLayoutHash {get; set;} // Via attribution [[DOMObject]]
Guid TemplateID {get; set;} // Via attribution [[DOMObject]]
If this node is part of an instaniated Object Template this property will contain the ID of the template
bool Temporary {get; set;} // Via attribution [[DOMObject]]
A node marked as Temporary will not be serialized for storage and will not be disturbed during a publish merge. They are considered "runtime nodes" not part of the saved layout or type.
string Title {get; set;} // Via attribution [[DOMObject]]
The title of the object, usually used only for display in a server inspector, but sometimes has special meaning (eg. in DOMTitle, DOMHookpoint, and DOMCurveValue nodes
bool Transient {get; set;} // Via attribution [[DOMObject]]
A transient node is meant to be removed from the DOM immediately after it is received. On the server side, when a node marked Transient is added to the DOM a ChildAdd packet is sent to the client, but the node is never added to the Children collection of the target parent.
string Type {get;}
Guid TypeID {get; set;} // Via attribution [[DOMObject]]
The ID of the Object Type (stored DOM snippet) that this node is a part of. If the Object Type is a derived reference or this node is part of a reference inside an Object Type this will indicate the first type in which this node was introduced
int TypeNodeID {get; set;} // Via attribution [[DOMObject]]
When part of an Object Type this integer ID uniquely identifies the node within the type. Note that if an Object Type contains references those nodes could have conflicting TypeNodeIDs but their TypeID would appear different.
bool TypeReference {get; set;} // Via attribution [[DOMObject]]
True if this node is the root of a type reference (as in, not locally defined, but here as the result of a DOMReference expansion, and will be serialized as a DOMReference)
bool[] TypeReferenceReload {get; set;} // Via attribution [[DOMObject]]
A Dirkasaurus-Rex Boolean Factory
bool Validated {get; set;} // Via attribution [[DOMObject]]
True if this object has a template ID and that Object Template was found in a container attached to the worldspace in which this view is running.
bool Visible {get; set;} // Via attribution [[DOMObject]]
Marks a node as visible or not visible to connected clients. When toggled, the server sends RemoveNode / AddNode packets, so from a client perspective it's as though the node is added or removed from the DOM. It can be useful to hide nodes that will be used or cloned by scripts. It can be useful to mark a node as not visible before making many changes to it's subtree to reduce network traffic, although BeginUpdate and EndUpdate are better suited for this.

Events

OnDeselect(EventHandler<FlexibleEventArgs>)
OnSelect(EventHandler<FlexibleEventArgs>)
OnTarget(EventHandler<FlexibleEventArgs>)
OnUnTarget(EventHandler<FlexibleEventArgs>)

Methods

void AddClass(string className)
DOMObjectExtended Clone(DOMObjectExtended parentNode, bool forceEnable, bool forceVisible)
DOMCurveExtended CreateCurve(string title, bool visible)
DOMCurveExtended CreateCurveFromJson(string json)
DOMObjectExtended CreateEmptyNode(bool visible)
DOMObjectExtended CreateHookpoint(string title, bool visible)
DOMObjectExtended CreateLight(int color, Single intensity, int shadowtype, Single shadowstrength, JSVector3 position, JSVector3 rotation)
DOMObjectExtended CreateNode(string templateIDText, bool visible)
DOMObjectExtended CreateTitleNode(string title, int index, bool visible)
bool DeleteNode()
DOMControllerExtended FindController()
DOMObjectExtended FindNode(string name)
ReturnType FindNodes(string name)
ReturnType FindNodesWithProperty(string propertyName)
DOMControllerExtended FindParentController()
ReturnType GetAttributeValue(string attributeName)
ReturnType GetChildren()
bool HasAttribute(string attributeName)
bool HasClass(string className)
bool ListenOnChannel(int channelID, JSFlexibleFunction func)
bool MatchesSelector(string selector)
DOMObjectExtended QuerySelector(string selector)
DOMObjectExtended[] QuerySelectorAll(string selector)
void RemoveClass(string className)
bool SendMessage(int channel, string message, DOMObjectExtended source)
void ToggleClass(string className)