205 lines
6.0 KiB
Java
205 lines
6.0 KiB
Java
package javaeva.gui;
|
|
/*
|
|
* Title: JavaEvA
|
|
* Description:
|
|
* Copyright: Copyright (c) 2003
|
|
* Company: University of Tuebingen, Computer Architecture
|
|
* @author Holger Ulmer, Felix Streichert, Hannes Planatscher
|
|
* @version: $Revision: 284 $
|
|
* $Date: 2007-11-27 14:37:05 +0100 (Tue, 27 Nov 2007) $
|
|
* $Author: mkron $
|
|
*/
|
|
|
|
/*==========================================================================*
|
|
* IMPORTS
|
|
*==========================================================================*/
|
|
import java.io.Serializable;
|
|
import java.net.InetAddress;
|
|
|
|
import javaeva.server.modules.ModuleAdapter;
|
|
|
|
import java.awt.event.ActionEvent;
|
|
import java.awt.event.ActionListener;
|
|
import javax.swing.JButton;
|
|
import javax.swing.JComponent;
|
|
import javax.swing.JPanel;
|
|
|
|
import wsi.ra.jproxy.RMIProxyLocal;
|
|
import wsi.ra.jproxy.RemoteStateListener;
|
|
/*==========================================================================*
|
|
* CLASS DECLARATION
|
|
*==========================================================================*/
|
|
/**
|
|
*
|
|
*/
|
|
public class JModuleGeneralPanel implements RemoteStateListener, Serializable {
|
|
public static boolean TRACE = false;
|
|
private String m_Name ="undefined";
|
|
private ModuleAdapter m_Adapter;
|
|
private boolean m_State;
|
|
private JButton m_RunButton;
|
|
// private JButton m_RestartButton;
|
|
private JButton m_actStop;
|
|
// private JButton m_actExitMod;
|
|
private JButton m_JHelpButton;
|
|
private JPanel m_Panel;
|
|
private String m_HelperFileName;
|
|
|
|
/**
|
|
*
|
|
*/
|
|
public JModuleGeneralPanel(ModuleAdapter Adapter, boolean state) {
|
|
m_Name = "GENERAL";
|
|
m_State = state;
|
|
if (TRACE) System.out.println("Constructor JModuleGeneralPanel:");
|
|
m_Adapter = Adapter;
|
|
}
|
|
/**
|
|
*
|
|
*/
|
|
public JComponent installActions() {
|
|
String myhostname = null;
|
|
|
|
m_Panel= new JPanel();
|
|
if(TRACE) System.out.println("JModuleGeneral.installAction()");
|
|
if (m_Adapter.hasConnection()) { // we might be in rmi mode
|
|
try {
|
|
myhostname = InetAddress.getLocalHost().getHostName();
|
|
} catch (Exception e) {
|
|
System.err.println("ERROR getting myhostname "+e.getMessage());
|
|
}
|
|
}
|
|
if (!m_Adapter.hasConnection()) {
|
|
m_Adapter.addRemoteStateListener((RemoteStateListener)(this));
|
|
} else {// there is a network RMI connection
|
|
m_Adapter.addRemoteStateListener((RemoteStateListener)RMIProxyLocal.newInstance(this));
|
|
}
|
|
|
|
//////////////////////////////////////////////////////////////
|
|
m_RunButton= new JButton("Start Optimization");
|
|
m_RunButton.setToolTipText("Start the current optimization run.");
|
|
//System.out.println("Start tm_RunButton.addActionListener Run Opt pressed ====================!!!!!!!!!!!!!!!!!!");
|
|
m_RunButton.addActionListener(new ActionListener() {
|
|
public void actionPerformed(ActionEvent e){
|
|
//System.out.println("Run Opt pressed !!!!!!!!!!!!!!!!======================!!");
|
|
try {
|
|
m_Adapter.startOpt();
|
|
m_actStop.setEnabled(true);
|
|
m_RunButton.setEnabled(false);
|
|
// m_RestartButton.setEnabled(false);
|
|
m_JHelpButton.setEnabled(true);
|
|
} catch (Exception ee) {
|
|
ee.printStackTrace();
|
|
System.out.print ("Error in run: " +ee +" : " + ee.getMessage() );
|
|
}
|
|
}
|
|
}
|
|
);
|
|
|
|
if (m_State == false )
|
|
m_RunButton.setEnabled(true);
|
|
else
|
|
m_RunButton.setEnabled(false);
|
|
m_Panel.add(m_RunButton);
|
|
// m_Panel.setBorder(BorderFactory.createTitledBorder("general action buttons"));
|
|
// //////////////////////////////////////////////////////////////
|
|
// m_RestartButton= new JButton("Restart Optimization");
|
|
// m_RestartButton.setToolTipText("Restart the current optimization run.");
|
|
// m_RestartButton.addActionListener(new ActionListener() {
|
|
// public void actionPerformed(ActionEvent e){
|
|
// try {
|
|
// m_Adapter.restartOpt();
|
|
// m_actStop.setEnabled(true);
|
|
// m_RunButton.setEnabled(false);
|
|
// m_RestartButton.setEnabled(false);
|
|
// } catch (Exception ee) {
|
|
// ee.printStackTrace();
|
|
// System.out.println("Error in run: " +ee +" : " + ee.getMessage() );
|
|
// }
|
|
// }
|
|
// }
|
|
// );
|
|
// if (m_State == false )
|
|
// m_RestartButton.setEnabled(false);
|
|
// else
|
|
// m_RestartButton.setEnabled(false);
|
|
// m_Panel.add(m_RestartButton);
|
|
//////////////////////////////////////////////////////////////
|
|
m_actStop= new JButton("Stop");
|
|
m_actStop.setToolTipText("Stop the current optimization run.");
|
|
m_actStop.addActionListener(new ActionListener() {
|
|
public void actionPerformed(ActionEvent e){
|
|
try {
|
|
m_Adapter.stopOpt(); // this means user break
|
|
} catch (Exception ee) { System.out.print ("Error in stop: " + ee.getMessage() ); }
|
|
}
|
|
}
|
|
);
|
|
// if (m_State == false )
|
|
// m_RestartButton.setEnabled(false);
|
|
// else
|
|
// m_RestartButton.setEnabled(true);
|
|
m_Panel.add(m_actStop);
|
|
if (m_HelperFileName.equals("")== false) {
|
|
m_JHelpButton= new JButton("Description");
|
|
m_JHelpButton.setToolTipText("Description of the current optimization algorithm.");
|
|
m_JHelpButton.addActionListener(new ActionListener() {
|
|
public void actionPerformed(ActionEvent e){
|
|
//System.out.println("Run Opt pressed !!!!!!!!!!!!!!!!======================!!");
|
|
try {
|
|
if (m_HelperFileName!=null) {
|
|
HtmlDemo temp = new HtmlDemo(m_HelperFileName);
|
|
temp.show();
|
|
}
|
|
m_JHelpButton.setEnabled(true);
|
|
} catch (Exception ee) {
|
|
ee.printStackTrace();
|
|
System.out.print ("Error in run: " +ee +" : " + ee.getMessage() );
|
|
}
|
|
}
|
|
}
|
|
);
|
|
m_Panel.add(m_JHelpButton);
|
|
}
|
|
// m_actExitMod = new JButton("Exit Module");
|
|
// m_actExitMod.setToolTipText("todo !!.");// TODO
|
|
return m_Panel;
|
|
}
|
|
|
|
/**
|
|
*
|
|
*/
|
|
public void performedStop() {
|
|
if (TRACE) System.out.println("JModuleGeneralPanel.stopOptPerformed");
|
|
m_RunButton.setEnabled(true);
|
|
// m_RestartButton.setEnabled(true);
|
|
m_RunButton.repaint();
|
|
m_actStop.setEnabled(false);
|
|
m_Panel.repaint();
|
|
}
|
|
|
|
public void performedStart(String infoString) {
|
|
}
|
|
|
|
|
|
public void performedRestart(String infoString) {
|
|
}
|
|
|
|
public void updateProgress(final int percent) {
|
|
}
|
|
|
|
/**
|
|
*
|
|
*/
|
|
public String getName() {
|
|
return m_Name;
|
|
}
|
|
/**
|
|
*
|
|
*/
|
|
public void setHelperFilename (String s) {
|
|
m_HelperFileName = s;
|
|
}
|
|
}
|
|
|