com.wolfram.jlink
Class MathVetoableChangeListener

java.lang.Object
  extended by com.wolfram.jlink.MathListener
      extended by com.wolfram.jlink.MathVetoableChangeListener
All Implemented Interfaces:
java.beans.VetoableChangeListener, java.util.EventListener

public class MathVetoableChangeListener
extends MathListener
implements java.beans.VetoableChangeListener

This class lets you trigger a call into Mathematica on the occurrence of a particular event. Like all the MathXXXListener classes, it is intended to be used primarily from Mathematica, although it can be used from Java code as well.

In response to a PropertyChangeEvent, objects of this class send to Mathematica:

     userFunc[thePropertyChangeEvent]
userFunc is specified as a string, either a function name or an expression (like a pure function "foo[#]&"), via the setHandler() method.

To veto the property change, have userFunc return False.


Constructor Summary
MathVetoableChangeListener()
          The constructor that is typically called from Mathematica.
MathVetoableChangeListener(KernelLink ml)
          You must use this constructor when using this class in a Java program, because you need to specify the KernelLink that will be used.
MathVetoableChangeListener(java.lang.String func)
          Because the PropertyChangeListener interface has only one method, vetoableChange(), you can specify the Mathematica function to be called with this constructor, rather than having to separately call setHandler().
 
Method Summary
 void vetoableChange(java.beans.PropertyChangeEvent e)
           
 
Methods inherited from class com.wolfram.jlink.MathListener
callMathHandler, callVoidMathHandler, getHandler, getLink, setHandler
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MathVetoableChangeListener

public MathVetoableChangeListener()
The constructor that is typically called from Mathematica.


MathVetoableChangeListener

public MathVetoableChangeListener(KernelLink ml)
You must use this constructor when using this class in a Java program, because you need to specify the KernelLink that will be used.

Parameters:
ml - The link to which computations will be sent when PropertyChangeEvents arrive.

MathVetoableChangeListener

public MathVetoableChangeListener(java.lang.String func)
Because the PropertyChangeListener interface has only one method, vetoableChange(), you can specify the Mathematica function to be called with this constructor, rather than having to separately call setHandler(). Use this constructor from Mathematica code only.

Parameters:
func - The Mathematica function to be executed in response to a PropertyChangeEvent.
Method Detail

vetoableChange

public void vetoableChange(java.beans.PropertyChangeEvent e)
                    throws java.beans.PropertyVetoException
Specified by:
vetoableChange in interface java.beans.VetoableChangeListener
Throws:
java.beans.PropertyVetoException


J/Link is Copyright (c) 1999-2008, Wolfram Research, Inc. All rights reserved.