Difference between revisions of "JSDOMObject"

From Virtual World Web Wiki
Jump to: navigation, search
(Documentation for the JSDOMObject class)
(Documentation for the JSDOMObject class)
 
(7 intermediate revisions by the same user not shown)
Line 65: Line 65:
 
::
 
::
 
::Does this DOMObject have a TypeID?
 
::Does this DOMObject have a TypeID?
 +
 +
:{{CSharp|JSDOMLoader Loader {get;} }}
 +
::
 +
::Gets the JSDOMLoader for this object with information about the actual loaded resource
  
 
:{{CSharp|JSDOMObject Parent {get;} }}
 
:{{CSharp|JSDOMObject Parent {get;} }}
Line 71: Line 75:
  
 
:{{CSharp|JSDOMObject RootObject {get;} }}
 
:{{CSharp|JSDOMObject RootObject {get;} }}
 +
 +
:{{CSharp|JSVector3 ScreenPosition {get;} }}
 +
 +
:{{CSharp|DateTime ServerTime {get;} }}
  
 
:{{CSharp|bool UserEditable {get;} }}
 
:{{CSharp|bool UserEditable {get;} }}
 
::
 
::
 
::Is this object flagged as UserEditable (should scripts related to editting allow changes to this object?)
 
::Is this object flagged as UserEditable (should scripts related to editting allow changes to this object?)
 +
 +
:{{CSharp|JSVector3 WorldPosition {get;} }}
  
 
===Events===
 
===Events===
Line 104: Line 114:
 
::
 
::
 
::Event fired whenever any property changes on this DOMObject
 
::Event fired whenever any property changes on this DOMObject
 +
 +
:{{CSharp|Removed()}}
  
 
===Methods===
 
===Methods===
 
:{{CSharp|ReturnType AnimCurve(string curveName)}}
 
:{{CSharp|ReturnType AnimCurve(string curveName)}}
 +
 +
:{{CSharp|void ForceLOD(int index {{=}} -1)}}
  
 
:{{CSharp|ReturnType GetAttribute(string attributeName)}}
 
:{{CSharp|ReturnType GetAttribute(string attributeName)}}
Line 196: Line 210:
 
::Returns if the property is a supposed to be uniform in value across axes. Probably only relevant for Point3D and generally only applies to Scale property.
 
::Returns if the property is a supposed to be uniform in value across axes. Probably only relevant for Point3D and generally only applies to Scale property.
  
:{{CSharp|bool GetPropertyUserEditable(string propertyName, DOMEditable accessLevel {{=}} DOMEditable.Design)}}
+
:{{CSharp|bool GetPropertyUserEditable(string propertyName, DOMEditable accessLevel {{=}} DOMEditable.Stage)}}
  
 
:{{CSharp|JSVector3 GetRotation()}}
 
:{{CSharp|JSVector3 GetRotation()}}
Line 206: Line 220:
 
::Returns all system property names for this object
 
::Returns all system property names for this object
  
:{{CSharp|IEnumerable<string> GetUserEditableProperties(DOMEditable accessLevel {{=}} DOMEditable.Design)}}
+
:{{CSharp|IEnumerable<string> GetUserEditableProperties(DOMEditable accessLevel {{=}} DOMEditable.Stage)}}
 
::
 
::
 
::Returns all property names with the requested level of UserEditable for this object
 
::Returns all property names with the requested level of UserEditable for this object
Line 243: Line 257:
 
::
 
::
 
::Removes a property from this DOMObject by name
 
::Removes a property from this DOMObject by name
 +
 +
:{{CSharp|void RotateTowardsCamera(JSVector3 orientation {{=}} NULL)}}
  
 
:{{CSharp|bool SendScriptMessage(int channel, string msg)}}
 
:{{CSharp|bool SendScriptMessage(int channel, string msg)}}
Line 252: Line 268:
 
::
 
::
 
