00001
00002
00003
00004
00005
00006
00007 package DisplayGUI;
00008
00013 public class ManualConfiguration extends javax.swing.JFrame implements displayParams, SCTInfo, java.awt.event.ActionListener {
00014 boolean menuSetup=true;
00015 gui guiControl;
00016 int snCount=3000;
00018 public ManualConfiguration(gui parent) {
00019 guiControl=parent;
00020 initComponents();
00021 }
00022
00023
00024 private void initComponents() {
00025 java.awt.GridBagConstraints gridBagConstraints;
00026
00027 sctViewList = new javax.swing.JComboBox();
00028 SCTViewLabel = new javax.swing.JLabel();
00029 locationList = new javax.swing.JComboBox();
00030 positionList = new javax.swing.JComboBox();
00031 ModuleLabel = new javax.swing.JLabel();
00032 LocationLabel = new javax.swing.JLabel();
00033 jTextField1 = new javax.swing.JTextField(14);
00034 PositionLabel = new javax.swing.JLabel();
00035 AddModuleButton = new javax.swing.JButton();
00036 QuitButton = new javax.swing.JButton();
00037 titleLabel = new javax.swing.JLabel();
00038 MURLabel = new javax.swing.JLabel();
00039 MURField = new javax.swing.JTextField(10);
00040
00041
00042 titleLabel.setFont(displayTitleFont);
00043 titleLabel.setForeground(darkBlueColor);
00044 ModuleLabel.setFont(displayTextFont);
00045 PositionLabel.setFont(displayTextFont);
00046 SCTViewLabel.setFont(displayTextFont);
00047 LocationLabel.setFont(displayTextFont);
00048 QuitButton.setFont(displayTextFont);
00049 AddModuleButton.setFont(displayTextFont);
00050 sctViewList.setFont(displayTextFont);
00051 locationList.setFont(displayTextFont);
00052 positionList.setFont(displayTextFont);
00053 jTextField1.setFont(displayTextFont);
00054 MURField.setFont(displayTextFont);
00055 MURLabel.setFont(displayTextFont);
00056
00057 sctViewList.setBackground(backgroundColor);
00058 locationList.setBackground(backgroundColor);
00059 positionList.setBackground(backgroundColor);
00060
00061 sctViewList.addActionListener(this);
00062
00063 getContentPane().setBackground(backgroundColor);
00064 getContentPane().setLayout(new java.awt.GridBagLayout());
00065
00066 addWindowListener(new java.awt.event.WindowAdapter() {
00067 public void windowClosing(java.awt.event.WindowEvent evt) {
00068 exitForm(evt);
00069 }
00070 });
00071
00072 gridBagConstraints = new java.awt.GridBagConstraints();
00073 gridBagConstraints.gridx = 1;
00074 gridBagConstraints.gridy = 1;
00075 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
00076 gridBagConstraints.weightx = 0.5;
00077 gridBagConstraints.weighty = 0.12;
00078 gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
00079 getContentPane().add(sctViewList, gridBagConstraints);
00080
00081 SCTViewLabel.setText("SCT Component:");
00082 gridBagConstraints = new java.awt.GridBagConstraints();
00083 gridBagConstraints.gridx = 0;
00084 gridBagConstraints.gridy = 1;
00085 gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
00086 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
00087 gridBagConstraints.weightx = 0.5;
00088 getContentPane().add(SCTViewLabel, gridBagConstraints);
00089
00090 gridBagConstraints = new java.awt.GridBagConstraints();
00091 gridBagConstraints.gridx = 1;
00092 gridBagConstraints.gridy = 3;
00093 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
00094 gridBagConstraints.weighty = 0.15;
00095 gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
00096 getContentPane().add(locationList, gridBagConstraints);
00097
00098 gridBagConstraints = new java.awt.GridBagConstraints();
00099 gridBagConstraints.gridx = 1;
00100 gridBagConstraints.gridy = 4;
00101 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
00102 gridBagConstraints.weighty = 0.12;
00103 gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
00104 getContentPane().add(positionList, gridBagConstraints);
00105
00106 ModuleLabel.setText("Module SerialNo:");
00107 gridBagConstraints = new java.awt.GridBagConstraints();
00108 gridBagConstraints.gridx = 0;
00109 gridBagConstraints.gridy = 2;
00110 gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
00111 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
00112 getContentPane().add(ModuleLabel, gridBagConstraints);
00113
00114 LocationLabel.setText("Location:");
00115 gridBagConstraints = new java.awt.GridBagConstraints();
00116 gridBagConstraints.gridx = 0;
00117 gridBagConstraints.gridy = 3;
00118 gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
00119 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
00120 getContentPane().add(LocationLabel, gridBagConstraints);
00121
00122
00123 gridBagConstraints = new java.awt.GridBagConstraints();
00124 gridBagConstraints.gridx = 1;
00125 gridBagConstraints.gridy = 2;
00126 gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
00127 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
00128 gridBagConstraints.weighty = 0.12;
00129 getContentPane().add(jTextField1, gridBagConstraints);
00130
00131 PositionLabel.setText("Position:");
00132 gridBagConstraints = new java.awt.GridBagConstraints();
00133 gridBagConstraints.gridx = 0;
00134 gridBagConstraints.gridy = 4;
00135 gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
00136 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
00137 getContentPane().add(PositionLabel, gridBagConstraints);
00138
00139 MURLabel.setText("MUR:");
00140 gridBagConstraints = new java.awt.GridBagConstraints();
00141 gridBagConstraints.gridx = 0;
00142 gridBagConstraints.gridy = 5;
00143 gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
00144 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
00145 getContentPane().add(MURLabel, gridBagConstraints);
00146
00147 MURField.setText("0");
00148 gridBagConstraints = new java.awt.GridBagConstraints();
00149 gridBagConstraints.gridx = 1;
00150 gridBagConstraints.gridy = 5;
00151 gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
00152 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
00153 gridBagConstraints.weighty = 0.12;
00154 getContentPane().add(MURField, gridBagConstraints);
00155
00156 AddModuleButton.setText("Add Module");
00157 gridBagConstraints = new java.awt.GridBagConstraints();
00158 gridBagConstraints.gridx = 0;
00159 gridBagConstraints.gridy = 6;
00160 gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
00161 gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
00162 getContentPane().add(AddModuleButton, gridBagConstraints);
00163 AddModuleButton.addActionListener(new java.awt.event.ActionListener() {
00164 public void actionPerformed(java.awt.event.ActionEvent evt) {
00165 AddModule(evt);
00166 }
00167 });
00168
00169
00170 QuitButton.setText("Close");
00171 gridBagConstraints = new java.awt.GridBagConstraints();
00172 gridBagConstraints.gridx = 1;
00173 gridBagConstraints.gridy = 6;
00174 gridBagConstraints.weighty = 0.2;
00175 gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
00176 gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
00177 getContentPane().add(QuitButton, gridBagConstraints);
00178 QuitButton.addActionListener(new java.awt.event.ActionListener() {
00179 public void actionPerformed(java.awt.event.ActionEvent evt) {
00180 QuitForm(evt);
00181 }
00182 });
00183
00184
00185 titleLabel.setText("Manual Configuration");
00186 gridBagConstraints = new java.awt.GridBagConstraints();
00187 gridBagConstraints.gridx = 0;
00188 gridBagConstraints.gridy = 0;
00189 gridBagConstraints.gridwidth = 2;
00190 gridBagConstraints.weighty = 0.2;
00191 gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
00192 getContentPane().add(titleLabel, gridBagConstraints);
00193
00194 for(int i=0;i<SCTViewNames.length;i++) sctViewList.addItem(SCTViewNames[i]);
00195 setBarrelMenuItems(0);
00196
00197 menuSetup=false;
00198
00199 setLocationRelativeTo(guiControl);
00200 pack();
00201 showFrame();
00202
00203
00204 }
00205
00206 public void showFrame() {
00207 int view = guiControl.displayPane.getSCTView();
00208 sctViewList.setSelectedIndex(view);
00209 setVisible(true);
00210
00211 }
00212
00213
00215 private void exitForm(java.awt.event.WindowEvent evt) {
00216 setVisible(false);
00217 }
00218
00219 private void QuitForm(java.awt.event.ActionEvent evt) {
00220 setVisible(false);
00221 }
00222
00223 private void AddModule(java.awt.event.ActionEvent evt) {
00224 String sn = jTextField1.getText();
00225 int mur=0;
00226
00227
00228 try {
00229 mur = Integer.parseInt(MURField.getText());
00230 }catch(Exception e) {
00231 javax.swing.JOptionPane.showMessageDialog(null,"Invalid MUR number","Input error",javax.swing.JOptionPane.ERROR_MESSAGE);
00232 return;
00233 }
00234 int position = positionList.getSelectedIndex();
00235 if(sctViewList.getSelectedIndex()<4) position = Integer.parseInt((String)positionList.getSelectedItem());
00236
00237 if(sn.equals("SCTTestAPI_PseudoModule") || (sn.length()==14 && sn.startsWith("2022"))) {
00238 String response;
00239 if((response=ConfigurationInterface.getInstance().addModule(sctViewList.getSelectedIndex(),locationList.getSelectedIndex(),position,mur,0,sn))==null) {
00240 guiControl.displayStatus.setModuleGroupSelectionMode();
00241 if(ConfigurationInterface.getInstance().isConfigured()) guiControl.menuBar.enableDisplayMenuItems(true);
00242 }
00243 else javax.swing.JOptionPane.showMessageDialog(null,response,"Configuration Error",javax.swing.JOptionPane.ERROR_MESSAGE);
00244 }
00245 else javax.swing.JOptionPane.showMessageDialog(null,"Invalid serial number","Input error",javax.swing.JOptionPane.ERROR_MESSAGE);
00246
00247 }
00248
00249
00250
00251
00252 private javax.swing.JButton AddModuleButton;
00253 private javax.swing.JLabel LocationLabel;
00254 private javax.swing.JLabel ModuleLabel;
00255 private javax.swing.JLabel PositionLabel;
00256 private javax.swing.JButton QuitButton;
00257 private javax.swing.JButton randomButton;
00258 private javax.swing.JLabel SCTViewLabel;
00259 private javax.swing.JTextField jTextField1;
00260 private javax.swing.JComboBox locationList;
00261 private javax.swing.JComboBox positionList;
00262 private javax.swing.JComboBox sctViewList;
00263 private javax.swing.JLabel titleLabel;
00264 private javax.swing.JLabel MURLabel;
00265 private javax.swing.JTextField MURField;
00266
00267
00269 public void actionPerformed(java.awt.event.ActionEvent e) {
00270 if(menuSetup || e.getSource()!=sctViewList) return;
00271 int index = sctViewList.getSelectedIndex();
00272 if(index<4) setBarrelMenuItems(index);
00273 else {
00274 index-=3;
00275 if(index>=10) index-=9;
00276 setEndCapMenuItems(index);
00277 }
00278 }
00279
00280 public void setBarrelMenuItems(int index) {
00281 locationList.removeAllItems();
00282 for(int i=0;i<barrelRows[index];i++) locationList.addItem("Row "+Integer.toString(i));
00283 positionList.removeAllItems();
00284 for(int i=1;i<=6;i++) positionList.addItem(Integer.toString(i));
00285 for(int i=-1;i>=-6;i--) positionList.addItem(Integer.toString(i));
00286 }
00287 public void setEndCapMenuItems(int index) {
00288 locationList.removeAllItems();
00289 locationList.addItem("Quadrant TR");
00290 locationList.addItem("Quadrant BR");
00291 locationList.addItem("Quadrant BL");
00292 locationList.addItem("Quadrant TL");
00293 positionList.removeAllItems();
00294 for(int i=1;i<=13;i++) positionList.addItem("O"+Integer.toString(i));
00295 if(index!=9) for(int i=1;i<=10;i++) positionList.addItem("M"+Integer.toString(i));
00296 switch(index) {
00297 case 2:
00298 case 3:
00299 case 4:
00300 case 5:
00301 case 6:
00302 for(int i=1;i<=10;i++) positionList.addItem("I"+Integer.toString(i));
00303 default:
00304 }
00305 }
00306
00307
00308
00309
00310
00311
00312 }