Class AbstractNode

    • Constructor Detail

      • AbstractNode

        protected AbstractNode​(NativeObject nativeObject)
        Creates the object with native object to map java script properties.
        This is used for the root of tree composed by native objects.
        Parameters:
        nativeObject - native object to map java script properties
      • AbstractNode

        protected AbstractNode​(AbstractNode parent,
                               Key childKey,
                               NativeObject nativeObject)
        Creates the object with the parent, the key of this element, default values and native object to map java script properties.
        Parameters:
        parent - parent node to use to add this element where changed
        childKey - the property name of this element to use to add it to the parent.
        nativeObject - native object to map java script properties
    • Method Detail

      • getChildKey

        protected final Key getChildKey()
        Returns the property name to use to add this element to its parent.
        Returns:
        the childKey or null if is a root element.
      • getParentNode

        protected final AbstractNode getParentNode()
        Returns the parent node.
        Returns:
        the parent node or null if is a root node.
      • getRootNode

        protected final AbstractNode getRootNode()
        Returns the root node.
        Returns:
        the root node
      • getUpdateListener

        public final NodeUpdateListener getUpdateListener()
        Returns the update listener instance if there is.
        Returns:
        the update listener
      • setUpdateListener

        public final void setUpdateListener​(NodeUpdateListener updateListener)
        Sets an update listener instance to be invoked at every update.
        Parameters:
        updateListener - an update listener instance to be invoked at every update
      • setValueAndAddToParent

        protected final void setValueAndAddToParent​(Key key,
                                                    int value)
        Sets a value (int) in the embedded JavaScript object at specific property.
        Parameters:
        key - key of the property of JavaScript object.
        value - value to be set
      • setValueOrArrayAndAddToParent

        protected final void setValueOrArrayAndAddToParent​(Key key,
                                                           int... values)
        Sets a value (Array or integer) in the embedded JavaScript object at specific property.
        This must be used when a java script property can contain an array or a integer.
        Parameters:
        key - key of the property of JavaScript object.
        values - values of integers to be set
      • setValueAndAddToParent

        protected final void setValueAndAddToParent​(Key key,
                                                    double value)
        Sets a value (double) in the embedded JavaScript object at specific property.
        Parameters:
        key - key of the property of JavaScript object.
        value - value to be set
      • setValueOrArrayAndAddToParent

        protected final void setValueOrArrayAndAddToParent​(Key key,
                                                           double... values)
        Sets a value (Array or double) in the embedded JavaScript object at specific property.
        This must be used when a java script property can contain an array or a double.
        Parameters:
        key - key of the property of JavaScript object.
        values - values of doubles to be set
      • setValueAndAddToParent

        protected final void setValueAndAddToParent​(Key key,
                                                    boolean value)
        Sets a value (boolean) in the embedded JavaScript object at specific property.
        Parameters:
        key - key of the property of JavaScript object.
        value - value to be set
      • setValueAndAddToParent

        protected final void setValueAndAddToParent​(Key key,
                                                    String value)
        Sets a value (string) in the embedded JavaScript object at specific property.
        Parameters:
        key - key of the property of JavaScript object.
        value - value to be set
      • setValueOrArrayAndAddToParent

        protected final void setValueOrArrayAndAddToParent​(Key key,
                                                           String... values)
        Sets a value (Array or string) in the embedded JavaScript object at specific property.
        This must be used when a java script property can contain an array or a string.
        Parameters:
        key - key of the property of JavaScript object.
        values - values of strings to be set
      • setValueAndAddToParent

        protected final void setValueAndAddToParent​(Key key,
                                                    Date value)
        Sets a value (date) in the embedded JavaScript object at specific property.
        Parameters:
        key - key of the property of JavaScript object.
        value - value to be set
      • setValueAndAddToParent

        protected final void setValueAndAddToParent​(Key key,
                                                    NativeObject value)
        Sets a value (JavaScript Object) in the embedded JavaScript object at specific property.
        Parameters:
        key - key of the property of JavaScript object.
        value - value to be set
      • setValueAndAddToParent

        protected final void setValueAndAddToParent​(Key key,
                                                    NativeObjectContainer value)
        Sets a value (JavaScript Object) in the embedded JavaScript object at specific property by object container.
        Parameters:
        key - key of the property of JavaScript object.
        value - value to be set
      • setValueOrArrayAndAddToParent

        protected final void setValueOrArrayAndAddToParent​(Key key,
                                                           NativeObjectContainer... values)
        Sets a value (array or native object container) in the embedded JavaScript object at specific property.
        This must be used when a java script property can contain an array or a native object container.
        Parameters:
        key - key of the property of JavaScript object.
        values - native object containers to be set
      • setArrayValueAndAddToParent

        protected final void setArrayValueAndAddToParent​(Key key,
                                                         ArrayObjectContainerList<?> container)
        Sets a value (Array from a container list) in the embedded JavaScript object at specific property.
        Parameters:
        key - key of the property of JavaScript object.
        container - container of array
      • setValueAndAddToParent

        protected final void setValueAndAddToParent​(Key key,
                                                    NativeArrayContainer<?> value)
        Sets a value (JavaScript Object) in the embedded JavaScript object at specific property by array container.
        Parameters:
        key - key of the property of JavaScript object.
        value - value to be set
      • setArrayValueAndAddToParent

        protected final void setArrayValueAndAddToParent​(Key key,
                                                         ArrayDoubleArrayList<?> container)
        Sets a value (Array from a double array container list) in the embedded JavaScript object at specific property.
        Parameters:
        key - key of the property of JavaScript object.
        container - container of array of doubles
      • setValueAndAddToParent

        protected final void setValueAndAddToParent​(Key key,
                                                    CallbackProxy.Proxy value)
        Sets a value (callback proxy function) in the embedded JavaScript object at specific property.
        Parameters:
        key - key of the property of JavaScript object.
        value - value to be set
      • setValueAndAddToParent

        protected final void setValueAndAddToParent​(Key key,
                                                    NativeCallback value)
        Sets a value (callback function) in the embedded JavaScript object at specific property.
        Parameters:
        key - key of the property of JavaScript object.
        value - value to be set
      • setValueAndAddToParent

        protected final void setValueAndAddToParent​(Key key,
                                                    NativeInterpolator value)
        Sets a value (interpolator function for animations) in the embedded JavaScript object at specific property.
        Parameters:
        key - key of the property of JavaScript object.
        value - value to be set
      • setValueAndAddToParent

        protected final void setValueAndAddToParent​(Key key,
                                                    NativeHook value)
        Sets a value (hook function for plugin) in the embedded JavaScript object at specific property.
        Parameters:
        key - key of the property of JavaScript object.
        value - value to be set
      • setValueAndAddToParent

        protected final void setValueAndAddToParent​(Key key,
                                                    Canvas value)
        Sets a value (canvas) in the embedded JavaScript object at specific property.
        Parameters:
        key - key of the property of JavaScript object.
        value - value to be set
      • setValueOrArrayAndAddToParent

        protected final void setValueOrArrayAndAddToParent​(Key key,
                                                           Canvas... values)
        Sets a value (array or canvas) in the embedded JavaScript object at specific property.
        This must be used when a java script property can contain an array or a canvas.
        Parameters:
        key - key of the property of JavaScript object.
        values - canvas to be set
      • setValueAndAddToParent

        protected final void setValueAndAddToParent​(Key key,
                                                    Img value)
        Sets a value (image) in the embedded JavaScript object at specific property.
        Parameters:
        key - key of the property of JavaScript object.
        value - value to be set
      • setValueOrArrayAndAddToParent

        protected final void setValueOrArrayAndAddToParent​(Key key,
                                                           Img... values)
        Sets a value (array or image) in the embedded JavaScript object at specific property.
        This must be used when a java script property can contain an array or a image.
        Parameters:
        key - key of the property of JavaScript object.
        values - images to be set
      • setValueAndAddToParent

        protected final void setValueAndAddToParent​(Key key,
                                                    CanvasGradientItem value)
        Sets a value (gradient) in the embedded JavaScript object at specific property.
        Parameters:
        key - key of the property of JavaScript object.
        value - value to be set
      • setValueOrArrayAndAddToParent

        protected final void setValueOrArrayAndAddToParent​(Key key,
                                                           CanvasGradientItem... values)
        Sets a value (Array or gradient) in the embedded JavaScript object at specific property.
        This must be used when a java script property can contain an array or a gradient.
        Parameters:
        key - key of the property of JavaScript object.
        values - gradients to be set
      • setValueAndAddToParent

        protected final void setValueAndAddToParent​(Key key,
                                                    CanvasPatternItem value)
        Sets a value (pattern) in the embedded JavaScript object at specific property.
        Parameters:
        key - key of the property of JavaScript object.
        value - value to be set
      • setValueOrArrayAndAddToParent

        protected final void setValueOrArrayAndAddToParent​(Key key,
                                                           CanvasPatternItem... values)
        Sets a value (Array or pattern) in the embedded JavaScript object at specific property.
        This must be used when a java script property can contain an array or a pattern.
        Parameters:
        key - key of the property of JavaScript object.
        values - patterns to be set
      • setValueAndAddToParent

        protected final <T extends Key> void setValueAndAddToParent​(Key key,
                                                                    T value)
        Sets a value (EnumValue) in the embedded JavaScript object at specific property.
        Type Parameters:
        T - type of key
        Parameters:
        key - key of the property of JavaScript object.
        value - value to be set
      • setValueOrArrayAndAddToParent

        protected final void setValueOrArrayAndAddToParent​(Key key,
                                                           Key... values)
        Sets a value (Array or string by keys) in the embedded JavaScript object at specific property.
        This must be used when a java script property can contain an array or a string.
        Parameters:
        key - key of the property of JavaScript object.
        values - value of keys to be set
      • setArrayValueAndAddToParent

        protected final <T extends Array> void setArrayValueAndAddToParent​(Key key,
                                                                           T value)
        Sets a value (Array) in the embedded JavaScript object at specific property.
        Type Parameters:
        T - type of array
        Parameters:
        key - key of the property of JavaScript object.
        value - value to be set
      • setValueOrArrayAndAddToParent

        protected final void setValueOrArrayAndAddToParent​(Key key,
                                                           IsColor... values)
        Sets a value (Array or string by colors) in the embedded JavaScript object at specific property.
        This must be used when a java script property can contain an array or a string.
        Parameters:
        key - key of the property of JavaScript object.
        values - values of colors to be set
      • setValueAndAddToParent

        protected final void setValueAndAddToParent​(Key key,
                                                    Chart value)
        Sets a value (chart) in the embedded JavaScript object at specific property.
        Parameters:
        key - key of the property of JavaScript object.
        value - value to be set
      • setValueAndAddToParent

        protected final void setValueAndAddToParent​(Key key,
                                                    NativeBaseEvent value)
        Sets a value (event) in the embedded JavaScript object at specific property.
        Parameters:
        key - key of the property of JavaScript object.
        value - value to be set
      • setElementAndAddToParent

        protected final void setElementAndAddToParent​(Key key,
                                                      BaseHtmlElement value)
        Sets a value (BaseHtmlElement) in the embedded JavaScript object at specific property.
        Parameters:
        key - key of the property of JavaScript object.
        value - value to be set
      • setInternalCallbackToModel

        protected final void setInternalCallbackToModel​(AbstractNode model,
                                                        Key key,
                                                        CallbackProxy.Proxy proxy)
        Adds a proxy function to a model at the specific key.
        Parameters:
        model - element where adding the function proxy
        key - property name to use to add the function proxy
        proxy - the function proxy instance to add
      • setInternalCallbackToModel

        protected final void setInternalCallbackToModel​(AbstractNode model,
                                                        Key key,
                                                        NativeCallback callback)
        Adds a native callback function to a model at the specific key.
        Parameters:
        model - element where adding the function callback
        key - property name to use to add the function callback
        callback - the function callback instance to add
      • checkAndAddToParent

        protected final void checkAndAddToParent()
        Called recursively when a property has been set in the item.
        This is mandatory because it could happen that the parent item is not present, therefore it must be added.
      • retrieveRoot

        protected final AbstractNode retrieveRoot()
        Called recursively till the root of nodes.
        Returns:
        the root of the node