package genegui; import java.io.*; import main.*; /** GuiInterface.java This interface provides all the methods that need to be implemeted by classes in the GUI that need to respond to changes in the node and effector templates, parameter set or over-all network or cell surface layout. @author WJS */ public interface GuiInterface { /** Called when a change is made to the passed AffectorTemplate @param in operation @param AffectorTemplate affectorTemplate @param GuiInterface source - Originator of this interface change. @author WJS */ public void affectorTemplateChanged(int operation, AffectorTemplate affectorTemplate, GuiInterface source); /** Static values for affector/node template change */ public static final int ADDED = 0; public static final int CHANGED = 1; public static final int REMOVED = 2; /** Method for invoking general network IO operations. @param int operation - The network IO operation code. @param File file - The file if needed, else don't care. @author WJS */ public boolean networkIO(int operation, File file); /** Static values for newtworkIO operations */ public static final int CLOSE=0; public static final int EXIT=1; public static final int IS_MODEL=2; public static final int IS_ITERATOR=3; public static final int NEW=4; public static final int OPEN=5; public static final int SAVE=6; /** Called when a change is made to the passed NodeTemplate @param int operation @param NodeTemplate nodeTemplate @param GuiInterface source - Originator of this interface change. @author WJS */ public void nodeTemplateChanged(int operation, NodeTemplate nodeTemplate, GuiInterface source); /** Called when a change is made to a parameter or the whole parameter set @param int operation @param int parameterNumber @param GuiInterface source - Originator of this interface change. @author WJS */ public void parameterSetChanged(int operation, int parameterNumber, GuiInterface source); /** Static values for parameter set change operation */ public static final int PARAMETER_ADDED = 0; public static final int PARAMETER_CHANGED = 1; public static final int PARAMETER_SET_CHANGED = 2; public static final int PARAMETER_REMOVED = 3; /** Method for controling model/iterator runs. @param int operation - Run control code. @author WJS */ public void runControl(int operation); /** Static values for runControl operations */ public static final int RUN_MODEL = 0; public static final int STEP_MODEL = 1; public static final int RESET_MODEL = 2; public static final int RUN_ITERATOR = 3; public static final int STEP_ITERATOR = 4; public static final int STOP_ITERATOR = 5; public static final int RESET_ITERATOR = 6; /** Method for reporting status of the model/iterator runs @param int operation - Run status code. @author WJS */ public void runStatus(int operation); public static final int MODEL_STARTED = 0; public static final int MODEL_STOPPED = 1; public static final int ITERATOR_STARTED = 2; public static final int ITERATOR_STOPPED = 3; }