00001
00002
00003
00004
00005
00006
00007 package DisplayGUI;
00008 import javax.swing.*;
00009 import java.util.Vector;
00010 import java.util.Hashtable;
00011 import java.util.Enumeration;
00012 import java.awt.event.*;
00013
00019 public class gui extends javax.swing.JFrame implements displayParams,TestDataInfo {
00020
00021
00022 public DisplayStatus displayStatus;
00023 public DisplayStatusPane displayStatusPane;
00024 public javax.swing.JPanel bannerPane;
00025 public DisplayPanel displayPane;
00026 public ISInterface isInterface;
00027 public CalibrationControllerPanel2 calibrationControllerPanel;
00028
00029 public MenuActions menuActions;
00030 public guiUtilities.HTMLViewer htmlViewer;
00031 public TablesDisplayPane tablesDisplayPane;
00032 public ColorScalePane colorScalePane;
00033
00034 public SelectorPane selectorPane;
00035
00036 public ProdDatabase.UploadProgressMonitor uploader;
00037 public GuiMenus guiMenus;
00038
00039 public boolean isReady=false;
00040
00042 public gui() {
00043
00044 super("SctGui");
00045
00046
00047
00048 ConfigurationInterface config = ConfigurationInterface.getInstance();
00049 isInterface = new ISInterface(this);
00050 htmlViewer = guiUtilities.HTMLViewer.getInstance();
00051
00052
00053 uploader = new ProdDatabase.UploadProgressMonitor(this);
00054
00055
00056 menuActions = new MenuActions(this);
00057 guiMenus = new GuiMenus(this);
00058
00059
00060 setJMenuBar(menuActions.createMenuBar());
00061
00062
00063 menuActions.enableDisplayMenuItems(false);
00064
00065
00066
00067 initComponents();
00068
00069 setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
00070
00071 displayPane.initPanelParameters();
00072 displayStatus.setConfigurationMode();
00073 displayPane.setDisplayColors();
00074 displayPane.refreshDisplay();
00075
00076 isReady=true;
00077
00078 }
00079
00085 private void initComponents() {
00086
00087 addWindowListener(new java.awt.event.WindowAdapter() {
00088 public void windowClosing(java.awt.event.WindowEvent evt) {
00089 exitForm(evt);
00090 }
00091 });
00092
00093 displayStatus = new DisplayStatus(this);
00094 selectorPane = new SelectorPane(this);
00095
00096 bannerPane = new banner();
00097 displayPane = new DisplayPanel(this);
00098 tablesDisplayPane = new TablesDisplayPane(this);
00099 colorScalePane = new ColorScalePane(this);
00100
00101 displayStatusPane = new DisplayStatusPane(this);
00102 calibrationControllerPanel = new CalibrationControllerPanel2(this);
00103
00104 JPanel pane = new JPanel();
00105 pane.setBackground(new java.awt.Color(255, 255, 255));
00106 java.awt.GridBagConstraints gridBagConstraints;
00107 pane.setLayout(new java.awt.GridBagLayout());
00108
00109
00110 gridBagConstraints = new java.awt.GridBagConstraints();
00111 gridBagConstraints.gridx = 2;
00112 gridBagConstraints.gridy = 1;
00113 gridBagConstraints.weighty = 0.2;
00114 gridBagConstraints.insets = new java.awt.Insets(10,10,0,10);
00115 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
00116 pane.add(colorScalePane, gridBagConstraints);
00117
00118 gridBagConstraints = new java.awt.GridBagConstraints();
00119 gridBagConstraints.gridx = 2;
00120 gridBagConstraints.gridy = 2;
00121 gridBagConstraints.weighty = 0.7;
00122 gridBagConstraints.weightx = java.awt.GridBagConstraints.REMAINDER;
00123
00124 gridBagConstraints.insets = new java.awt.Insets(10,10,0,10);
00125 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
00126 pane.add(tablesDisplayPane, gridBagConstraints);
00127
00128 gridBagConstraints = new java.awt.GridBagConstraints();
00129 gridBagConstraints.gridx = 0;
00130 gridBagConstraints.gridy = 0;
00131 gridBagConstraints.weightx = 0.1;
00132 gridBagConstraints.gridheight = 3;
00133 gridBagConstraints.insets = new java.awt.Insets(10,10,10,0);
00134 gridBagConstraints.fill = java.awt.GridBagConstraints.VERTICAL;
00135 pane.add(selectorPane, gridBagConstraints);
00136
00137 gridBagConstraints = new java.awt.GridBagConstraints();
00138 gridBagConstraints.gridx = 2;
00139 gridBagConstraints.gridy = 0;
00140
00141 gridBagConstraints.insets = new java.awt.Insets(10,10,0,10);
00142 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
00143 gridBagConstraints.weighty = 0.1;
00144 pane.add(calibrationControllerPanel, gridBagConstraints);
00145
00146 gridBagConstraints = new java.awt.GridBagConstraints();
00147 gridBagConstraints.gridx = 1;
00148 gridBagConstraints.gridy = 0;
00149 gridBagConstraints.weightx = 0.5;
00150 gridBagConstraints.gridheight = 3;
00151 gridBagConstraints.insets = new java.awt.Insets(10,0,10,10);
00152 gridBagConstraints.ipadx=5;
00153
00154 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
00155 pane.add(displayPane, gridBagConstraints);
00156
00157 setContentPane(pane);
00158
00159 pack();
00160 }
00161
00162
00163
00164
00166 public void exitForm(java.awt.event.WindowEvent evt) {
00167
00168 ExitPrompt exitPrompt = new ExitPrompt(this,true);
00169 exitPrompt.setLocationRelativeTo(this);
00170 exitPrompt.setVisible(true);
00171 if(!exitPrompt.okToExit()) return;
00172
00173
00174 displayStatus.unsubscribeAll();
00175 htmlViewer.close();
00176
00177 System.exit(0);
00178 }
00179
00183 public static void main(String args[]) {
00184 new gui().show();
00185 }
00186
00187 public synchronized boolean getUploaderStatus() {
00188 return uploader.isBusy();
00189 }
00190
00191
00192
00193
00194
00195
00196
00197
00198
00199
00200 }