package org.rosuda.JClaR;

import java.text.NumberFormat;
import java.util.Enumeration;
import java.util.Vector;
import javax.swing.JFrame;
import javax.swing.JPanel;


public abstract class SidePanel extends JPanel {

    /** Autogenerated proxy constructor. */
    SidePanel() {
        super();
    }

    JFrame parent;    
    boolean noRecalc;
    NumberFormat numberFormat;
    
    private Vector listeners = new Vector();
    
    final void setParent(final JFrame parent){
        this.parent=parent;
    }
    
    final void fire(final int message){
        for(final Enumeration en = listeners.elements(); en.hasMoreElements();) {
            ((SimpleChangeListener)en.nextElement()).stateChanged(new SimpleChangeEvent(this,message));
        }
        
    }
    
    final void addSimpleChangeListener(final SimpleChangeListener scl){
        listeners.add(scl);
    }
    
    abstract boolean getAutoRecalc();
    
    static final int EVT_TRAIN = 0;
    static final int EVT_UPDATE_PLOT = 1;

}
