All Downloads are FREE. Search and download functionalities are using the official Maven repository.

jaxx.runtime.JAXXObject Maven / Gradle / Ivy

The newest version!
/*
 * Copyright 2006 Ethan Nicholas. All rights reserved.
 * Use is subject to license terms.
 */
package jaxx.runtime;

/** The JAXXObject interface is implemented by all classes produced by the JAXX compiler. */
public interface JAXXObject extends JAXXContext {
    /**
     * Retrieves an object defined in an XML tag by its ID.
     *
     * @param id the id of the component to retrieve
     * @return the object
     */
    public Object getObjectById(String id);

    /**
     * Pretrieves the dictonary of knwon objects indexed by their ids.
     *
     * @return the dictonary of objects.
     */
    public java.util.Map get$objectMap();

    public void applyDataBinding(String id);


    public void removeDataBinding(String id);

    public jaxx.runtime.JAXXContext getDelegateContext();

    /**
     * Processes a data binding by name.  Data binding names are comprised of an object ID and a property name:
     * for example, the data binding in the tag <JLabel id='label' text='{foo.getText()}'/> is
     * named "label.text".  Processing a data binding causes it to reevaluate its expression, in this
     * case foo.getText().
     *
     * @param dest the name of the data binding to run
     */
    public void processDataBinding(String dest);


    /**
     * All JAXXObject implements are capable of broadcasting PropertyChangeEvent, and
     * furthermore (for technical reasons) must allow code in outside packages, specifically the JAXX runtime,
     * to trigger these events.
     *
     * @param name     the name of the property which changed
     * @param oldValue the old value of the property
     * @param newValue the new value of the property
     */
    public void firePropertyChange(String name, Object oldValue, Object newValue);
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy