new geo.sceneObject(arg){geo.sceneObject}
Create a new instance of class sceneObject, which extends the object's event handling with a tree-based event propagation.
Name | Type | Description |
---|---|---|
arg |
object |
Options for the object. |
Returns:
Type | Description |
---|---|
geo.sceneObject |
Extends
Members
-
inherited idle
-
Getter for the idle state. Read only.
Properties:
Name Type Description idle
boolean true
if the object is idle (onIdle
would call a handler immediately).
Methods
-
addChild(child){this}
-
Add a child (or an array of children) to the object.
Name Type Description child
geo.object | Array.<geo.object> A child object or array of child objects.
Returns:
Type Description this -
addPromise(promise){this}
-
Add the promise here and also propagate up the scene tree.
Name Type Description promise
Promise A promise object.
Returns:
Type Description this -
children(){Array.<geo.object>}
-
Get an array of the child objects.
Returns:
Type Description Array.<geo.object> A copy of the array of child objects. -
draw(arg){this}
-
Force redraw of a scene object, to be implemented by subclasses. Base class just calls draw of child objects.
Name Type Description arg
object Options to pass to the child draw functions.
Returns:
Type Description this -
Report if an event handler is bound to this object.
Name Type Description event
string | Array.<string> An event or list of events to check.
handler
function optional A function that might be bound. If
undefined
, this will reporttrue
if there is any handler for the specified event.Returns:
Type Description boolean true if any of the specified events are bound to the specified handler. -
Remove handlers from one event or an array of events. If no event is provided all handlers will be removed.
Name Type Description event
string | Array.<string> optional An event or a list of events from
geo.event
or defined by the user, orundefined
to remove all events (in which casearg
is ignored).arg
function | Array.<function()> optional nullable A function or array of functions to remove from the events or a falsy value to remove all handlers from the events.
Returns:
Type Description this -
Bind an event handler to this object.
Name Type Description event
string An event from
geo.event
or a user-defined value.handler
function A function that is called when
event
is triggered. The function is passed ageo.event
object.Returns:
Type Description this -
Bind an event handler to this object that will fire once and then deregister itself.
Name Type Description event
string An event from
geo.event
or a user-defined value.handler
function A function that is called when
event
is triggered. The function is passed ageo.event
object.Returns:
Type Description function The actual bound handler. This is a wrapper around the handler that was passed to the function. -
geoTrigger(event, args, childrenOnly){this}
-
Trigger an event (or events) on this object and call all handlers.
Name Type Description event
string The event to trigger.
args
object Arbitrary argument to pass to the handler.
childrenOnly
boolean optional If truthy, only propagate down the tree.
Returns:
Type Description this -
inherited modified(){this}
-
Update the timestamp to the next global timestamp value.
Returns:
Type Description this -
Bind a handler that will be called one time when all internal promises are resolved. If there are no outstanding promises, this is invoked synchronously.
Name Type Description handler
function A function taking no arguments.
Returns:
Type Description this -
parent(arg){this|geo.sceneObject}
-
Get/set parent of the object.
Name Type Description arg
geo.sceneObject optional The new parant or
undefined
to get the current parent.Returns:
Type Description this | geo.sceneObject -
removeChild(child){this}
-
Remove a child (or array of children) from the object.
Name Type Description child
geo.object | Array.<geo.object> A child object or array of child objects.
Returns:
Type Description this -
removePromise(promise){this}
-
Remove the promise here and also propagate up the scene tree.
Name Type Description promise
Promise A promise object.
Returns:
Type Description this -
inherited timestamp(){number}
-
Get time.
Returns:
Type Description number The timestamp. This is 0 if the timestamp has never been modified.