diff --git a/extensions/Scienta.jar b/extensions/Scienta.jar index 7cf33ec..bbdff86 100644 Binary files a/extensions/Scienta.jar and b/extensions/Scienta.jar differ diff --git a/plugins/SIStem.form b/plugins/SIStem.form index 6268088..bccf2ea 100644 --- a/plugins/SIStem.form +++ b/plugins/SIStem.form @@ -27,8 +27,10 @@ - - + + + + @@ -53,7 +55,7 @@ - + @@ -66,13 +68,14 @@ - - - - - - - + + + + + + + + @@ -153,32 +156,30 @@ - - - - + + + + - + - + - + - - - - - - + + + + - + @@ -197,7 +198,7 @@ - + @@ -205,20 +206,20 @@ - + - - - + + + - - + + - + @@ -226,26 +227,26 @@ - - - + + + - - - + + + - - - + + + - - - + + + - + @@ -257,11 +258,6 @@ - - - - - @@ -280,19 +276,24 @@ - + - + - + - + - + + + + + + @@ -310,7 +311,7 @@ - + @@ -318,20 +319,20 @@ - + - - - + + + - - + + - + @@ -339,26 +340,26 @@ - - - + + + - - - + + + - - - + + + - - - + + + - + @@ -370,11 +371,6 @@ - - - - - @@ -393,19 +389,24 @@ - + - + - + - + - + + + + + + @@ -423,23 +424,23 @@ - + - - - + + + - - - - + + + + - + @@ -451,7 +452,7 @@ - + @@ -463,129 +464,98 @@ - - - - - - - - - - - - - - - - - - - - - + + + + + + + - + + + + + + + + - + - - - + + + - - - + + + - - - + + + - - - + + + - + - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - + - + + + + + + - - - - - - + - - - - - + + + + + + + + + + + + + + + + + @@ -617,7 +587,7 @@ - + @@ -627,12 +597,12 @@ - - + + @@ -642,8 +612,8 @@ - - + + @@ -653,39 +623,39 @@ - - - - + + + + - - - - + + + + - - - + + + - - - - + + + + - - - + + + - + - + @@ -700,17 +670,6 @@ - - - - - - - - - - - @@ -722,22 +681,6 @@ - - - - - - - - - - - - - - - - @@ -798,6 +741,21 @@ + + + + + + + + + + + + + + + @@ -813,7 +771,7 @@ - + @@ -822,45 +780,53 @@ - - - - + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - + + + + + - - - - + + + + - + + - + @@ -879,7 +845,7 @@ - + @@ -933,33 +899,34 @@ - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + @@ -982,7 +949,7 @@ - + @@ -996,7 +963,7 @@ - + @@ -1075,11 +1042,11 @@ - + - + - + @@ -1088,7 +1055,7 @@ - + @@ -1207,13 +1174,13 @@ - + - + - + - + @@ -1223,7 +1190,7 @@ - + @@ -1387,7 +1354,7 @@ - + @@ -1396,5 +1363,10 @@ + + + + + diff --git a/plugins/SIStem.java b/plugins/SIStem.java index 2c6f665..75971e2 100644 --- a/plugins/SIStem.java +++ b/plugins/SIStem.java @@ -2,9 +2,10 @@ import ch.psi.pshell.core.Context; import ch.psi.pshell.core.JsonSerializer; import ch.psi.pshell.core.Nameable; -import ch.psi.pshell.device.DiscretePositioner; +import ch.psi.pshell.device.Device; +import ch.psi.pshell.device.DeviceAdapter; +import ch.psi.pshell.device.DeviceListener; import ch.psi.pshell.device.MasterPositioner; -import ch.psi.pshell.device.MasterPositionerConfig; import ch.psi.pshell.device.Motor; import ch.psi.pshell.device.Positioner; import ch.psi.pshell.device.PositionerBase; @@ -21,10 +22,11 @@ import ch.psi.pshell.ui.Preferences; import ch.psi.pshell.ui.Processor; import ch.psi.pshell.ui.QueueProcessor; import ch.psi.pshell.ui.View; +import ch.psi.pshell.swing.DiscretePositionerSelector; +import ch.psi.pshell.swing.RegisterPanel; import ch.psi.utils.Arr; import ch.psi.utils.Convert; import ch.psi.utils.IO; -import ch.psi.utils.Reflection; import ch.psi.utils.State; import ch.psi.utils.swing.SwingUtils; import java.awt.Color; @@ -46,6 +48,7 @@ import java.util.List; import java.util.Map; import java.util.logging.Level; import java.util.logging.Logger; +import javax.script.ScriptException; import javax.swing.DefaultComboBoxModel; import javax.swing.DropMode; import javax.swing.JComboBox; @@ -74,11 +77,10 @@ public class SIStem extends PanelProcessor { JDialog dataDialog; public static final String FILE_EXTENSION = "json"; - final JTextField[] scientaFloatFields; - final JTextField[] scientaIntFields; - final JComboBox[] scientaCombos; - final JTextField[] scientaRangeFields; + final RegisterPanel[] scientaPanels; + final DiscretePositionerSelector[] scientaCombos; final JComboBox[] deviceCombos; + final JTextField[] scientaRangeFields; String[] additionalPositioners ; boolean intialized; @@ -185,32 +187,22 @@ public class SIStem extends PanelProcessor { } }); - scientaFloatFields = new JTextField[]{textLowEnergy, textCenterEnergy, textHighEnergy, textStepEnergy, - textLowThetaY, textCenterThetaY, textHighThetaY, textStepThetaY, textCenterThetaX}; - scientaIntFields = new JTextField[]{textSlices, textChannels}; + scientaPanels = new RegisterPanel[]{textLowEnergy,textCenterEnergy, textHighEnergy, textStepEnergy, + textLowThetaY, textCenterThetaY, textHighThetaY, textStepThetaY, textCenterThetaX, textSlices, textChannels}; scientaRangeFields = new JTextField[]{textXChannelMax, textXChannelMin, textYChannelMax, textYChannelMin}; - scientaCombos = new JComboBox[]{comboPass, comboAcquisition, comboEnergy, comboLens, comboDetMode}; + scientaCombos = new DiscretePositionerSelector[]{comboPass, comboAcquisition, comboEnergy, comboLens, comboDetMode}; deviceCombos = new JComboBox[]{comboPol, comboGrating}; - try { - Class scienta = getContext().getClassByName("Scienta"); - SwingUtils.setEnumCombo(comboLens, Reflection.getDeclaredClass(scienta, "LensMode"), true); - SwingUtils.setEnumCombo(comboEnergy, Reflection.getDeclaredClass(scienta, "EnergyMode"), true); - SwingUtils.setEnumCombo(comboAcquisition, Reflection.getDeclaredClass(scienta, "AcquisitionMode"), true); - SwingUtils.setEnumCombo(comboDetMode, Reflection.getDeclaredClass(scienta, "DetectorMode"), true); - comboPass.setModel(new javax.swing.DefaultComboBoxModel(Convert.toStringArray(scienta.getField("PASS_ENERGY_VALUES").get(null)))); - } catch (Exception ex) { - getLogger().log(Level.SEVERE, null, ex); - } - - for (JComboBox combo : scientaCombos) { - SwingUtils.insertCombo(combo, "", 0); - } buttonData.setVisible(isDetached()); detectorPlot.getAxis(Plot.AxisId.X).setLabel("X-Scale (energy)"); detectorPlot.getAxis(Plot.AxisId.Y).setLabel("Y-Scale (distance or angle)"); + + comboLens.getComboBox().addActionListener((java.awt.event.ActionEvent evt) -> { + updateLens(); + }); + clear(); - startTimer(2000, 100); + //startTimer(1000, 1000); } void addDevice(ProcessVariable dev, DefaultTableModel model, int row, Object[] data) { @@ -255,10 +247,39 @@ public class SIStem extends PanelProcessor { clear(); } } + + for (DiscretePositionerSelector combo:scientaCombos){ + try { + combo.setDevice((Device) eval(combo.getName(), true)); + } catch (Exception ex) { + showException(ex); + } + } + + for (RegisterPanel panel:scientaPanels){ + try { + panel.setDevice((Device) eval(panel.getName(), true)); + } catch (Exception ex) { + showException(ex); + } + } + + try { + Device curStep = (Device) eval("scienta.currentStep", true); + curStep.addListener(progressListener); + } catch (Exception ex) { + Logger.getLogger(SIStem.class.getName()).log(Level.SEVERE, null, ex); + } + try { + Device estTime = (Device) eval("scienta.estTime", true); + estTime.addListener(timeListener); + } catch (Exception ex) { + Logger.getLogger(SIStem.class.getName()).log(Level.SEVERE, null, ex); + } + if (!intialized) { try { - Class enumClass = (Class) eval("scienta.getLensModeClass()", true); String[] mode_position = (String[]) eval("id_mode.getPositions()", true); String[] grating_position = (String[]) eval("grating.getPositions()", true); List add_pos= (List) eval("get_additional_positioners()", true); @@ -268,17 +289,13 @@ public class SIStem extends PanelProcessor { } SwingUtilities.invokeLater(() -> { try { - SwingUtils.setEnumCombo(comboLens, enumClass, true); - SwingUtils.insertCombo(comboLens, "", 0); - comboLens.setSelectedIndex(0); + comboPol.setModel(new DefaultComboBoxModel(mode_position)); + SwingUtils.insertCombo(comboPol, "", 0); + comboPol.setSelectedIndex(0); - comboPol.setModel(new DefaultComboBoxModel(mode_position)); - SwingUtils.insertCombo(comboPol, "", 0); - comboPol.setSelectedIndex(0); - - comboGrating.setModel(new DefaultComboBoxModel(grating_position)); - SwingUtils.insertCombo(comboGrating, "", 0); - comboGrating.setSelectedIndex(0); + comboGrating.setModel(new DefaultComboBoxModel(grating_position)); + SwingUtils.insertCombo(comboGrating, "", 0); + comboGrating.setSelectedIndex(0); } catch (Exception ex) { ex.printStackTrace(); Logger.getLogger(SIStem.class.getName()).log(Level.SEVERE, null, ex); @@ -301,6 +318,7 @@ public class SIStem extends PanelProcessor { } updateMaster(); + updateTime(); } @Override @@ -312,12 +330,12 @@ public class SIStem extends PanelProcessor { public void onExecutedFile(String fileName, Object result) { } - @Override - public void onTimer() { - if (getState().isInitialized()){ - updateTime(); - } - } + //@Override + //public void onTimer() { + // if (getState().isInitialized()){ + // updateTime(); + // } + //} //Callback to perform update - in event thread @Override @@ -375,19 +393,17 @@ public class SIStem extends PanelProcessor { preActions.put(combo.getName(), String.valueOf(combo.getSelectedItem())); } } - for (JComboBox combo : scientaCombos) { - if ((combo.isVisible()) && (combo.getSelectedIndex() > 0)) { - preActions.put(combo.getName(), String.valueOf(combo.getSelectedItem())); + for (DiscretePositionerSelector combo : scientaCombos) { + if (combo.isVisible()) { + preActions.put(combo.getName(), String.valueOf(combo.getText())); } } - for (JTextField text : scientaFloatFields) { - if ((text.isVisible()) && (!text.getText().isBlank())) { - preActions.put(text.getName(), Double.valueOf(text.getText().trim())); - } - } - for (JTextField text : scientaIntFields) { - if ((text.isVisible()) && (!text.getText().isBlank())) { - preActions.put(text.getName(), Integer.valueOf(text.getText().trim())); + for (RegisterPanel panel : scientaPanels) { + if ((panel.isVisible()) && (!panel.getText().isBlank())) { + Object value = panel.getDevice().take(); + if (value!=null){ + preActions.put(panel.getName(), value); + } } } for (int i = 0; i < modelFixed.getRowCount(); i++) { @@ -497,15 +513,15 @@ public class SIStem extends PanelProcessor { break; } } - for (JComboBox combo : scientaCombos) { + for (DiscretePositionerSelector combo : scientaCombos) { if (name.equals(combo.getName())) { - combo.setSelectedItem(String.valueOf(preActions.get(name))); + combo.write(String.valueOf(preActions.get(name)), true); break; } } - for (JTextField text : Arr.append(scientaFloatFields, scientaIntFields)) { - if (name.equals(text.getName())) { - text.setText(String.valueOf(preActions.get(name))); + for (RegisterPanel panel : scientaPanels) { + if (name.equals(panel.getName())) { + panel.write(preActions.get(name), true); break; } } @@ -540,7 +556,6 @@ public class SIStem extends PanelProcessor { } } finally{ updateControls(); - updatingTime=false; updateTime(); } } @@ -550,13 +565,11 @@ public class SIStem extends PanelProcessor { currentFile = null; deletePrivateMasterAxis(); for (JComboBox combo : deviceCombos) { - combo.setSelectedIndex(0); - } - for (JComboBox combo : scientaCombos) { - combo.setSelectedIndex(0); - } - - for (JTextField text : Arr.append(Arr.append(scientaFloatFields, scientaIntFields), scientaRangeFields)) { + if (combo.getModel().getSize()>0){ + combo.setSelectedIndex(0); + } + } + for (JTextField text : scientaRangeFields) { text.setText(""); } @@ -585,11 +598,7 @@ public class SIStem extends PanelProcessor { updateControls(); if (isLoaded()) { updateDetectorPlot(); - try { - updateLens(); - } catch (Exception ex) { - getLogger().log(Level.WARNING, null, ex); - } + updateLens(); } textTime.setText(""); } @@ -777,23 +786,26 @@ public class SIStem extends PanelProcessor { } } - void updateLens() throws Exception { - String lens = (String) comboLens.getSelectedItem(); - boolean empty = ((lens == null) || (lens.isBlank())); - //if (empty){ - //lens = (String) eval("str(scienta.lensMode)", true); - //} - boolean visibleX = empty || lens.startsWith("A") || lens.startsWith("D"); - boolean visibleY = empty || lens.startsWith("D"); - panelX.setVisible(visibleX); - for (Component c : SwingUtils.getComponentsByType(panelX, Component.class)) { - c.setVisible(visibleX); - } - panelY.setVisible(visibleY); - for (Component c : SwingUtils.getComponentsByType(panelY, Component.class)) { - c.setVisible(visibleY); - } - + void updateLens() { + try { + String lens = (String) comboLens.getText(); + boolean empty = ((lens == null) || (lens.isBlank())); + //if (empty){ + //lens = (String) eval("str(scienta.lensMode)", true); + //} + boolean visibleX = empty || lens.startsWith("A") || lens.startsWith("D"); + boolean visibleY = empty || lens.startsWith("D"); + panelX.setVisible(visibleX); + for (Component c : SwingUtils.getComponentsByType(panelX, Component.class)) { + c.setVisible(visibleX); + } + panelY.setVisible(visibleY); + for (Component c : SwingUtils.getComponentsByType(panelY, Component.class)) { + c.setVisible(visibleY); + } + } catch (Exception ex) { + getLogger().log(Level.WARNING, null, ex); + } } void checkValues() { @@ -845,24 +857,6 @@ public class SIStem extends PanelProcessor { } } - for (JTextField text : scientaFloatFields) { - if (!text.getText().isBlank()) { - try { - Double.valueOf(text.getText().trim()); - } catch (Exception ex) { - throw new IllegalArgumentException("Invalid value in " + text.getName()); - } - } - } - for (JTextField text : scientaIntFields) { - if (!text.getText().isBlank()) { - try { - Integer.valueOf(text.getText().trim()); - } catch (Exception ex) { - throw new IllegalArgumentException("Invalid value in " + text.getName()); - } - } - } List defined = new ArrayList(); for (JTextField text : scientaRangeFields) { if (!text.getText().isBlank()) { @@ -992,55 +986,52 @@ public class SIStem extends PanelProcessor { detectorPlot.clear(); } - volatile boolean updatingTime; void updateTime(){ - if (!updatingTime){ - String cmd="calc_acquisition_time("; + try{ int samples = 1; for (int i = 0; i < modelScanned.getRowCount(); i++) { Integer points = (Integer) modelScanned.getValueAt(i, 3); samples*=points; } - cmd+="samples="+Math.max(samples,1) + ", "; - - if (!((String)comboAcquisition.getSelectedItem()).isBlank()){ - cmd+="mode='"+String.valueOf(comboAcquisition.getSelectedItem()) + "', "; - } - if (!textLowEnergy.getText().isBlank()){ - cmd+="enl="+(String)textLowEnergy.getText() + ", "; - } - if (!textHighEnergy.getText().isBlank()){ - cmd+="enh="+(String)textHighEnergy.getText() + ", "; - } - if (!textStepEnergy.getText().isBlank()){ - cmd+="ens="+(String)textStepEnergy.getText() + ", "; - } - if (!textLowThetaY.getText().isBlank()){ - cmd+="tyl="+(String)textLowThetaY.getText() + ", "; - } - if (!textHighThetaY.getText().isBlank()){ - cmd+="tyh="+(String)textHighThetaY.getText() + ", "; - } - if (!textStepThetaY.getText().isBlank()){ - cmd+="tys="+(String)textStepThetaY.getText() + ", "; - } - cmd+=")"; - updatingTime=true; - try { - this.evalAsync(cmd, true).handle((ret, ex) -> { - String text = ((ex != null) || (ret==null)) ? "" : String.valueOf(ret); - SwingUtilities.invokeLater(()->{ - textTime.setText(text); - }); - updatingTime=false; - return ret; - }); - } catch (Context.ContextStateException ex) { - Logger.getLogger(SIStem.class.getName()).log(Level.WARNING, null, ex); - updatingTime=false; - } + samples = Math.max(samples,1); + String time = (String) eval("scienta.estTime.take()", true); + String text = samples + " x " + time; + SwingUtilities.invokeLater(()->{ + textTime.setText(text); + }); + } catch (Exception ex){ + SwingUtilities.invokeLater(()->{ + textTime.setText(""); + }); } } + + DeviceListener progressListener = new DeviceAdapter() { + @Override + public void onValueChanged(final Device device, final Object value, final Object former) { + try { + Double p = (Double) eval("scienta.getProgress()", true); + SwingUtilities.invokeLater(() -> { + progress.setValue((int) (p * 1000)); + }); + + } catch (Exception ex) { + Logger.getLogger(SIStem.class.getName()).log(Level.WARNING, null, ex); + } + } + }; + + DeviceListener timeListener = new DeviceAdapter() { + @Override + public void onValueChanged(final Device device, final Object value, final Object former) { + try { + updateTime(); + } catch (Exception ex) { + Logger.getLogger(SIStem.class.getName()).log(Level.WARNING, null, ex); + } + } + }; + @SuppressWarnings("unchecked") // //GEN-BEGIN:initComponents @@ -1054,41 +1045,38 @@ public class SIStem extends PanelProcessor { jPanel4 = new javax.swing.JPanel(); panelEnergy = new javax.swing.JPanel(); jLabel14 = new javax.swing.JLabel(); - textStepEnergy = new javax.swing.JTextField(); jLabel13 = new javax.swing.JLabel(); jLabel12 = new javax.swing.JLabel(); jLabel15 = new javax.swing.JLabel(); - textHighEnergy = new javax.swing.JTextField(); - textCenterEnergy = new javax.swing.JTextField(); - textLowEnergy = new javax.swing.JTextField(); + textLowEnergy = new ch.psi.pshell.swing.RegisterPanel(); + textCenterEnergy = new ch.psi.pshell.swing.RegisterPanel(); + textHighEnergy = new ch.psi.pshell.swing.RegisterPanel(); + textStepEnergy = new ch.psi.pshell.swing.RegisterPanel(); panelY = new javax.swing.JPanel(); jLabel17 = new javax.swing.JLabel(); - textStepThetaY = new javax.swing.JTextField(); jLabel18 = new javax.swing.JLabel(); jLabel19 = new javax.swing.JLabel(); jLabel20 = new javax.swing.JLabel(); - textHighThetaY = new javax.swing.JTextField(); - textCenterThetaY = new javax.swing.JTextField(); - textLowThetaY = new javax.swing.JTextField(); + textLowThetaY = new ch.psi.pshell.swing.RegisterPanel(); + textCenterThetaY = new ch.psi.pshell.swing.RegisterPanel(); + textHighThetaY = new ch.psi.pshell.swing.RegisterPanel(); + textStepThetaY = new ch.psi.pshell.swing.RegisterPanel(); panelX = new javax.swing.JPanel(); jLabel26 = new javax.swing.JLabel(); - textCenterThetaX = new javax.swing.JTextField(); + textCenterThetaX = new ch.psi.pshell.swing.RegisterPanel(); jPanel10 = new javax.swing.JPanel(); - jLabel11 = new javax.swing.JLabel(); - jLabel6 = new javax.swing.JLabel(); - jLabel5 = new javax.swing.JLabel(); - comboPass = new javax.swing.JComboBox(); - comboLens = new javax.swing.JComboBox(); - jLabel7 = new javax.swing.JLabel(); - comboAcquisition = new javax.swing.JComboBox(); - comboEnergy = new javax.swing.JComboBox(); + jLabel29 = new javax.swing.JLabel(); + jLabel30 = new javax.swing.JLabel(); + comboLens = new ch.psi.pshell.swing.DiscretePositionerSelector(); + comboAcquisition = new ch.psi.pshell.swing.DiscretePositionerSelector(); + comboEnergy = new ch.psi.pshell.swing.DiscretePositionerSelector(); + comboPass = new ch.psi.pshell.swing.DiscretePositionerSelector(); + jLabel24 = new javax.swing.JLabel(); + jLabel28 = new javax.swing.JLabel(); jPanel5 = new javax.swing.JPanel(); jLabel16 = new javax.swing.JLabel(); - comboDetMode = new javax.swing.JComboBox(); jLabel9 = new javax.swing.JLabel(); jLabel25 = new javax.swing.JLabel(); - textSlices = new javax.swing.JTextField(); - textChannels = new javax.swing.JTextField(); jLabel27 = new javax.swing.JLabel(); textXChannelMin = new javax.swing.JTextField(); textXChannelMax = new javax.swing.JTextField(); @@ -1108,6 +1096,9 @@ public class SIStem extends PanelProcessor { } }; butonPlot = new javax.swing.JButton(); + comboDetMode = new ch.psi.pshell.swing.DiscretePositionerSelector(); + textChannels = new ch.psi.pshell.swing.RegisterPanel(); + textSlices = new ch.psi.pshell.swing.RegisterPanel(); jPanel11 = new javax.swing.JPanel(); checkZigzag = new javax.swing.JCheckBox(); jLabel4 = new javax.swing.JLabel(); @@ -1118,9 +1109,9 @@ public class SIStem extends PanelProcessor { jLabel22 = new javax.swing.JLabel(); checkCompression = new javax.swing.JCheckBox(); jLabel21 = new javax.swing.JLabel(); - comboPol = new javax.swing.JComboBox(); - comboGrating = new javax.swing.JComboBox(); jLabel23 = new javax.swing.JLabel(); + comboPol = new javax.swing.JComboBox<>(); + comboGrating = new javax.swing.JComboBox<>(); jPanel6 = new javax.swing.JPanel(); jScrollPane8 = new javax.swing.JScrollPane(); tableMaster = new javax.swing.JTable(); @@ -1151,6 +1142,7 @@ public class SIStem extends PanelProcessor { buttonData = new javax.swing.JButton(); jLabel2 = new javax.swing.JLabel(); textTime = new javax.swing.JTextField(); + progress = new javax.swing.JProgressBar(); buttonScienta.setText("Scienta Panel"); buttonScienta.addActionListener(new java.awt.event.ActionListener() { @@ -1186,8 +1178,6 @@ public class SIStem extends PanelProcessor { jLabel14.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING); jLabel14.setText("High:"); - textStepEnergy.setName("scienta.energyStepSize"); // NOI18N - jLabel13.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING); jLabel13.setText("Center:"); @@ -1197,11 +1187,13 @@ public class SIStem extends PanelProcessor { jLabel15.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING); jLabel15.setText("Step:"); - textHighEnergy.setName("scienta.highEnergy"); // NOI18N + textLowEnergy.setName("scienta.lowEnergy"); // NOI18N textCenterEnergy.setName("scienta.centerEnergy"); // NOI18N - textLowEnergy.setName("scienta.lowEnergy"); // NOI18N + textHighEnergy.setName("scienta.highEnergy"); // NOI18N + + textStepEnergy.setName("scienta.energyStepSize"); // NOI18N javax.swing.GroupLayout panelEnergyLayout = new javax.swing.GroupLayout(panelEnergy); panelEnergy.setLayout(panelEnergyLayout); @@ -1217,40 +1209,38 @@ public class SIStem extends PanelProcessor { .addComponent(jLabel13, javax.swing.GroupLayout.Alignment.TRAILING)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(panelEnergyLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(textLowEnergy, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(textCenterEnergy, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(textHighEnergy, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE))) + .addComponent(textLowEnergy, javax.swing.GroupLayout.DEFAULT_SIZE, 80, Short.MAX_VALUE) + .addComponent(textCenterEnergy, javax.swing.GroupLayout.DEFAULT_SIZE, 80, Short.MAX_VALUE) + .addComponent(textHighEnergy, javax.swing.GroupLayout.DEFAULT_SIZE, 80, Short.MAX_VALUE))) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelEnergyLayout.createSequentialGroup() .addComponent(jLabel15) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(textStepEnergy, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE))) + .addComponent(textStepEnergy, javax.swing.GroupLayout.DEFAULT_SIZE, 80, Short.MAX_VALUE))) .addContainerGap()) ); - panelEnergyLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {textCenterEnergy, textHighEnergy, textLowEnergy, textStepEnergy}); - panelEnergyLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jLabel12, jLabel13, jLabel14, jLabel15}); panelEnergyLayout.setVerticalGroup( panelEnergyLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panelEnergyLayout.createSequentialGroup() .addContainerGap() - .addGroup(panelEnergyLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(textLowEnergy, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(jLabel12)) + .addGroup(panelEnergyLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) + .addComponent(jLabel12) + .addComponent(textLowEnergy, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(panelEnergyLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(textCenterEnergy, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(jLabel13)) + .addGroup(panelEnergyLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) + .addComponent(jLabel13) + .addComponent(textCenterEnergy, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(panelEnergyLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(textHighEnergy, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(jLabel14)) + .addGroup(panelEnergyLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) + .addComponent(jLabel14) + .addComponent(textHighEnergy, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(panelEnergyLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(textStepEnergy, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(jLabel15)) - .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + .addGroup(panelEnergyLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) + .addComponent(jLabel15) + .addComponent(textStepEnergy, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addContainerGap(16, Short.MAX_VALUE)) ); panelY.setBorder(javax.swing.BorderFactory.createTitledBorder("ThetaY ")); @@ -1258,8 +1248,6 @@ public class SIStem extends PanelProcessor { jLabel17.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING); jLabel17.setText("High:"); - textStepThetaY.setName("scienta.thetaYStepSize"); // NOI18N - jLabel18.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING); jLabel18.setText("Center:"); @@ -1269,11 +1257,13 @@ public class SIStem extends PanelProcessor { jLabel20.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING); jLabel20.setText("Step:"); - textHighThetaY.setName("scienta.highThetaY"); // NOI18N + textLowThetaY.setName("scienta.lowThetaY"); // NOI18N textCenterThetaY.setName("scienta.centerThetaY"); // NOI18N - textLowThetaY.setName("scienta.lowThetaY"); // NOI18N + textHighThetaY.setName("scienta.highThetaY"); // NOI18N + + textStepThetaY.setName("scienta.thetaYStepSize"); // NOI18N javax.swing.GroupLayout panelYLayout = new javax.swing.GroupLayout(panelY); panelY.setLayout(panelYLayout); @@ -1289,13 +1279,13 @@ public class SIStem extends PanelProcessor { .addComponent(jLabel18, javax.swing.GroupLayout.Alignment.TRAILING)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(panelYLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(textLowThetaY, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(textCenterThetaY, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(textHighThetaY, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE))) + .addComponent(textLowThetaY, javax.swing.GroupLayout.DEFAULT_SIZE, 80, Short.MAX_VALUE) + .addComponent(textCenterThetaY, javax.swing.GroupLayout.DEFAULT_SIZE, 80, Short.MAX_VALUE) + .addComponent(textHighThetaY, javax.swing.GroupLayout.DEFAULT_SIZE, 80, Short.MAX_VALUE))) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelYLayout.createSequentialGroup() .addComponent(jLabel20) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(textStepThetaY, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE))) + .addComponent(textStepThetaY, javax.swing.GroupLayout.DEFAULT_SIZE, 80, Short.MAX_VALUE))) .addContainerGap()) ); @@ -1305,22 +1295,22 @@ public class SIStem extends PanelProcessor { panelYLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panelYLayout.createSequentialGroup() .addContainerGap() - .addGroup(panelYLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(textLowThetaY, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(jLabel19)) + .addGroup(panelYLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) + .addComponent(jLabel19) + .addComponent(textLowThetaY, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(panelYLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(textCenterThetaY, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(jLabel18)) + .addGroup(panelYLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) + .addComponent(jLabel18) + .addComponent(textCenterThetaY, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(panelYLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(textHighThetaY, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(jLabel17)) + .addGroup(panelYLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) + .addComponent(jLabel17) + .addComponent(textHighThetaY, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(panelYLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(textStepThetaY, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(jLabel20)) - .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + .addGroup(panelYLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) + .addComponent(jLabel20) + .addComponent(textStepThetaY, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addContainerGap(16, Short.MAX_VALUE)) ); panelX.setBorder(javax.swing.BorderFactory.createTitledBorder("ThetaX")); @@ -1338,155 +1328,122 @@ public class SIStem extends PanelProcessor { .addContainerGap() .addComponent(jLabel26) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(textCenterThetaX, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(textCenterThetaX, javax.swing.GroupLayout.DEFAULT_SIZE, 80, Short.MAX_VALUE) .addContainerGap()) ); panelXLayout.setVerticalGroup( panelXLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(panelXLayout.createSequentialGroup() - .addGap(38, 38, 38) - .addGroup(panelXLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(textCenterThetaX, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(jLabel26)) - .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + .addGap(36, 36, 36) + .addGroup(panelXLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) + .addComponent(jLabel26) + .addComponent(textCenterThetaX, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addContainerGap(67, Short.MAX_VALUE)) ); - jLabel11.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING); - jLabel11.setText("Pass Energy:"); + jLabel29.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING); + jLabel29.setText("Energy Mode:"); - jLabel6.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING); - jLabel6.setText("Acquisition:"); + jLabel30.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING); + jLabel30.setText("Lens Mode:"); - jLabel5.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING); - jLabel5.setText("Energy Mode:"); - - comboPass.setModel(new javax.swing.DefaultComboBoxModel(new String[] { " " })); - comboPass.setToolTipText(""); - comboPass.setName("scienta.passEnergyDev"); // NOI18N - - comboLens.setModel(new javax.swing.DefaultComboBoxModel(new String[] { " " })); comboLens.setName("scienta.lensModeDev"); // NOI18N - comboLens.addActionListener(new java.awt.event.ActionListener() { - public void actionPerformed(java.awt.event.ActionEvent evt) { - comboLensActionPerformed(evt); - } - }); - jLabel7.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING); - jLabel7.setText("Lens Mode:"); - - comboAcquisition.setModel(new javax.swing.DefaultComboBoxModel(new String[] { " " })); comboAcquisition.setName("scienta.acquisitionModeDev"); // NOI18N - comboEnergy.setModel(new javax.swing.DefaultComboBoxModel(new String[] { " " })); comboEnergy.setName("scienta.energyModeDev"); // NOI18N + comboPass.setName("scienta.passEnergyDev"); // NOI18N + + jLabel24.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING); + jLabel24.setText("Pass Energy:"); + + jLabel28.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING); + jLabel28.setText("Acquisition:"); + javax.swing.GroupLayout jPanel10Layout = new javax.swing.GroupLayout(jPanel10); jPanel10.setLayout(jPanel10Layout); jPanel10Layout.setHorizontalGroup( jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel10Layout.createSequentialGroup() .addContainerGap() - .addGroup(jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) - .addGroup(jPanel10Layout.createSequentialGroup() - .addGroup(jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(jLabel5) - .addComponent(jLabel6) - .addComponent(jLabel11)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(comboPass, javax.swing.GroupLayout.PREFERRED_SIZE, 103, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(comboAcquisition, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(comboEnergy, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))) - .addGroup(jPanel10Layout.createSequentialGroup() - .addComponent(jLabel7) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(comboLens, javax.swing.GroupLayout.PREFERRED_SIZE, 103, javax.swing.GroupLayout.PREFERRED_SIZE))) + .addGroup(jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jLabel24) + .addComponent(jLabel28) + .addComponent(jLabel29) + .addComponent(jLabel30)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(comboLens, javax.swing.GroupLayout.DEFAULT_SIZE, 150, Short.MAX_VALUE) + .addComponent(comboEnergy, javax.swing.GroupLayout.DEFAULT_SIZE, 150, Short.MAX_VALUE) + .addComponent(comboAcquisition, javax.swing.GroupLayout.DEFAULT_SIZE, 150, Short.MAX_VALUE) + .addComponent(comboPass, javax.swing.GroupLayout.DEFAULT_SIZE, 150, Short.MAX_VALUE)) .addContainerGap()) ); - jPanel10Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {comboAcquisition, comboEnergy, comboLens, comboPass}); - - jPanel10Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jLabel11, jLabel5, jLabel6, jLabel7}); + jPanel10Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jLabel24, jLabel28, jLabel29, jLabel30}); jPanel10Layout.setVerticalGroup( jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(jPanel10Layout.createSequentialGroup() + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel10Layout.createSequentialGroup() .addContainerGap() - .addGroup(jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(jLabel11) - .addComponent(comboPass, javax.swing.GroupLayout.PREFERRED_SIZE, 27, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGroup(jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) + .addComponent(jLabel24) + .addComponent(comboPass, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(jLabel6) + .addGroup(jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) + .addComponent(jLabel28) .addComponent(comboAcquisition, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(jLabel5) + .addGroup(jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) + .addComponent(jLabel29) .addComponent(comboEnergy, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(jLabel7) + .addGroup(jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) + .addComponent(jLabel30) .addComponent(comboLens, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addContainerGap()) + .addContainerGap(18, Short.MAX_VALUE)) ); javax.swing.GroupLayout jPanel4Layout = new javax.swing.GroupLayout(jPanel4); jPanel4.setLayout(jPanel4Layout); jPanel4Layout.setHorizontalGroup( jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(jPanel4Layout.createSequentialGroup() - .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(jPanel10, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addGap(18, 18, Short.MAX_VALUE) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel4Layout.createSequentialGroup() + .addContainerGap() + .addComponent(jPanel10, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(panelEnergy, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(12, 12, 12) .addComponent(panelX, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(panelY, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addContainerGap(100, Short.MAX_VALUE)) + .addContainerGap()) ); jPanel4Layout.setVerticalGroup( jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel4Layout.createSequentialGroup() - .addGap(20, 20, 20) + .addContainerGap() .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(jPanel10, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) - .addComponent(panelEnergy, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(panelY, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(panelX, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))) - .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + .addComponent(panelY, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(panelX, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(panelEnergy, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(jPanel10, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addContainerGap(169, Short.MAX_VALUE)) ); + jPanel4Layout.linkSize(javax.swing.SwingConstants.VERTICAL, new java.awt.Component[] {jPanel10, panelEnergy, panelX, panelY}); + jTabbedPane1.addTab("Analyzer", jPanel4); jLabel16.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING); jLabel16.setText("Mode:"); - comboDetMode.setModel(new javax.swing.DefaultComboBoxModel(new String[] { " " })); - comboDetMode.setToolTipText(""); - comboDetMode.setName("scienta.detectorModeDev"); // NOI18N - jLabel9.setText("X Channel Range:"); jLabel25.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING); jLabel25.setText("Slices:"); - textSlices.setName("scienta.slices"); // NOI18N - textSlices.addKeyListener(new java.awt.event.KeyAdapter() { - public void keyReleased(java.awt.event.KeyEvent evt) { - roiChanged(evt); - } - }); - - textChannels.setName("scienta.channels"); // NOI18N - textChannels.addKeyListener(new java.awt.event.KeyAdapter() { - public void keyReleased(java.awt.event.KeyEvent evt) { - roiChanged(evt); - } - }); - jLabel27.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING); jLabel27.setText("Channels:"); @@ -1530,6 +1487,12 @@ public class SIStem extends PanelProcessor { } }); + comboDetMode.setName("scienta.detectorModeDev"); // NOI18N + + textChannels.setName("scienta.channels"); // NOI18N + + textSlices.setName("scienta.slices"); // NOI18N + javax.swing.GroupLayout jPanel5Layout = new javax.swing.GroupLayout(jPanel5); jPanel5.setLayout(jPanel5Layout); jPanel5Layout.setHorizontalGroup( @@ -1547,25 +1510,25 @@ public class SIStem extends PanelProcessor { .addComponent(textXChannelMin, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(textXChannelMax, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addComponent(comboDetMode, javax.swing.GroupLayout.PREFERRED_SIZE, 103, javax.swing.GroupLayout.PREFERRED_SIZE))) + .addComponent(comboDetMode, javax.swing.GroupLayout.PREFERRED_SIZE, 132, javax.swing.GroupLayout.PREFERRED_SIZE))) .addGroup(jPanel5Layout.createSequentialGroup() .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jLabel10) .addComponent(jLabel25)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(textSlices, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE) .addGroup(jPanel5Layout.createSequentialGroup() .addComponent(textYChannelMin, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(textYChannelMax, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE)))) + .addComponent(textYChannelMax, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addComponent(textSlices, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE))) .addGroup(jPanel5Layout.createSequentialGroup() .addComponent(jLabel27) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(textChannels, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE)) .addComponent(butonPlot)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(detectorPlot, javax.swing.GroupLayout.DEFAULT_SIZE, 561, Short.MAX_VALUE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 26, Short.MAX_VALUE) + .addComponent(detectorPlot, javax.swing.GroupLayout.DEFAULT_SIZE, 543, Short.MAX_VALUE) .addContainerGap()) ); @@ -1576,33 +1539,33 @@ public class SIStem extends PanelProcessor { .addGroup(jPanel5Layout.createSequentialGroup() .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel5Layout.createSequentialGroup() - .addGap(21, 21, 21) - .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addGap(18, 18, 18) + .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) .addComponent(jLabel16) - .addComponent(comboDetMode, javax.swing.GroupLayout.PREFERRED_SIZE, 27, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addComponent(comboDetMode, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(18, 18, 18) - .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) .addComponent(jLabel9) - .addComponent(textXChannelMin, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(textXChannelMax, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addComponent(textXChannelMax, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(textXChannelMin, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(textChannels, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(jLabel27)) + .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) + .addComponent(jLabel27) + .addComponent(textChannels, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(18, 18, 18) - .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) .addComponent(jLabel10) .addComponent(textYChannelMin, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(textYChannelMax, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(textSlices, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(jLabel25)) - .addGap(18, 18, Short.MAX_VALUE) + .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) + .addComponent(jLabel25) + .addComponent(textSlices, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(butonPlot)) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel5Layout.createSequentialGroup() .addContainerGap() - .addComponent(detectorPlot, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE))) + .addComponent(detectorPlot, javax.swing.GroupLayout.DEFAULT_SIZE, 301, Short.MAX_VALUE))) .addContainerGap()) ); @@ -1627,22 +1590,19 @@ public class SIStem extends PanelProcessor { jLabel21.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING); jLabel21.setText("Polarization:"); - comboPol.setModel(new javax.swing.DefaultComboBoxModel(new String[] { " " })); - comboPol.setToolTipText(""); - comboPol.setName("id_mode"); // NOI18N - - comboGrating.setModel(new javax.swing.DefaultComboBoxModel(new String[] { " " })); - comboGrating.setName("grating"); // NOI18N - jLabel23.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING); jLabel23.setText("Grating:"); + comboPol.setName("id_mode"); // NOI18N + + comboGrating.setName("grating"); // NOI18N + javax.swing.GroupLayout jPanel11Layout = new javax.swing.GroupLayout(jPanel11); jPanel11.setLayout(jPanel11Layout); jPanel11Layout.setHorizontalGroup( jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel11Layout.createSequentialGroup() - .addContainerGap(175, Short.MAX_VALUE) + .addGap(151, 151, 151) .addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jLabel22) .addComponent(jLabel8) @@ -1650,44 +1610,47 @@ public class SIStem extends PanelProcessor { .addComponent(jLabel1)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(checkCompression) - .addComponent(spinnerPasses, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(checkZigzag) - .addComponent(spinnerLatency, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addGap(139, 139, 139) - .addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) - .addComponent(jLabel21) - .addComponent(jLabel23)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(comboPol, javax.swing.GroupLayout.PREFERRED_SIZE, 103, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(comboGrating, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addContainerGap(175, Short.MAX_VALUE)) + .addGroup(jPanel11Layout.createSequentialGroup() + .addComponent(spinnerPasses, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(0, 0, Short.MAX_VALUE)) + .addGroup(jPanel11Layout.createSequentialGroup() + .addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(checkCompression) + .addComponent(checkZigzag) + .addComponent(spinnerLatency, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(139, 139, 139) + .addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(jLabel21) + .addComponent(jLabel23)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) + .addComponent(comboPol, 0, 150, Short.MAX_VALUE) + .addComponent(comboGrating, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + .addContainerGap(141, Short.MAX_VALUE)))) ); jPanel11Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {spinnerLatency, spinnerPasses}); jPanel11Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jLabel1, jLabel22, jLabel4, jLabel8}); - jPanel11Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {comboGrating, comboPol}); - jPanel11Layout.setVerticalGroup( jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel11Layout.createSequentialGroup() - .addGap(52, 52, 52) .addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel11Layout.createSequentialGroup() - .addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(checkCompression) - .addComponent(jLabel22)) - .addGap(18, 18, 18) - .addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(checkZigzag) - .addComponent(jLabel8))) + .addGap(43, 43, 43) + .addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) + .addComponent(jLabel22) + .addComponent(checkCompression)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) + .addComponent(jLabel8) + .addComponent(checkZigzag))) .addGroup(jPanel11Layout.createSequentialGroup() + .addGap(42, 42, 42) .addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel21) - .addComponent(comboPol, javax.swing.GroupLayout.PREFERRED_SIZE, 27, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addComponent(comboPol, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel23) @@ -1700,7 +1663,7 @@ public class SIStem extends PanelProcessor { .addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel1) .addComponent(spinnerPasses, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addContainerGap(134, Short.MAX_VALUE)) + .addContainerGap(177, Short.MAX_VALUE)) ); jTabbedPane1.addTab("Scan", jPanel11); @@ -1772,7 +1735,7 @@ public class SIStem extends PanelProcessor { .addComponent(buttonPrivateMasterAxis) .addGap(0, 0, Short.MAX_VALUE)) .addGroup(jPanel6Layout.createSequentialGroup() - .addComponent(jScrollPane8, javax.swing.GroupLayout.DEFAULT_SIZE, 743, Short.MAX_VALUE) + .addComponent(jScrollPane8, javax.swing.GroupLayout.DEFAULT_SIZE, 732, Short.MAX_VALUE) .addGap(18, 18, 18) .addComponent(buttonEditMaster, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE))) .addContainerGap()) @@ -1782,7 +1745,7 @@ public class SIStem extends PanelProcessor { .addGroup(jPanel6Layout.createSequentialGroup() .addContainerGap() .addGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(jScrollPane8, javax.swing.GroupLayout.DEFAULT_SIZE, 238, Short.MAX_VALUE) + .addComponent(jScrollPane8, javax.swing.GroupLayout.DEFAULT_SIZE, 269, Short.MAX_VALUE) .addComponent(buttonEditMaster)) .addGap(13, 13, 13) .addComponent(buttonPrivateMasterAxis) @@ -1884,18 +1847,18 @@ public class SIStem extends PanelProcessor { jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addGap(0, 0, 0) - .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 217, Short.MAX_VALUE) + .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 223, Short.MAX_VALUE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(jScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 262, Short.MAX_VALUE) + .addComponent(jScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 266, Short.MAX_VALUE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(jScrollPane3, javax.swing.GroupLayout.DEFAULT_SIZE, 371, Short.MAX_VALUE)) + .addComponent(jScrollPane3, javax.swing.GroupLayout.DEFAULT_SIZE, 373, Short.MAX_VALUE)) ); jPanel1Layout.setVerticalGroup( jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel1Layout.createSequentialGroup() .addGap(14, 14, 14) .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) - .addComponent(jScrollPane3, javax.swing.GroupLayout.DEFAULT_SIZE, 201, Short.MAX_VALUE) + .addComponent(jScrollPane3, javax.swing.GroupLayout.DEFAULT_SIZE, 299, Short.MAX_VALUE) .addComponent(jScrollPane2, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE) .addComponent(jScrollPane1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE)) .addContainerGap()) @@ -1937,13 +1900,13 @@ public class SIStem extends PanelProcessor { jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel3Layout.createSequentialGroup() .addGap(0, 0, 0) - .addComponent(jScrollPane4, javax.swing.GroupLayout.DEFAULT_SIZE, 211, Short.MAX_VALUE) + .addComponent(jScrollPane4, javax.swing.GroupLayout.DEFAULT_SIZE, 213, Short.MAX_VALUE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(jScrollPane5, javax.swing.GroupLayout.DEFAULT_SIZE, 211, Short.MAX_VALUE) + .addComponent(jScrollPane5, javax.swing.GroupLayout.DEFAULT_SIZE, 214, Short.MAX_VALUE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(jScrollPane6, javax.swing.GroupLayout.DEFAULT_SIZE, 211, Short.MAX_VALUE) + .addComponent(jScrollPane6, javax.swing.GroupLayout.DEFAULT_SIZE, 213, Short.MAX_VALUE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(jScrollPane7, javax.swing.GroupLayout.DEFAULT_SIZE, 211, Short.MAX_VALUE) + .addComponent(jScrollPane7, javax.swing.GroupLayout.DEFAULT_SIZE, 216, Short.MAX_VALUE) .addGap(0, 0, 0)) ); jPanel3Layout.setVerticalGroup( @@ -1951,7 +1914,7 @@ public class SIStem extends PanelProcessor { .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel3Layout.createSequentialGroup() .addGap(14, 14, 14) .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) - .addComponent(jScrollPane6, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 201, Short.MAX_VALUE) + .addComponent(jScrollPane6, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 299, Short.MAX_VALUE) .addComponent(jScrollPane5, javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jScrollPane4, javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jScrollPane7)) @@ -2017,11 +1980,13 @@ public class SIStem extends PanelProcessor { } }); - jLabel2.setText("Acquisition Time:"); + jLabel2.setText("Time:"); textTime.setEditable(false); textTime.setHorizontalAlignment(javax.swing.JTextField.CENTER); + progress.setMaximum(1000); + javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this); this.setLayout(layout); layout.setHorizontalGroup( @@ -2037,8 +2002,10 @@ public class SIStem extends PanelProcessor { .addGap(18, 18, Short.MAX_VALUE) .addComponent(jLabel2) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(textTime, javax.swing.GroupLayout.PREFERRED_SIZE, 120, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(textTime, javax.swing.GroupLayout.PREFERRED_SIZE, 170, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addComponent(progress, javax.swing.GroupLayout.PREFERRED_SIZE, 153, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(18, 18, Short.MAX_VALUE) .addComponent(buttonStart) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(buttonAbort)) @@ -2065,7 +2032,7 @@ public class SIStem extends PanelProcessor { layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() + .addGroup(layout.createSequentialGroup() .addGap(10, 10, 10) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(buttonOpen) @@ -2077,13 +2044,14 @@ public class SIStem extends PanelProcessor { .addGap(18, 18, 18) .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addGap(18, 18, 18) - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(buttonScienta) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER) + .addComponent(progress, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(textTime, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(jLabel2) .addComponent(buttonStart) .addComponent(buttonAbort) .addComponent(buttonData) - .addComponent(jLabel2) - .addComponent(textTime, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addComponent(buttonScienta)) .addContainerGap()) ); }// //GEN-END:initComponents @@ -2224,14 +2192,6 @@ public class SIStem extends PanelProcessor { updateDetectorPlot(); }//GEN-LAST:event_roiChanged - private void comboLensActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_comboLensActionPerformed - try { - updateLens(); - } catch (Exception ex) { - showException(ex); - } - }//GEN-LAST:event_comboLensActionPerformed - private void buttonEditMasterActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonEditMasterActionPerformed try { String name = (String) modelMaster.getValueAt(tableMaster.getSelectedRow(), 0); @@ -2292,17 +2252,16 @@ public class SIStem extends PanelProcessor { private javax.swing.JButton buttonStart; private javax.swing.JCheckBox checkCompression; private javax.swing.JCheckBox checkZigzag; - private javax.swing.JComboBox comboAcquisition; - private javax.swing.JComboBox comboDetMode; - private javax.swing.JComboBox comboEnergy; - private javax.swing.JComboBox comboGrating; - private javax.swing.JComboBox comboLens; - private javax.swing.JComboBox comboPass; - private javax.swing.JComboBox comboPol; + private ch.psi.pshell.swing.DiscretePositionerSelector comboAcquisition; + private ch.psi.pshell.swing.DiscretePositionerSelector comboDetMode; + private ch.psi.pshell.swing.DiscretePositionerSelector comboEnergy; + private javax.swing.JComboBox comboGrating; + private ch.psi.pshell.swing.DiscretePositionerSelector comboLens; + private ch.psi.pshell.swing.DiscretePositionerSelector comboPass; + private javax.swing.JComboBox comboPol; private ch.psi.pshell.plot.MatrixPlotJFree detectorPlot; private javax.swing.JLabel jLabel1; private javax.swing.JLabel jLabel10; - private javax.swing.JLabel jLabel11; private javax.swing.JLabel jLabel12; private javax.swing.JLabel jLabel13; private javax.swing.JLabel jLabel14; @@ -2316,14 +2275,15 @@ public class SIStem extends PanelProcessor { private javax.swing.JLabel jLabel21; private javax.swing.JLabel jLabel22; private javax.swing.JLabel jLabel23; + private javax.swing.JLabel jLabel24; private javax.swing.JLabel jLabel25; private javax.swing.JLabel jLabel26; private javax.swing.JLabel jLabel27; + private javax.swing.JLabel jLabel28; + private javax.swing.JLabel jLabel29; private javax.swing.JLabel jLabel3; + private javax.swing.JLabel jLabel30; private javax.swing.JLabel jLabel4; - private javax.swing.JLabel jLabel5; - private javax.swing.JLabel jLabel6; - private javax.swing.JLabel jLabel7; private javax.swing.JLabel jLabel8; private javax.swing.JLabel jLabel9; private javax.swing.JPanel jPanel1; @@ -2346,28 +2306,29 @@ public class SIStem extends PanelProcessor { private javax.swing.JPanel panelEnergy; private javax.swing.JPanel panelX; private javax.swing.JPanel panelY; + private javax.swing.JProgressBar progress; private javax.swing.JSpinner spinnerLatency; private javax.swing.JSpinner spinnerPasses; private javax.swing.JTable tableFixed; private javax.swing.JTable tableInactive; private javax.swing.JTable tableMaster; private javax.swing.JTable tableScanned; - private javax.swing.JTextField textCenterEnergy; - private javax.swing.JTextField textCenterThetaX; - private javax.swing.JTextField textCenterThetaY; - private javax.swing.JTextField textChannels; + private ch.psi.pshell.swing.RegisterPanel textCenterEnergy; + private ch.psi.pshell.swing.RegisterPanel textCenterThetaX; + private ch.psi.pshell.swing.RegisterPanel textCenterThetaY; + private ch.psi.pshell.swing.RegisterPanel textChannels; private javax.swing.JTextArea textDiagnostics; private javax.swing.JTextField textFile; - private javax.swing.JTextField textHighEnergy; - private javax.swing.JTextField textHighThetaY; - private javax.swing.JTextField textLowEnergy; - private javax.swing.JTextField textLowThetaY; + private ch.psi.pshell.swing.RegisterPanel textHighEnergy; + private ch.psi.pshell.swing.RegisterPanel textHighThetaY; + private ch.psi.pshell.swing.RegisterPanel textLowEnergy; + private ch.psi.pshell.swing.RegisterPanel textLowThetaY; private javax.swing.JTextArea textMonitors; private javax.swing.JTextArea textSensors; - private javax.swing.JTextField textSlices; + private ch.psi.pshell.swing.RegisterPanel textSlices; private javax.swing.JTextArea textSnapshots; - private javax.swing.JTextField textStepEnergy; - private javax.swing.JTextField textStepThetaY; + private ch.psi.pshell.swing.RegisterPanel textStepEnergy; + private ch.psi.pshell.swing.RegisterPanel textStepThetaY; private javax.swing.JTextField textTime; private javax.swing.JTextField textXChannelMax; private javax.swing.JTextField textXChannelMin; diff --git a/script/scans/test/test.json b/script/scans/test/test.json index fb01e9d..5dfaee5 100644 --- a/script/scans/test/test.json +++ b/script/scans/test/test.json @@ -1,18 +1,21 @@ { "PASSES" : 1, - "STOP" : [ 1.0 ], + "STOP" : [ ], "DIAGS" : [ "phi", "theta", "tilt", "x", "y", "z" ], "PRE_ACTIONS" : { - "id_mode" : "OFF", - "grating" : "G1 300", - "scienta.passEnergyDev" : "20", + "scienta.passEnergyDev" : "50", "scienta.acquisitionModeDev" : "Fixed", "scienta.energyModeDev" : "Kinetic", + "scienta.lensModeDev" : "DA7_08", "scienta.detectorModeDev" : "ADC", - "scienta.lowEnergy" : 14.0, - "scienta.centerEnergy" : 14.5, + "scienta.lowEnergy" : 10.0, + "scienta.centerEnergy" : 12.0, "scienta.highEnergy" : 15.0, "scienta.energyStepSize" : 0.005, + "scienta.lowThetaY" : 2.0, + "scienta.centerThetaY" : 4.0, + "scienta.highThetaY" : 6.0, + "scienta.thetaYStepSize" : 0.1, "scienta.centerThetaX" : 0.0, "scienta.slices" : 601, "scienta.channels" : 801 @@ -22,9 +25,9 @@ "ZIGZAG" : false, "SETTLING_TIME" : 0.0, "MONITORS" : [ "current" ], - "START" : [ 0.0 ], - "RANGE" : [ 900, 100, 800, 200 ], - "POSITIONERS" : [ "tilt" ], - "STEPS" : [ 10 ], + "START" : [ ], + "RANGE" : [ null, null, null, null ], + "POSITIONERS" : [ ], + "STEPS" : [ ], "SNAPS" : [ "acmi", "cff", "energy", "exit_slit", "fe_horiz_width", "fe_vert_width", "helium_valve", "master", "pgm_cff", "photon_energy", "tcmp", "temp_boot1", "temp_boot2", "temp_cryopump", "temp_cryostat", "temp_headmech", "temp_sample1", "temp_sample2", "temp_shield" ] } \ No newline at end of file