::Sets the named blendshape weight in the AppliedBlendShapes property
 
::Sets the named blendshape weight in the AppliedBlendShapes property
 +
 +
:{{CSharp|bool SetLocalBool(string name, bool value)}}
 +
::
 +
::Sets a new boolean property on the DOMObject
 +
 +
:{{CSharp|bool SetLocalColor(string name, Color32 value)}}
 +
::
 +
::Sets a new Color property on the DOMObject
 +
 +
:{{CSharp|bool SetLocalFloat(string name, float value)}}
 +
::
 +
::Sets a new floating value property on the DOMObject
 +
 +
:{{CSharp|bool SetLocalGuid(string name, string value)}}
 +
::
 +
::Sets a new GUID property on the DOMObject
 +
 +
:{{CSharp|bool SetLocalInt(string name, int value)}}
 +
::
 +
::Sets a new integer property on the DOMObject
 +
 +
:{{CSharp|bool SetLocalResourceValue(string name, ResourceValue value)}}
 +
::
 +
::Sets a new ResourceValue property on the DOMObject
 +
 +
:{{CSharp|bool SetLocalString(string name, string value)}}
 +
::
 +
::Sets a new String property on the DOMObject
 +
 +
:{{CSharp|bool SetLocalStringArray(string name, string[] value)}}
 +
::
 +
::Sets a new String[] property on the DOMObject
  
 
:{{CSharp|bool SetPosition(JSVector3 value)}}
 
:{{CSharp|bool SetPosition(JSVector3 value)}}
  
:{{CSharp|bool SetPropertyBool(string name, bool value)}}
+
:{{CSharp|bool SetPropertyBool(string name, bool value, DOMEditable accessLevel {{=}} DOMEditable.Stage)}}
 
::
 
::
 
::Sets a new boolean property on the DOMObject
 
::Sets a new boolean property on the DOMObject
  
:{{CSharp|bool SetPropertyColor(string name, Color32 value)}}
+
:{{CSharp|bool SetPropertyColor(string name, Color32 value, DOMEditable accessLevel {{=}} DOMEditable.Stage)}}
 
::
 
::
 
::Sets a new Color property on the DOMObject
 
::Sets a new Color property on the DOMObject
  
:{{CSharp|bool SetPropertyEnum(string name, string enumTypeName, int value)}}
+
:{{CSharp|bool SetPropertyEnum(string name, string enumTypeName, int value, DOMEditable accessLevel {{=}} DOMEditable.Stage)}}
 
::
 
::
 
::Set an Enum property by value
 
::Set an Enum property by value
  
:{{CSharp|bool SetPropertyEnumName(string name, string enumTypeName, string value)}}
+
:{{CSharp|bool SetPropertyEnumName(string name, string enumTypeName, string value, DOMEditable accessLevel {{=}} DOMEditable.Stage)}}
 
::
 
::
 
::Set an Enum property by string representation
 
::Set an Enum property by string representation
  
:{{CSharp|bool SetPropertyFloat(string name, float value)}}
+
:{{CSharp|bool SetPropertyFloat(string name, float value, DOMEditable accessLevel {{=}} DOMEditable.Stage)}}
 
::
 
::
 
::Sets a new floating value property on the DOMObject
 
::Sets a new floating value property on the DOMObject
  
:{{CSharp|bool SetPropertyGuid(string name, string value)}}
+
:{{CSharp|bool SetPropertyGuid(string name, string value, DOMEditable accessLevel {{=}} DOMEditable.Stage)}}
 
::
 
::
 
::Sets a new GUID property on the DOMObject
 
::Sets a new GUID property on the DOMObject
  
:{{CSharp|bool SetPropertyInt(string name, int value)}}
+
:{{CSharp|bool SetPropertyInt(string name, int value, DOMEditable accessLevel {{=}} DOMEditable.Stage)}}
 
::
 
::
 
::Sets a new integer property on the DOMObject
 
