Difference between revisions of "IDOMObjectExtended"

From Virtual World Web Wiki
Jump to: navigation, search
(Documentation for the IDOMObjectExtended class)
(Documentation for the IDOMObjectExtended class)
Line 4: Line 4:
 
===Remarks <nowiki>[</nowiki>[{{fullurl:IDOMObjectExtended Remarks|action=edit}} edit]<nowiki>]</nowiki>===
 
===Remarks <nowiki>[</nowiki>[{{fullurl:IDOMObjectExtended Remarks|action=edit}} edit]<nowiki>]</nowiki>===
 
{{#ifexist:IDOMObjectExtended Remarks|{{:IDOMObjectExtended Remarks}}|}}
 
{{#ifexist:IDOMObjectExtended Remarks|{{:IDOMObjectExtended Remarks}}|}}
 
===Properties===
 
:{{CSharp|Guid? BaseTypeID {get; set;} // Via attribution on DOMObject }}
 
::
 
::The type ID of the root [[Object Type]] in a derived [[Object Type Reference]] chain
 
 
:{{CSharp|string Class {get; set;} // Via attribution on 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
 
 
:{{CSharp|bool Enabled {get; set;} // Via attribution on 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.
 
 
:{{CSharp|long ID {get; set;} // Via attribution on 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
 
 
:{{CSharp|Guid? InstanceTypeID {get; set;} // Via attribution on DOMObject }}
 
::
 
::The type ID of the next [[Object Type]] up the hierarchy in a derived [[Object Type Reference]] chain
 
 
:{{CSharp|bool IsInstanceRoot {get;} // Via attribution on DOMObject }}
 
::
 
::True if this node is the root node in an [[Object Type Reference]]
 
 
:{{CSharp|bool IsTemplateRoot {get;} // Via attribution on DOMObject }}
 
::
 
::True if this node represents the root node of an instance of an [[Object Template]]
 
 
:{{CSharp|bool IsTypeRoot {get; set;} // Via attribution on DOMObject }}
 
::
 
::True if this node represents the root node of an [[Object Type]]
 
 
:{{CSharp|Guid NodeID {get; set;} // Via attribution on DOMObject }}
 
::
 
::Unique ID set on first creation (not sure how this is different than RecordID)
 
 
:{{CSharp|DOMProtectionFlags ProtectionFlags {get; set;} // Via attribution on 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.
 
 
:{{CSharp|Guid TemplateID {get; set;} // Via attribution on DOMObject }}
 
::
 
::If this node is part of an instaniated [[Object Template]] this property will contain the ID of the template
 
 
:{{CSharp|bool Temporary {get; set;} // Via attribution on 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.
 
 
:{{CSharp|string Title {get; set;} // Via attribution on 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
 
 
:{{CSharp|bool Transient {get; set;} // Via attribution on 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.
 
 
:{{CSharp|Guid TypeID {get; set;} // Via attribution on 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
 
 
:{{CSharp|int TypeNodeID {get; set;} // Via attribution on 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.
 
 
:{{CSharp|bool TypeReference {get; set;} // Via attribution on 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)
 
 
:{{CSharp|TypeReferenceUpdate TypeReferenceReload {get; set;} // Via attribution on DOMObject }}
 
::
 
::A Dirkasaurus-Rex Boolean Factory
 
 
:{{CSharp|bool Validated {get; set;} // Via attribution on 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.
 
 
:{{CSharp|bool Visible {get; set;} // Via attribution on 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.
 
  
 
__NOTOC____NOEDITSECTION__
 
__NOTOC____NOEDITSECTION__

Revision as of 21:25, 12 April 2017

An interface to a Layer One DOMObjectExtended javascript object. These will only be passed in to Layer Two methods that are offered to the JavaScript environment, and would be dangerous to access outside of one of those calls which always happen in the context of a JavaScript Isolate thread

  • This is a JavaScript visible object

Remarks [edit]