Files
x09la/src/ScientaPanel.java
2021-08-30 18:02:51 +02:00

1276 lines
68 KiB
Java

import ch.psi.pshell.device.Device;
import ch.psi.pshell.device.DeviceAdapter;
import ch.psi.pshell.device.DeviceListener;
import ch.psi.pshell.plot.LinePlotSeries;
import ch.psi.pshell.plot.Plot;
import ch.psi.utils.State;
import ch.psi.utils.swing.SwingUtils;
import java.awt.Component;
import java.io.IOException;
import java.util.logging.Level;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JComboBox;
import javax.swing.SwingUtilities;
import ch.psi.pshell.swing.*;
/**
*
*/
public final class ScientaPanel extends DevicePanel {
public ScientaPanel() {
initComponents();
ValueSelection.ValueSelectionListener valueListener = (ValueSelection origin, double value, boolean editing) -> {
if (editing) {
try {
if (origin == valueLow) {
getDevice().getLowEnergy().writeAsync(value);
} else if (origin == valueCenter) {
getDevice().getCenterEnergy().writeAsync(value);
} else if (origin == valueHigh) {
getDevice().getHighEnergy().writeAsync(value);
} else if (origin == valueStep) {
getDevice().getEnergyStepSize().writeAsync(value);
} else if (origin == valueSlices) {
getDevice().getSlices().writeAsync((int) value);
} else if (origin == valueChannels) {
getDevice().setIterations((int) value);
}/*else if (origin == valueFrames) {
getDevice().getFrames().writeAsync((int) value);
}*/
} catch (Exception ex) {
showException(ex);
}
}
};
for (Component vs : SwingUtils.getComponentsByType(this, ValueSelection.class)) {
if (((ValueSelection) vs).isEnabled()) {
((ValueSelection) vs).addListener(valueListener);
}
}
SwingUtils.setEnumCombo(comboLens, Scienta.LensMode.class);
SwingUtils.setEnumCombo(comboElement, Scienta.ElementSet.class);
SwingUtils.setEnumCombo(comboAcquisition, Scienta.AcquisitionMode.class);
SwingUtils.setEnumCombo(comboEnergy, Scienta.EnergyMode.class);
SwingUtils.setEnumCombo(comboDetector, Scienta.DetectorMode.class);
DefaultComboBoxModel model = new DefaultComboBoxModel();
for (Integer energy : Scienta.PASS_ENERGY_VALUES) {
model.addElement(energy);
}
comboPass.setModel(model);
}
public boolean getShowCameraPanel() {
return cameraPanel.isVisible();
}
public void setShowCameraPanel(boolean value) {
cameraPanel.setVisible(value);
}
@Override
public Scienta getDevice() {
return (Scienta) super.getDevice();
}
@Override
public void setDevice(Device device) {
if (getDevice() != null) {
getDevice().getCurrentStep().removeListener(progressListener);
}
super.setDevice(device);
cameraPanel.setDevice(device);
if (device == null) {
stopTimer();
} else {
getDevice().getCurrentStep().addListener(progressListener);
//cameraPanel.startTimer(3000, 0);
startTimer(3000, 0);
}
valueLow.setMaxValue(getDevice().getLowEnergy().getMaxValue());
valueLow.setMinValue(getDevice().getLowEnergy().getMinValue());
valueCenter.setMaxValue(getDevice().getCenterEnergy().getMaxValue());
valueCenter.setMinValue(getDevice().getCenterEnergy().getMinValue());
valueHigh.setMaxValue(getDevice().getHighEnergy().getMaxValue());
valueHigh.setMinValue(getDevice().getHighEnergy().getMinValue());
}
DeviceListener progressListener = new DeviceAdapter() {
@Override
public void onValueChanged(final Device device, final Object value, final Object former) {
SwingUtilities.invokeLater(() -> {
valueCurrent.setValue((Double) value);
progress.setValue((int) (getDevice().getProgress() * 1000));
});
}
};
@Override
protected void onHide() {
super.onHide();
}
@Override
protected void onTimer() {
startBackgroundUpdate();
}
//Callbacks
@Override
protected void onDeviceStateChanged(State state, State former) {
}
@Override
protected void onDeviceValueChanged(Object state, Object former) {
}
public class DeviceData {
Scienta.LensMode lensMode;
Scienta.ElementSet elementSet;
Scienta.AcquisitionMode acquisitionMode;
Scienta.EnergyMode energyMode;
Scienta.DetectorMode detectorMode;
double low;
double center;
double high;
double step;
double width;
int count;
double lowTY;
double centerTY;
double highTY;
double stepTY;
double widthTY;
int countTY;
double lowTX;
double centerTX;
double highTX;
double stepTX;
double widthTX;
int countTX;
int pass;
int slices;
int channels;
double excit;
String est;
int current;
int total;
String state;
String status;
int imageCount;
}
@Override
protected DeviceData doBackgroundUpdate() throws IOException, InterruptedException {
DeviceData dd = new DeviceData();
try{
//read-once
dd.lensMode = getDevice().getLensMode();
dd.elementSet = getDevice().getElementSet();
dd.acquisitionMode = getDevice().getAcquisitionMode();
dd.energyMode = getDevice().getEnergyMode();
dd.detectorMode = getDevice().getDetectorMode();
dd.pass = getDevice().getPassEnergy();
dd.low = getDevice().getLowEnergy().getValue();
dd.center = getDevice().getCenterEnergy().getValue();
dd.high = getDevice().getHighEnergy().getValue();
dd.step = getDevice().getEnergyStepSize().getValue();
dd.width = getDevice().getEnergyWidth().getValue();
dd.count = getDevice().getEnergyCount().getValue();
dd.lowTY = getDevice().getLowThetaY().getValue();
dd.centerTY = getDevice().getCenterThetaY().getValue();
dd.highTY = getDevice().getHighThetaY().getValue();
dd.stepTY = getDevice().getThetaYStepSize().getValue();
dd.widthTY = getDevice().getThetaYWidth().getValue();
dd.countTY = getDevice().getThetaYCount().getValue();
dd.lowTX = getDevice().getLowThetaX().getValue();
dd.centerTX = getDevice().getCenterThetaX().getValue();
dd.highTX = getDevice().getHighThetaX().getValue();
dd.stepTX = getDevice().getThetaXStepSize().getValue();
dd.widthTX = getDevice().getThetaXWidth().getValue();
dd.countTX = getDevice().getThetaXCount().getValue();
dd.current = getDevice().getCurrentStep().getValue().intValue();
dd.total = getDevice().getTotalSteps().getValue().intValue();
dd.slices = getDevice().getSlices().getValue();
dd.channels = getDevice().getChannels().getValue().intValue();
dd.status = new String( getDevice().getStatus().getValue());
dd.state = getDevice().getDetectorState().getValue();
dd.imageCount = getDevice().getImageCounter().getValue();
dd.excit = getDevice().getExcitationEnergy().getValue();
dd.est = getDevice().getEstTime().getValue();
} catch (Exception ex) {
getLogger().log(Level.WARNING, null, ex);
}
return dd;
}
void updateValueField(ValueSelection field, double value) {
try {
field.setValue(value);
} catch (Exception ex) {
getLogger().log(Level.FINE, null, ex);
}
}
void updateComboField(JComboBox field, Object value) {
try {
if (field.getSelectedItem() != value) {
field.setSelectedItem(value);
}
} catch (Exception ex) {
getLogger().log(Level.FINE, null, ex);
}
}
@Override
protected void onBackgroundUpdateFinished(Object data) {
try {
DeviceData dd = (DeviceData) data;
updateValueField(valueLow, dd.low);
updateValueField(valueCenter, dd.center);
updateValueField(valueHigh, dd.high);
updateValueField(valueStep, dd.step);
updateValueField(valueWidth, dd.width);
updateValueField(valueCount, dd.count);
updateValueField(valueLowTY, dd.lowTY);
updateValueField(valueCenterTY, dd.centerTY);
updateValueField(valueHighTY, dd.highTY);
updateValueField(valueStepTY, dd.stepTY);
updateValueField(valueWidthTY, dd.widthTY);
updateValueField(valueCountTY, dd.countTY);
updateValueField(valueLowTX, dd.lowTX);
updateValueField(valueCenterTX, dd.centerTX);
updateValueField(valueHighTX, dd.highTX);
updateValueField(valueStepTX, dd.stepTX);
updateValueField(valueWidthTX, dd.widthTX);
updateValueField(valueCountTX, dd.countTX);
updateValueField(valueSlices, dd.slices);
updateValueField(valueChannels, dd.channels);
updateValueField(valueTotal, dd.total);
updateValueField(valueCurrent, dd.current);
updateValueField(valueImageCounter, dd.imageCount);
updateValueField(valuExcit, dd.excit);
updateComboField(comboLens, dd.lensMode);
updateComboField(comboAcquisition, dd.acquisitionMode);
updateComboField(comboDetector, dd.detectorMode);
updateComboField(comboEnergy, dd.energyMode);
updateComboField(comboElement, dd.elementSet);
updateComboField(comboPass, dd.pass);
textStatus.setText(String.valueOf(dd.status));
textState.setText(String.valueOf(dd.state));
textEst.setText(String.valueOf(dd.est));
progress.setValue((int) (getDevice().getProgress() * 1000));
} catch (Exception ex) {
getLogger().log(Level.WARNING, null, ex);
}
}
/**
* This method is called from within the constructor to initialize the form. WARNING: Do NOT
* modify this code. The content of this method is always regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
private void initComponents() {
cameraPanel = new ch.psi.pshell.swing.CameraPanel();
scientaPanel = new javax.swing.JPanel();
jPanel6 = new javax.swing.JPanel();
jPanel1 = new javax.swing.JPanel();
jLabel1 = new javax.swing.JLabel();
comboLens = new javax.swing.JComboBox();
jLabel2 = new javax.swing.JLabel();
comboAcquisition = new javax.swing.JComboBox();
jLabel3 = new javax.swing.JLabel();
comboEnergy = new javax.swing.JComboBox();
jLabel4 = new javax.swing.JLabel();
comboDetector = new javax.swing.JComboBox();
jLabel5 = new javax.swing.JLabel();
comboElement = new javax.swing.JComboBox();
jPanel4 = new javax.swing.JPanel();
jLabel12 = new javax.swing.JLabel();
valueLow = new ch.psi.pshell.swing.ValueSelection();
jLabel13 = new javax.swing.JLabel();
valueCenter = new ch.psi.pshell.swing.ValueSelection();
jLabel14 = new javax.swing.JLabel();
valueHigh = new ch.psi.pshell.swing.ValueSelection();
jLabel15 = new javax.swing.JLabel();
valueWidth = new ch.psi.pshell.swing.ValueSelection();
valueCount = new ch.psi.pshell.swing.ValueSelection();
jLabel20 = new javax.swing.JLabel();
jLabel33 = new javax.swing.JLabel();
valueStep = new ch.psi.pshell.swing.ValueSelection();
jLabel11 = new javax.swing.JLabel();
comboPass = new javax.swing.JComboBox();
jPanel10 = new javax.swing.JPanel();
jLabel34 = new javax.swing.JLabel();
valueLowTY = new ch.psi.pshell.swing.ValueSelection();
jLabel35 = new javax.swing.JLabel();
valueCenterTY = new ch.psi.pshell.swing.ValueSelection();
jLabel36 = new javax.swing.JLabel();
valueHighTY = new ch.psi.pshell.swing.ValueSelection();
jLabel37 = new javax.swing.JLabel();
valueWidthTY = new ch.psi.pshell.swing.ValueSelection();
valueCountTY = new ch.psi.pshell.swing.ValueSelection();
jLabel38 = new javax.swing.JLabel();
jLabel39 = new javax.swing.JLabel();
valueStepTY = new ch.psi.pshell.swing.ValueSelection();
jPanel11 = new javax.swing.JPanel();
jLabel40 = new javax.swing.JLabel();
jLabel41 = new javax.swing.JLabel();
valueCenterTX = new ch.psi.pshell.swing.ValueSelection();
jLabel42 = new javax.swing.JLabel();
jLabel43 = new javax.swing.JLabel();
valueWidthTX = new ch.psi.pshell.swing.ValueSelection();
valueCountTX = new ch.psi.pshell.swing.ValueSelection();
jLabel44 = new javax.swing.JLabel();
jLabel45 = new javax.swing.JLabel();
valueStepTX = new ch.psi.pshell.swing.ValueSelection();
valueHighTX = new ch.psi.pshell.swing.ValueSelection();
valueLowTX = new ch.psi.pshell.swing.ValueSelection();
jLabel46 = new javax.swing.JLabel();
textEst = new javax.swing.JTextField();
jLabel9 = new javax.swing.JLabel();
valuExcit = new ch.psi.pshell.swing.ValueSelection();
jPanel7 = new javax.swing.JPanel();
jLabel10 = new javax.swing.JLabel();
valueSlices = new ch.psi.pshell.swing.ValueSelection();
buttonZeroSupplies = new javax.swing.JButton();
jLabel17 = new javax.swing.JLabel();
valueChannels = new ch.psi.pshell.swing.ValueSelection();
jPanel5 = new javax.swing.JPanel();
progress = new javax.swing.JProgressBar();
jLabel6 = new javax.swing.JLabel();
valueCurrent = new ch.psi.pshell.swing.ValueSelection();
jLabel16 = new javax.swing.JLabel();
valueTotal = new ch.psi.pshell.swing.ValueSelection();
jLabel7 = new javax.swing.JLabel();
jLabel18 = new javax.swing.JLabel();
valueImageCounter = new ch.psi.pshell.swing.ValueSelection();
jLabel19 = new javax.swing.JLabel();
textState = new javax.swing.JTextField();
textStatus = new javax.swing.JTextField();
cameraPanel.setBorder(null);
jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("Modes"));
jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel1.setText("Lens:");
comboLens.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));
comboLens.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
comboLensActionPerformed(evt);
}
});
jLabel2.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel2.setText("Acquisition:");
comboAcquisition.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));
comboAcquisition.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
comboAcquisitionActionPerformed(evt);
}
});
jLabel3.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel3.setText("Pass Energy:");
comboEnergy.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));
comboEnergy.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
comboEnergyActionPerformed(evt);
}
});
jLabel4.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel4.setText("Detector:");
comboDetector.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));
comboDetector.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
comboDetectorActionPerformed(evt);
}
});
jLabel5.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel5.setText("Element:");
comboElement.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));
comboElement.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
comboElementActionPerformed(evt);
}
});
jPanel4.setBorder(javax.swing.BorderFactory.createTitledBorder("Energy"));
jLabel12.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel12.setText("Low:");
valueLow.setDecimals(3);
valueLow.setShowButtons(false);
jLabel13.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel13.setText("Center:");
valueCenter.setDecimals(3);
valueCenter.setMinValue(0.0);
valueCenter.setShowButtons(false);
jLabel14.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel14.setText("High:");
valueHigh.setDecimals(3);
valueHigh.setShowButtons(false);
jLabel15.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel15.setText("Width:");
valueWidth.setDecimals(3);
valueWidth.setEnabled(false);
valueWidth.setMaxValue(2000.0);
valueWidth.setMinValue(0.0);
valueWidth.setShowButtons(false);
valueCount.setDecimals(3);
valueCount.setEnabled(false);
valueCount.setMaxValue(2000.0);
valueCount.setShowButtons(false);
jLabel20.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel20.setText("Count:");
jLabel33.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel33.setText("Step:");
valueStep.setDecimals(3);
valueStep.setMaxValue(2000.0);
valueStep.setMinValue(0.0);
valueStep.setShowButtons(false);
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()
.addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel15)
.addComponent(jLabel14)
.addComponent(jLabel13)
.addComponent(jLabel12)
.addComponent(jLabel20, javax.swing.GroupLayout.Alignment.TRAILING))
.addComponent(jLabel33))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(valueWidth, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(valueCount, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(valueHigh, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(valueCenter, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(valueLow, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(valueStep, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap())
);
jPanel4Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {valueCenter, valueCount, valueHigh, valueLow, valueStep, valueWidth});
jPanel4Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jLabel12, jLabel13, jLabel14, jLabel15, jLabel20, jLabel33});
jPanel4Layout.setVerticalGroup(
jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel4Layout.createSequentialGroup()
.addGap(4, 4, 4)
.addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel12)
.addComponent(valueLow, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel13)
.addComponent(valueCenter, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel14)
.addComponent(valueHigh, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel33)
.addComponent(valueStep, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
.addComponent(jLabel15)
.addComponent(valueWidth, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(valueCount, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel20))
.addContainerGap())
);
jLabel11.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel11.setText("Pass:");
comboPass.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "2", "5", "10", "20", "50", "100", "200" }));
comboPass.setToolTipText("");
comboPass.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
comboPassActionPerformed(evt);
}
});
jPanel10.setBorder(javax.swing.BorderFactory.createTitledBorder("Theta Y"));
jLabel34.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel34.setText("Low:");
valueLowTY.setDecimals(3);
valueLowTY.setMaxValue(1000.0);
valueLowTY.setMinValue(-1000.0);
valueLowTY.setShowButtons(false);
jLabel35.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel35.setText("Center:");
valueCenterTY.setDecimals(3);
valueCenterTY.setMaxValue(1000.0);
valueCenterTY.setMinValue(-1000.0);
valueCenterTY.setShowButtons(false);
jLabel36.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel36.setText("High:");
valueHighTY.setDecimals(3);
valueHighTY.setMaxValue(1000.0);
valueHighTY.setMinValue(-1000.0);
valueHighTY.setShowButtons(false);
jLabel37.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel37.setText("Width:");
valueWidthTY.setDecimals(3);
valueWidthTY.setEnabled(false);
valueWidthTY.setMaxValue(2000.0);
valueWidthTY.setMinValue(0.0);
valueWidthTY.setShowButtons(false);
valueCountTY.setDecimals(3);
valueCountTY.setEnabled(false);
valueCountTY.setMaxValue(2000.0);
valueCountTY.setMinValue(0.0);
valueCountTY.setShowButtons(false);
jLabel38.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel38.setText("Count:");
jLabel39.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel39.setText("Step:");
valueStepTY.setDecimals(3);
valueStepTY.setMaxValue(2000.0);
valueStepTY.setMinValue(0.0);
valueStepTY.setShowButtons(false);
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)
.addComponent(jLabel34)
.addComponent(jLabel35)
.addComponent(jLabel36)
.addComponent(jLabel39)
.addComponent(jLabel37)
.addComponent(jLabel38))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(valueWidthTY, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(valueCountTY, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(valueHighTY, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(valueCenterTY, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(valueLowTY, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(valueStepTY, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap())
);
jPanel10Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jLabel34, jLabel35, jLabel36, jLabel37, jLabel38, jLabel39});
jPanel10Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {valueCenterTY, valueCountTY, valueHighTY, valueLowTY, valueStepTY, valueWidthTY});
jPanel10Layout.setVerticalGroup(
jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel10Layout.createSequentialGroup()
.addGap(4, 4, 4)
.addGroup(jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel34)
.addComponent(valueLowTY, 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.LEADING)
.addComponent(jLabel35)
.addComponent(valueCenterTY, 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.LEADING)
.addComponent(jLabel36)
.addComponent(valueHighTY, 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.LEADING)
.addComponent(jLabel39)
.addComponent(valueStepTY, 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.CENTER)
.addComponent(jLabel37)
.addComponent(valueWidthTY, 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.TRAILING)
.addComponent(valueCountTY, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel38))
.addContainerGap())
);
jPanel11.setBorder(javax.swing.BorderFactory.createTitledBorder("Theta X"));
jLabel40.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel40.setText("Low:");
jLabel41.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel41.setText("Center:");
valueCenterTX.setDecimals(3);
valueCenterTX.setMaxValue(1000.0);
valueCenterTX.setMinValue(-1000.0);
valueCenterTX.setShowButtons(false);
jLabel42.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel42.setText("High:");
jLabel43.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel43.setText("Width:");
valueWidthTX.setDecimals(3);
valueWidthTX.setEnabled(false);
valueWidthTX.setMaxValue(2000.0);
valueWidthTX.setMinValue(0.0);
valueWidthTX.setShowButtons(false);
valueCountTX.setDecimals(3);
valueCountTX.setEnabled(false);
valueCountTX.setMaxValue(2000.0);
valueCountTX.setMinValue(0.0);
valueCountTX.setShowButtons(false);
jLabel44.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel44.setText("Count:");
jLabel45.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel45.setText("Step:");
valueStepTX.setDecimals(3);
valueStepTX.setEnabled(false);
valueStepTX.setMaxValue(2000.0);
valueStepTX.setMinValue(0.0);
valueStepTX.setShowButtons(false);
valueHighTX.setDecimals(3);
valueHighTX.setEnabled(false);
valueHighTX.setMaxValue(1000.0);
valueHighTX.setMinValue(-1000.0);
valueHighTX.setShowButtons(false);
valueLowTX.setDecimals(3);
valueLowTX.setEnabled(false);
valueLowTX.setMaxValue(1000.0);
valueLowTX.setMinValue(-1000.0);
valueLowTX.setShowButtons(false);
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()
.addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel42, javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jLabel43, javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jLabel44, javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jLabel45, javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jLabel40, javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jLabel41, javax.swing.GroupLayout.Alignment.TRAILING))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(valueCenterTX, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(valueStepTX, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addComponent(valueHighTX, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addComponent(valueLowTX, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addComponent(valueWidthTX, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(valueCountTX, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap())
);
jPanel11Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jLabel40, jLabel41, jLabel42, jLabel43, jLabel44, jLabel45});
jPanel11Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {valueCenterTX, valueCountTX, valueHighTX, valueLowTX, valueStepTX, valueWidthTX});
jPanel11Layout.setVerticalGroup(
jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel11Layout.createSequentialGroup()
.addGap(4, 4, 4)
.addGroup(jPanel11Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel40)
.addComponent(valueLowTX, 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.LEADING)
.addComponent(jLabel41)
.addComponent(valueCenterTX, 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.CENTER)
.addComponent(jLabel42)
.addComponent(valueHighTX, 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.LEADING)
.addComponent(jLabel45)
.addComponent(valueStepTX, 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.CENTER)
.addComponent(jLabel43)
.addComponent(valueWidthTX, 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.TRAILING)
.addComponent(valueCountTX, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel44))
.addContainerGap())
);
jLabel46.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel46.setText("Time Estimated:");
textEst.setEditable(false);
jLabel9.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel9.setText("Excit.:");
valuExcit.setDecimals(3);
valuExcit.setMaxValue(2000.0);
valuExcit.setMinValue(0.0);
valuExcit.setShowButtons(false);
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addComponent(jPanel4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jPanel10, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jPanel11, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel9, javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jLabel3, javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jLabel2, javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jLabel1, javax.swing.GroupLayout.Alignment.TRAILING))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(comboLens, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, 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))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel5)
.addComponent(jLabel4)))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
.addGap(0, 0, Short.MAX_VALUE)
.addComponent(jLabel11))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
.addComponent(valuExcit, 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(jLabel46)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(comboPass, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(comboElement, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(comboDetector, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(textEst, javax.swing.GroupLayout.PREFERRED_SIZE, 68, javax.swing.GroupLayout.PREFERRED_SIZE))))
.addContainerGap())
);
jPanel1Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jLabel1, jLabel2, jLabel3, jLabel4, jLabel5});
jPanel1Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {comboAcquisition, comboDetector, comboElement, comboEnergy, comboLens, comboPass, textEst, valuExcit});
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGap(4, 4, 4)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel1)
.addComponent(comboLens, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel2)
.addComponent(comboAcquisition, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel4)
.addComponent(comboDetector, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel5)
.addComponent(comboElement, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(comboEnergy, 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(valuExcit, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(comboPass, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel11))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel46)
.addComponent(textEst, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel9))))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel10, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel11, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addGap(4, 4, 4))
);
jPanel7.setBorder(javax.swing.BorderFactory.createTitledBorder("Detector"));
jLabel10.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel10.setText("Slices:");
valueSlices.setDecimals(0);
valueSlices.setMaxValue(10000.0);
valueSlices.setMinValue(0.0);
valueSlices.setShowButtons(false);
buttonZeroSupplies.setText("Zero Supplies");
buttonZeroSupplies.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
buttonZeroSuppliesActionPerformed(evt);
}
});
jLabel17.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel17.setText("Channels:");
valueChannels.setDecimals(0);
valueChannels.setMaxValue(10000.0);
valueChannels.setMinValue(0.0);
valueChannels.setShowButtons(false);
javax.swing.GroupLayout jPanel7Layout = new javax.swing.GroupLayout(jPanel7);
jPanel7.setLayout(jPanel7Layout);
jPanel7Layout.setHorizontalGroup(
jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel7Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel10)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(valueSlices, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jLabel17)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(valueChannels, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, Short.MAX_VALUE)
.addComponent(buttonZeroSupplies, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addContainerGap())
);
jPanel7Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jLabel10, jLabel17});
jPanel7Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {valueChannels, valueSlices});
jPanel7Layout.setVerticalGroup(
jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel7Layout.createSequentialGroup()
.addGap(4, 4, 4)
.addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
.addComponent(jLabel10)
.addComponent(valueSlices, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel17)
.addComponent(valueChannels, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(buttonZeroSupplies))
.addContainerGap())
);
jPanel5.setBorder(javax.swing.BorderFactory.createTitledBorder("Progress"));
progress.setMaximum(1000);
jLabel6.setText("Current step:");
valueCurrent.setDecimals(0);
valueCurrent.setEnabled(false);
valueCurrent.setMaxValue(100000.0);
valueCurrent.setMinValue(0.0);
valueCurrent.setShowButtons(false);
jLabel16.setText("Total:");
valueTotal.setDecimals(0);
valueTotal.setEnabled(false);
valueTotal.setMaxValue(100000.0);
valueTotal.setMinValue(0.0);
valueTotal.setShowButtons(false);
jLabel7.setText("Det. State:");
jLabel18.setText("Image Counter:");
valueImageCounter.setDecimals(0);
valueImageCounter.setEnabled(false);
valueImageCounter.setMaxValue(100000.0);
valueImageCounter.setMinValue(0.0);
valueImageCounter.setShowButtons(false);
jLabel19.setText("Status:");
textState.setEditable(false);
textStatus.setEditable(false);
javax.swing.GroupLayout jPanel5Layout = new javax.swing.GroupLayout(jPanel5);
jPanel5.setLayout(jPanel5Layout);
jPanel5Layout.setHorizontalGroup(
jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel5Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel5Layout.createSequentialGroup()
.addComponent(jLabel6)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(valueCurrent, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(jLabel16)
.addGap(12, 12, 12)
.addComponent(valueTotal, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(progress, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addGroup(jPanel5Layout.createSequentialGroup()
.addComponent(jLabel19)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(textStatus))
.addGroup(jPanel5Layout.createSequentialGroup()
.addComponent(jLabel7)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(textState)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jLabel18)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(valueImageCounter, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addContainerGap())
);
jPanel5Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jLabel19, jLabel6, jLabel7});
jPanel5Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {valueCurrent, valueImageCounter, valueTotal});
jPanel5Layout.setVerticalGroup(
jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel5Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
.addComponent(jLabel7)
.addComponent(jLabel18)
.addComponent(valueImageCounter, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(textState, 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(jLabel19)
.addComponent(textStatus, 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.CENTER)
.addComponent(jLabel6)
.addComponent(valueCurrent, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(valueTotal, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(progress, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel16))
.addContainerGap())
);
javax.swing.GroupLayout jPanel6Layout = new javax.swing.GroupLayout(jPanel6);
jPanel6.setLayout(jPanel6Layout);
jPanel6Layout.setHorizontalGroup(
jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel7, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
);
jPanel6Layout.setVerticalGroup(
jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel6Layout.createSequentialGroup()
.addGap(0, 0, 0)
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 0, 0)
.addComponent(jPanel7, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 0, 0)
.addComponent(jPanel5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
javax.swing.GroupLayout scientaPanelLayout = new javax.swing.GroupLayout(scientaPanel);
scientaPanel.setLayout(scientaPanelLayout);
scientaPanelLayout.setHorizontalGroup(
scientaPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
);
scientaPanelLayout.setVerticalGroup(
scientaPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
this.setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(cameraPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(scientaPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(cameraPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(scientaPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
);
}// </editor-fold>//GEN-END:initComponents
private void comboLensActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_comboLensActionPerformed
try {
if (!isBackgroundUpdate()) {
Scienta.LensMode mode = (Scienta.LensMode) comboLens.getSelectedItem();
if (mode != null) {
getDevice().setLensMode(mode);
}
}
} catch (Exception ex) {
showException(ex);
}
}//GEN-LAST:event_comboLensActionPerformed
private void comboAcquisitionActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_comboAcquisitionActionPerformed
try {
if (!isBackgroundUpdate()) {
Scienta.AcquisitionMode mode = (Scienta.AcquisitionMode) comboAcquisition.getSelectedItem();
if (mode != null) {
getDevice().setAcquisitionMode(mode);
}
}
} catch (Exception ex) {
showException(ex);
}
}//GEN-LAST:event_comboAcquisitionActionPerformed
private void comboEnergyActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_comboEnergyActionPerformed
try {
if (!isBackgroundUpdate()) {
Scienta.EnergyMode mode = (Scienta.EnergyMode) comboEnergy.getSelectedItem();
if (mode != null) {
getDevice().setEnergyMode(mode);
}
}
} catch (Exception ex) {
showException(ex);
}
}//GEN-LAST:event_comboEnergyActionPerformed
private void comboDetectorActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_comboDetectorActionPerformed
try {
if (!isBackgroundUpdate()) {
Scienta.DetectorMode mode = (Scienta.DetectorMode) comboDetector.getSelectedItem();
if (mode != null) {
getDevice().setDetectorMode(mode);
}
}
} catch (Exception ex) {
showException(ex);
}
}//GEN-LAST:event_comboDetectorActionPerformed
private void comboElementActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_comboElementActionPerformed
try {
if (!isBackgroundUpdate()) {
Scienta.ElementSet mode = (Scienta.ElementSet) comboElement.getSelectedItem();
if (mode != null) {
getDevice().setElementSet(mode);
}
}
} catch (Exception ex) {
showException(ex);
}
}//GEN-LAST:event_comboElementActionPerformed
private void comboPassActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_comboPassActionPerformed
try {
if (!isBackgroundUpdate()) {
int val = (int) comboPass.getSelectedItem();
getDevice().setPassEnergy(val);
}
} catch (Exception ex) {
showException(ex);
}
}//GEN-LAST:event_comboPassActionPerformed
private void buttonZeroSuppliesActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonZeroSuppliesActionPerformed
try {
getDevice().zeroSupplies();
} catch (Exception ex) {
showException(ex);
}
}//GEN-LAST:event_buttonZeroSuppliesActionPerformed
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JButton buttonZeroSupplies;
private ch.psi.pshell.swing.CameraPanel cameraPanel;
private javax.swing.JComboBox comboAcquisition;
private javax.swing.JComboBox comboDetector;
private javax.swing.JComboBox comboElement;
private javax.swing.JComboBox comboEnergy;
private javax.swing.JComboBox comboLens;
private javax.swing.JComboBox comboPass;
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;
private javax.swing.JLabel jLabel15;
private javax.swing.JLabel jLabel16;
private javax.swing.JLabel jLabel17;
private javax.swing.JLabel jLabel18;
private javax.swing.JLabel jLabel19;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel20;
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 jLabel31;
private javax.swing.JLabel jLabel32;
private javax.swing.JLabel jLabel33;
private javax.swing.JLabel jLabel34;
private javax.swing.JLabel jLabel35;
private javax.swing.JLabel jLabel36;
private javax.swing.JLabel jLabel37;
private javax.swing.JLabel jLabel38;
private javax.swing.JLabel jLabel39;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel40;
private javax.swing.JLabel jLabel41;
private javax.swing.JLabel jLabel42;
private javax.swing.JLabel jLabel43;
private javax.swing.JLabel jLabel44;
private javax.swing.JLabel jLabel45;
private javax.swing.JLabel jLabel46;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel7;
private javax.swing.JLabel jLabel9;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel10;
private javax.swing.JPanel jPanel11;
private javax.swing.JPanel jPanel4;
private javax.swing.JPanel jPanel5;
private javax.swing.JPanel jPanel6;
private javax.swing.JPanel jPanel7;
private javax.swing.JPanel jPanel8;
private javax.swing.JPanel jPanel9;
private javax.swing.JProgressBar progress;
private javax.swing.JPanel scientaPanel;
private javax.swing.JTextField textEst;
private javax.swing.JTextField textState;
private javax.swing.JTextField textStatus;
private ch.psi.pshell.swing.ValueSelection valuExcit;
private ch.psi.pshell.swing.ValueSelection valueCenter;
private ch.psi.pshell.swing.ValueSelection valueCenter1;
private ch.psi.pshell.swing.ValueSelection valueCenter2;
private ch.psi.pshell.swing.ValueSelection valueCenterTX;
private ch.psi.pshell.swing.ValueSelection valueCenterTY;
private ch.psi.pshell.swing.ValueSelection valueChannels;
private ch.psi.pshell.swing.ValueSelection valueCount;
private ch.psi.pshell.swing.ValueSelection valueCount1;
private ch.psi.pshell.swing.ValueSelection valueCount2;
private ch.psi.pshell.swing.ValueSelection valueCountTX;
private ch.psi.pshell.swing.ValueSelection valueCountTY;
private ch.psi.pshell.swing.ValueSelection valueCurrent;
private ch.psi.pshell.swing.ValueSelection valueHigh;
private ch.psi.pshell.swing.ValueSelection valueHigh1;
private ch.psi.pshell.swing.ValueSelection valueHigh2;
private ch.psi.pshell.swing.ValueSelection valueHighTX;
private ch.psi.pshell.swing.ValueSelection valueHighTY;
private ch.psi.pshell.swing.ValueSelection valueImageCounter;
private ch.psi.pshell.swing.ValueSelection valueLow;
private ch.psi.pshell.swing.ValueSelection valueLow1;
private ch.psi.pshell.swing.ValueSelection valueLow2;
private ch.psi.pshell.swing.ValueSelection valueLowTX;
private ch.psi.pshell.swing.ValueSelection valueLowTY;
private ch.psi.pshell.swing.ValueSelection valueSize1;
private ch.psi.pshell.swing.ValueSelection valueSize2;
private ch.psi.pshell.swing.ValueSelection valueSlices;
private ch.psi.pshell.swing.ValueSelection valueStep;
private ch.psi.pshell.swing.ValueSelection valueStepTX;
private ch.psi.pshell.swing.ValueSelection valueStepTY;
private ch.psi.pshell.swing.ValueSelection valueTotal;
private ch.psi.pshell.swing.ValueSelection valueWidth;
private ch.psi.pshell.swing.ValueSelection valueWidth1;
private ch.psi.pshell.swing.ValueSelection valueWidth2;
private ch.psi.pshell.swing.ValueSelection valueWidthTX;
private ch.psi.pshell.swing.ValueSelection valueWidthTY;
// End of variables declaration//GEN-END:variables
}