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 private ConfigurationListener configurationListener;
00036 public ProdDatabase.UploadProgressMonitor uploader;
00037 public GuiMenus guiMenus;
00038
00040 public gui() {
00041
00042 super("SctGui");
00043
00044 ConfigurationInterface config = ConfigurationInterface.getInstance();
00045 isInterface = new ISInterface(this);
00046 htmlViewer = guiUtilities.HTMLViewer.getInstance();
00047
00048
00049 uploader = new ProdDatabase.UploadProgressMonitor(this);
00050
00051
00052 guiMenus = new GuiMenus(this);
00053
00054 menuActions = new MenuActions(this);
00055 setJMenuBar(menuActions.createMenuBar());
00056
00057
00058 menuActions.enableDisplayMenuItems(false);
00059
00060
00061 initComponents();
00062
00063 setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
00064
00065 displayPane.initPanelParameters();
00066 displayStatus.setConfigurationMode();
00067 displayPane.setDisplayColors();
00068 displayPane.refreshDisplay();
00069
00070 configurationListener = new ConfigurationListener(this);
00071
00072 }
00073
00079 private void initComponents() {
00080
00081 addWindowListener(new java.awt.event.WindowAdapter() {
00082 public void windowClosing(java.awt.event.WindowEvent evt) {
00083 exitForm(evt);
00084 }
00085 });
00086
00087 displayStatus = new DisplayStatus(this);
00088 selectorPane = new SelectorPane(this);
00089
00090 bannerPane = new banner();
00091 displayPane = new DisplayPanel(this);
00092 tablesDisplayPane = new TablesDisplayPane(this);
00093 colorScalePane = new ColorScalePane(this);
00094
00095 displayStatusPane = new DisplayStatusPane(this);
00096 calibrationControllerPanel = new CalibrationControllerPanel2(this);
00097
00098 JPanel pane = new JPanel();
00099 pane.setBackground(new java.awt.Color(255, 255, 255));
00100 java.awt.GridBagConstraints gridBagConstraints;
00101 pane.setLayout(new java.awt.GridBagLayout());
00102
00103
00104 gridBagConstraints = new java.awt.GridBagConstraints();
00105 gridBagConstraints.gridx = 2;
00106 gridBagConstraints.gridy = 1;
00107 gridBagConstraints.weighty = 0.2;
00108 gridBagConstraints.insets = new java.awt.Insets(10,10,0,10);
00109 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
00110 pane.add(colorScalePane, gridBagConstraints);
00111
00112 gridBagConstraints = new java.awt.GridBagConstraints();
00113 gridBagConstraints.gridx = 2;
00114 gridBagConstraints.gridy = 2;
00115 gridBagConstraints.weighty = 0.7;
00116 gridBagConstraints.weightx = java.awt.GridBagConstraints.REMAINDER;
00117
00118 gridBagConstraints.insets = new java.awt.Insets(10,10,0,10);
00119 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
00120 pane.add(tablesDisplayPane, gridBagConstraints);
00121
00122 gridBagConstraints = new java.awt.GridBagConstraints();
00123 gridBagConstraints.gridx = 0;
00124 gridBagConstraints.gridy = 0;
00125 gridBagConstraints.weightx = 0.1;
00126 gridBagConstraints.gridheight = 3;
00127 gridBagConstraints.insets = new java.awt.Insets(10,10,10,0);
00128 gridBagConstraints.fill = java.awt.GridBagConstraints.VERTICAL;
00129 pane.add(selectorPane, gridBagConstraints);
00130
00131 gridBagConstraints = new java.awt.GridBagConstraints();
00132 gridBagConstraints.gridx = 2;
00133 gridBagConstraints.gridy = 0;
00134
00135 gridBagConstraints.insets = new java.awt.Insets(10,10,0,10);
00136 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
00137 gridBagConstraints.weighty = 0.1;
00138 pane.add(calibrationControllerPanel, gridBagConstraints);
00139
00140 gridBagConstraints = new java.awt.GridBagConstraints();
00141 gridBagConstraints.gridx = 1;
00142 gridBagConstraints.gridy = 0;
00143 gridBagConstraints.weightx = 0.5;
00144 gridBagConstraints.gridheight = 3;
00145 gridBagConstraints.insets = new java.awt.Insets(10,0,10,10);
00146 gridBagConstraints.ipadx=5;
00147
00148 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
00149 pane.add(displayPane, gridBagConstraints);
00150
00151 setContentPane(pane);
00152
00153 pack();
00154 }
00155
00156
00157
00158
00160 public void exitForm(java.awt.event.WindowEvent evt) {
00161
00162 ExitPrompt exitPrompt = new ExitPrompt(this,true);
00163 exitPrompt.setLocationRelativeTo(this);
00164 exitPrompt.setVisible(true);
00165 if(!exitPrompt.okToExit()) return;
00166
00167 calibrationControllerPanel.close();
00168 displayStatus.unsubscribeAll();
00169 htmlViewer.close();
00170 configurationListener.close();
00171 System.exit(0);
00172 }
00173
00177 public static void main(String args[]) {
00178 new gui().show();
00179 }
00180
00181 public synchronized boolean getUploaderStatus() {
00182 return uploader.isBusy();
00183 }
00184
00185
00186
00187
00188
00189
00190
00191
00192
00193
00194 }