::Sets a new integer property on the DOMObject
  
:{{CSharp|bool SetPropertyResourceValue(string name, ResourceValue value)}}
+
:{{CSharp|bool SetPropertyResourceValue(string name, ResourceValue value, DOMEditable accessLevel {{=}} DOMEditable.Stage)}}
 
::
 
::
 
::Sets a new ResourceValue property on the DOMObject
 
::Sets a new ResourceValue property on the DOMObject
  
:{{CSharp|bool SetPropertyString(string name, string value)}}
+
:{{CSharp|bool SetPropertyString(string name, string value, DOMEditable accessLevel {{=}} DOMEditable.Stage)}}
 
::
 
::
 
::Sets a new String property on the DOMObject
 
::Sets a new String property on the DOMObject
  
:{{CSharp|bool SetPropertyStringArray(string name, string[] value)}}
+
:{{CSharp|bool SetPropertyStringArray(string name, string[] value, DOMEditable accessLevel {{=}} DOMEditable.Stage)}}
 
::
 
::
 
::Sets a new String[] property on the DOMObject
 
::Sets a new String[] property on the DOMObject
  
:{{CSharp|bool SetPropertyVector3(string name, JSVector3 value)}}
+
:{{CSharp|bool SetPropertyVector3(string name, JSVector3 value, DOMEditable accessLevel {{=}} DOMEditable.Stage)}}
 
::
 
::
 
::Sets a new Vector/Point3D property on the DOMObject
 
::Sets a new Vector/Point3D property on the DOMObject
Line 304: Line 352:
  
 
:{{CSharp|bool SetSize(JSVector3 value)}}
 
:{{CSharp|bool SetSize(JSVector3 value)}}
 +
 +
:{{CSharp|JSVector3 WorldToScreenPoint(JSVector3 worldPos)}}
  
 
__NOTOC____NOEDITSECTION__
 
__NOTOC____NOEDITSECTION__

Latest revision as of 17:25, 11 September 2019

  • This is a JavaScript visible object

Remarks [edit]

Properties

bool AllowDrop {get; set;}
Should we fire Drag/Drop events when moving UI elements over this object?
bool ClientVisible {get;}
Is this object flagged as ClientVisible (should scripts related to editting display this object?)
bool ClientWritable {get;}
bool Collapsable {get;}
Is this object flagged as Collapsable (should scripts related to editting simplify this object into its parent?)
string DOMType {get;}
Returns the string name of this DOMObject's type (i.e.: "DOMRenderable" for a DOMRenderable)
JSDOMObject Document {get;}
Returns the first DOMDocument in this DOMObject's parent hierarchy (including itself)
int Editable {get;}
Returns the editting flags of this object (which contexts should we allow edits in?)
bool HasChildren {get;}
Returns true if this DOMObject has any child nodes.
bool IsAvatar {get; set;}
Returns true if this DOMObject is a DOMController
bool IsFailed {get;}
Returns true if this DOMObject has reached a failure state during loading
bool IsLeafNode {get;}
Is this DOMObject a leaf node and therefore unable to have child nodes (DOMMaterial, DOMCollider, DOMAudio, etc)
bool IsLoaded {get;}
Returns true if this DOMObject has finished loading into its scene or MiniDOM.
bool IsParticipant {get; set;}
Returns true if this DOMObject is a DOMController in a Persona document
bool IsSelf {get; set;}
Returns true if this DOMObject is a DOMController in the Persona document matching your PersonaID
bool IsTemplate {get;}
Does this DOMObject have a TemplateID?
bool IsType {get;}
Does this DOMObject have a TypeID?
JSDOMLoader Loader {get;}
Gets the JSDOMLoader for this object with information about the actual loaded resource
JSDOMObject Parent {get;}
Returns the immediate parent of this DOMObject
JSDOMObject RootObject {get;}
JSVector3 ScreenPosition {get;}
DateTime ServerTime {get;}
bool UserEditable {get;}
Is this object flagged as UserEditable (should scripts related to editting allow changes to this object?)
JSVector3 WorldPosition {get;}

