Package ptolemy.kernel.util

Examples of ptolemy.kernel.util.ValueListener


        if (previousName != null && !previousName.equals(name)) {
            try {
                if (_valueListeners != null) {
                    Iterator listeners = _valueListeners.iterator();
                    while (listeners.hasNext()) {
                        ValueListener listener = (ValueListener) listeners
                                .next();
                        if (listener instanceof Variable) {
                            // The listener could be referencing this variable.
                            ParseTreeFreeVariableRenamer renamer = new ParseTreeFreeVariableRenamer();
                            ((Variable) listener)._parseIfNecessary();
                            renamer.renameVariables(
                                    ((Variable) listener)._parseTree,
                                    (Variable) listener, this, name);
                            ParseTreeWriter writer = new ParseTreeWriter();
                            ((Variable) listener)
                                    .setExpression(writer
                                            .parseTreeToExpression(((Variable) listener)._parseTree));
                            changed.add(listener);
                        }
                    }
                }
                super.setName(name);
                // With the new name, we may now shadow variables that
                // were not previously shadowed. Invalidate those.
                _invalidateShadowedSettables(getContainer());
                validate();
            } catch (IllegalActionException ex) {
                // Reverse the changes above.
                super.setName(previousName);
                Iterator listeners = changed.iterator();
                while (listeners.hasNext()) {
                    Variable listener = (Variable) listeners.next();
                    // The listener could be referencing this variable.
                    ParseTreeFreeVariableRenamer renamer = new ParseTreeFreeVariableRenamer();
                    renamer.renameVariables(listener._parseTree, listener,
                            this, previousName);
                    ParseTreeWriter writer = new ParseTreeWriter();
                    listener.setExpression(writer
                            .parseTreeToExpression(listener._parseTree));
                }
                // Make sure to re-evaluate dependent variables.
                validate();
                throw (ex);
View Full Code Here


            synchronized (this) {
                listeners = (new LinkedList(_valueListeners)).iterator();
            }

            while (listeners.hasNext()) {
                ValueListener listener = (ValueListener) listeners.next();
                listener.valueChanged(this);
            }
        }
    }
View Full Code Here

            synchronized (this) {
                listeners = (new LinkedList(_valueListeners)).iterator();
            }

            while (listeners.hasNext()) {
                ValueListener listener = (ValueListener) listeners.next();

                // Avoid doing this more than once if the the value
                // dependent appears more than once.  This also has
                // the advantage of stopping circular reference looping.
                if (listener instanceof Variable) {
View Full Code Here

TOP

Related Classes of ptolemy.kernel.util.ValueListener

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.