Events

DragDrop()
Event fired when dropping a UI element onto this object if it is set to AllowDrop
DragEnter()
Event fired when dragging a UI element over this object if it is set to AllowDrop
DragExit()
Event fired when dragging a UI element off this object if it is set to AllowDrop
OnChildAdded()
Event fired when a new child is added to this DOMObject
OnCreated()
Event fired when a DOMObject finishes loading into the Scene or MiniDOM (fires immediately if the object is already loaded)
OnFailedLoad()
Event fired if a DOMObject fails to load for any reason (fires immediately if the object is already in a failed loading state)
OnUpdate()
Event fired whenever any property changes on this DOMObject
Removed()

Methods

ReturnType AnimCurve(string curveName)
void ForceLOD(int index = -1)
ReturnType GetAttribute(string attributeName)
Returns the value of a given attribute on this DOMObject
float? GetBlendWeight(string blendshapeName)
Requests the named blendshape weight from inside the AppliedBlendShapes property
IEnumerable<long> GetChildren(string filters = NULL)
IEnumerable<JSDOMObject> GetChildrenObjects(string filters = NULL)
IEnumerable<string> GetCollapsableProperties()
Returns all property names flagged as "Collapsable" for this object
IEnumerable<long> GetDeepChildrenByName(string title = NULL)
Traverses the complete child hierarchy of this object, returning all instances nodes with Titles matching the given title.
IEnumerable<long> GetDeepChildrenByType(string type = NULL)
Traverses the complete child hierarchy of this object, returning all instances of a given type found.
string GetDependent(string propertyName)
string GetDependentRegex(string propertyName)
string GetEnumEntries(string enumTypeName)
Get string values for a given enumeration
string[] GetEnumNames(string enumTypeName)
ReturnType GetLocalProperty(string name)
Returns a given property from the LocalProperty collection (for storing data that does not get shared with the server)
JSDOMObject GetParent()
JSVector3 GetPosition()
IEnumerable<string> GetProperties(bool includeSystem = false)
Gets names of all properties on this DOMObject
IEnumerable<string> GetPropertiesWithAttribute(string attributeName)
ReturnType GetProperty(string name)
Returns the value of a given property (or null if the property was not found)
ReturnType GetPropertyAttribute(string propertyName, string attributeName)
Returns the value of a given attribute on a particular property for this DOMObject
string GetPropertyCategory(string name)
Returns the translated category name for a property to appear in for editting scripts
bool GetPropertyCollapsable(string name)
Is a given property flagged as Collapsable (should scripts simplifying this object display a particular property in their simplified view?)
string GetPropertyDisplayName(string name)
Gets the translated display name of a property (if one exists)
string[] GetPropertyDropDownItems(string name)
Returns the DropDownItems metadata of a given property if there is one. Helps editting tools display UI.
float? GetPropertyMaximum(string name)
Return the defined maximum value for a property to help with editting scripts
float? GetPropertyMinimum(string name)
Return the defined minimum value for a property to help with editting scripts
string GetPropertyResourceTypes(string propertyName)
string GetPropertyType(string propertyName)
bool GetPropertyUniform(string name)
Returns if the property is a supposed to be uniform in value across axes. Probably only relevant for Point3D and generally only applies to Scale property.
bool GetPropertyUserEditable(string propertyName, DOMEditable accessLevel = DOMEditable.Stage)
JSVector3 GetRotation()
JSVector3 GetScale()
IEnumerable<string> GetSystemPropertyNames()
Returns all system property names for this object
IEnumerable<string> GetUserEditableProperties(DOMEditable accessLevel = DOMEditable.Stage)
Returns all property names with the requested level of UserEditable for this object
string GetValueRegex(string propertyName)
bool IsEnumType(string typeName)
bool IsSystemProperty(string name)
Returns whether or not this property's name is one of the ones used by system properties on this object.
bool MatchesSelector(string selector)
Returns validity of this DOMObject under the selector
bool MoveAvatarToObject()
Positions and rotates the avatar to match this DOMObject's world position and y-axis rotation
bool MoveObjectToAvatar()
Positions and rotates this DOMObject to match the avatar's position and rotation.
bool PlayEffect(string effectname, string bone, bool play)
JSDOMObject QuerySelector(string selector)
Returns the first DOMObject matching the CSS selector within this object's hierarchy
IEnumerable<JSDOMObject> QuerySelectorAll(string selector)
Returns all DOMObjects matching the CSS selector within this object's hierarchy
bool RemoveProperty(string name)
Removes a property from this DOMObject by name
void RotateTowardsCamera(JSVector3 orientation = NULL)
bool SendScriptMessage(int channel, string msg)
Sends a message to any server scripts listening to this DOMObject on a given message channel.
Note: Channel 1 is a protected channel
bool SetBlendWeight(string blendshapeName, float weight)
Sets the named blendshape weight in the AppliedBlendShapes property
bool SetLocalBool(string name, bool value)
Sets a new boolean property on the DOMObject
bool SetLocalColor(string name, Color32 value)
Sets a new Color property on the DOMObject
bool SetLocalFloat(string name, float value)
Sets a new floating value property on the DOMObject
bool SetLocalGuid(string name, string value)
Sets a new GUID property on the DOMObject
bool SetLocalInt(string name, int value)
Sets a new integer property on the DOMObject
bool SetLocalResourceValue(string name, ResourceValue value)
Sets a new ResourceValue property on the DOMObject
bool SetLocalString(string name, string value)
Sets a new String property on the DOMObject
bool SetLocalStringArray(string name, string[] value)
Sets a new String[] property on the DOMObject
bool SetPosition(JSVector3 value)
bool SetPropertyBool(string name, bool value, DOMEditable accessLevel = DOMEditable.Stage)
Sets a new boolean property on the DOMObject
bool SetPropertyColor(string name, Color32 value, DOMEditable accessLevel = DOMEditable.Stage)
Sets a new Color property on the DOMObject
bool SetPropertyEnum(string name, string enumTypeName, int value, DOMEditable accessLevel = DOMEditable.Stage)
Set an Enum property by value
bool SetPropertyEnumName(string name, string enumTypeName, string value, DOMEditable accessLevel = DOMEditable.Stage)
Set an Enum property by string representation
bool SetPropertyFloat(string name, float value, DOMEditable accessLevel = DOMEditable.Stage)
Sets a new floating value property on the DOMObject
bool SetPropertyGuid(string name, string value, DOMEditable accessLevel = DOMEditable.Stage)
Sets a new GUID property on the DOMObject
bool SetPropertyInt(string name, int value, DOMEditable accessLevel = DOMEditable.Stage)
Sets a new integer property on the DOMObject
bool SetPropertyResourceValue(string name, ResourceValue value, DOMEditable accessLevel = DOMEditable.Stage)
Sets a new ResourceValue property on the DOMObject
bool SetPropertyString(string name, string value, DOMEditable accessLevel = DOMEditable.Stage)
Sets a new String property on the DOMObject
bool SetPropertyStringArray(string name, string[] value, DOMEditable accessLevel = DOMEditable.Stage)
Sets a new String[] property on the DOMObject
bool SetPropertyVector3(string name, JSVector3 value, DOMEditable accessLevel = DOMEditable.Stage)
Sets a new Vector/Point3D property on the DOMObject
bool SetRotation(JSVector3 value)
bool SetScale(JSVector3 value)
bool SetSize(JSVector3 value)
JSVector3 WorldToScreenPoint(JSVector3 worldPos)