Closedown
This commit is contained in:
@@ -9,8 +9,11 @@ import ch.psi.utils.State;
|
||||
import ch.psi.utils.swing.SwingUtils;
|
||||
import java.awt.Component;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import javax.swing.JCheckBox;
|
||||
import javax.swing.JSpinner;
|
||||
import javax.swing.JToggleButton;
|
||||
import javax.swing.SpinnerNumberModel;
|
||||
|
||||
/**
|
||||
@@ -19,7 +22,13 @@ import javax.swing.SpinnerNumberModel;
|
||||
public class HoloScan extends Panel {
|
||||
|
||||
public HoloScan() {
|
||||
initComponents();
|
||||
initComponents();
|
||||
ArrayList<Component> persistedComponents = new ArrayList<>();
|
||||
persistedComponents.addAll(Arrays.asList(SwingUtils.getComponentsByType(panelSensors, JCheckBox.class)));
|
||||
persistedComponents.addAll(Arrays.asList(SwingUtils.getComponentsByType(panelPositioners, JSpinner.class)));
|
||||
persistedComponents.addAll(Arrays.asList(SwingUtils.getComponentsByType(panelPositioners, JToggleButton.class)));
|
||||
persistedComponents.add(checkEndScan);
|
||||
setPersistedComponents(persistedComponents.toArray(new Component[0]));
|
||||
}
|
||||
|
||||
//Overridable callbacks
|
||||
@@ -54,7 +63,7 @@ public class HoloScan extends Panel {
|
||||
for (Component c : panelSensors.getComponents()) {
|
||||
c.setEnabled(enableControls);
|
||||
}
|
||||
for (Component c : panelPhi.getComponents()) {
|
||||
for (Component c : panelPositioners.getComponents()) {
|
||||
c.setEnabled(enableControls);
|
||||
}
|
||||
buttonStart.setEnabled(enableControls);
|
||||
@@ -108,7 +117,7 @@ public class HoloScan extends Panel {
|
||||
|
||||
buttonGroup1 = new javax.swing.ButtonGroup();
|
||||
buttonGroup2 = new javax.swing.ButtonGroup();
|
||||
panelPhi = new javax.swing.JPanel();
|
||||
panelPositioners = new javax.swing.JPanel();
|
||||
motorPanelPhi = new ch.psi.pshell.swing.MotorReadoutPanel();
|
||||
radioStepSize = new javax.swing.JRadioButton();
|
||||
radioSteps = new javax.swing.JRadioButton();
|
||||
@@ -152,8 +161,8 @@ public class HoloScan extends Panel {
|
||||
buttonAbort = new javax.swing.JButton();
|
||||
checkEndScan = new javax.swing.JCheckBox();
|
||||
|
||||
panelPhi.setBorder(javax.swing.BorderFactory.createTitledBorder("Positioners"));
|
||||
panelPhi.setPreferredSize(new java.awt.Dimension(239, 538));
|
||||
panelPositioners.setBorder(javax.swing.BorderFactory.createTitledBorder("Positioners"));
|
||||
panelPositioners.setPreferredSize(new java.awt.Dimension(239, 538));
|
||||
|
||||
buttonGroup1.add(radioStepSize);
|
||||
radioStepSize.setSelected(true);
|
||||
@@ -214,54 +223,54 @@ public class HoloScan extends Panel {
|
||||
|
||||
checkZigzag.setText("Zigzag");
|
||||
|
||||
javax.swing.GroupLayout panelPhiLayout = new javax.swing.GroupLayout(panelPhi);
|
||||
panelPhi.setLayout(panelPhiLayout);
|
||||
panelPhiLayout.setHorizontalGroup(
|
||||
panelPhiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(panelPhiLayout.createSequentialGroup()
|
||||
javax.swing.GroupLayout panelPositionersLayout = new javax.swing.GroupLayout(panelPositioners);
|
||||
panelPositioners.setLayout(panelPositionersLayout);
|
||||
panelPositionersLayout.setHorizontalGroup(
|
||||
panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(panelPositionersLayout.createSequentialGroup()
|
||||
.addContainerGap()
|
||||
.addGroup(panelPhiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(panelPhiLayout.createSequentialGroup()
|
||||
.addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(panelPositionersLayout.createSequentialGroup()
|
||||
.addComponent(jLabel6)
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||
.addComponent(motorPanelPhi, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
|
||||
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelPhiLayout.createSequentialGroup()
|
||||
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelPositionersLayout.createSequentialGroup()
|
||||
.addGap(0, 23, Short.MAX_VALUE)
|
||||
.addGroup(panelPhiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelPhiLayout.createSequentialGroup()
|
||||
.addGroup(panelPhiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelPositionersLayout.createSequentialGroup()
|
||||
.addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addComponent(jLabel4, javax.swing.GroupLayout.Alignment.TRAILING)
|
||||
.addComponent(jLabel5, javax.swing.GroupLayout.Alignment.TRAILING)
|
||||
.addComponent(jLabel8, javax.swing.GroupLayout.Alignment.TRAILING)
|
||||
.addComponent(jLabel9, javax.swing.GroupLayout.Alignment.TRAILING))
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||
.addGroup(panelPhiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
|
||||
.addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
|
||||
.addComponent(spinnerFromPhi, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 91, Short.MAX_VALUE)
|
||||
.addComponent(spinnerToPhi, javax.swing.GroupLayout.Alignment.TRAILING)
|
||||
.addComponent(spinnerFromTheta, javax.swing.GroupLayout.Alignment.TRAILING)
|
||||
.addComponent(spinnerToTheta, javax.swing.GroupLayout.Alignment.TRAILING)))
|
||||
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelPhiLayout.createSequentialGroup()
|
||||
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelPositionersLayout.createSequentialGroup()
|
||||
.addComponent(jLabel11)
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||
.addComponent(spinnerStepSizePhi, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
||||
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelPhiLayout.createSequentialGroup()
|
||||
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelPositionersLayout.createSequentialGroup()
|
||||
.addComponent(jLabel12)
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||
.addComponent(spinnerStepSizeTheta, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
||||
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelPhiLayout.createSequentialGroup()
|
||||
.addGroup(panelPhiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
|
||||
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelPositionersLayout.createSequentialGroup()
|
||||
.addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
|
||||
.addComponent(jLabel14)
|
||||
.addComponent(jLabel13))
|
||||
.addGap(6, 6, 6)
|
||||
.addGroup(panelPhiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addComponent(spinnerStepsPhi, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addComponent(spinnerStepsTheta, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))))
|
||||
.addGroup(panelPhiLayout.createSequentialGroup()
|
||||
.addGroup(panelPositionersLayout.createSequentialGroup()
|
||||
.addComponent(jLabel7)
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||
.addComponent(motorPanelTheta, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
|
||||
.addGroup(panelPhiLayout.createSequentialGroup()
|
||||
.addGroup(panelPhiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(panelPositionersLayout.createSequentialGroup()
|
||||
.addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addComponent(radioSteps)
|
||||
.addComponent(radioStepSize)
|
||||
.addComponent(checkZigzag))
|
||||
@@ -269,57 +278,57 @@ public class HoloScan extends Panel {
|
||||
.addContainerGap())
|
||||
);
|
||||
|
||||
panelPhiLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {radioStepSize, radioSteps});
|
||||
panelPositionersLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {radioStepSize, radioSteps});
|
||||
|
||||
panelPhiLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {spinnerStepSizePhi, spinnerStepSizeTheta, spinnerStepsPhi});
|
||||
panelPositionersLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {spinnerStepSizePhi, spinnerStepSizeTheta, spinnerStepsPhi});
|
||||
|
||||
panelPhiLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jLabel6, jLabel7});
|
||||
panelPositionersLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jLabel6, jLabel7});
|
||||
|
||||
panelPhiLayout.setVerticalGroup(
|
||||
panelPhiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(panelPhiLayout.createSequentialGroup()
|
||||
panelPositionersLayout.setVerticalGroup(
|
||||
panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(panelPositionersLayout.createSequentialGroup()
|
||||
.addContainerGap()
|
||||
.addGroup(panelPhiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
|
||||
.addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
|
||||
.addComponent(jLabel6)
|
||||
.addComponent(motorPanelPhi, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||
.addGroup(panelPhiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
|
||||
.addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
|
||||
.addComponent(jLabel7)
|
||||
.addComponent(motorPanelTheta, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
|
||||
.addGroup(panelPhiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||
.addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||
.addComponent(spinnerFromPhi, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addComponent(jLabel4))
|
||||
.addGap(3, 3, 3)
|
||||
.addGroup(panelPhiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||
.addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||
.addComponent(spinnerToPhi, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addComponent(jLabel5))
|
||||
.addGap(3, 3, 3)
|
||||
.addGroup(panelPhiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||
.addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||
.addComponent(spinnerFromTheta, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addComponent(jLabel9))
|
||||
.addGap(3, 3, 3)
|
||||
.addGroup(panelPhiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||
.addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||
.addComponent(spinnerToTheta, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addComponent(jLabel8))
|
||||
.addGap(18, 18, 18)
|
||||
.addComponent(radioStepSize)
|
||||
.addGap(3, 3, 3)
|
||||
.addGroup(panelPhiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||
.addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||
.addComponent(spinnerStepSizePhi, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addComponent(jLabel11))
|
||||
.addGap(3, 3, 3)
|
||||
.addGroup(panelPhiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||
.addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||
.addComponent(spinnerStepSizeTheta, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addComponent(jLabel12))
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
|
||||
.addComponent(radioSteps)
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||
.addGroup(panelPhiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||
.addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||
.addComponent(spinnerStepsPhi, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addComponent(jLabel13))
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||
.addGroup(panelPhiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||
.addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||
.addComponent(spinnerStepsTheta, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addComponent(jLabel14))
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||
@@ -496,20 +505,20 @@ public class HoloScan extends Panel {
|
||||
.addContainerGap()
|
||||
.addComponent(panelSensors, javax.swing.GroupLayout.PREFERRED_SIZE, 233, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
|
||||
.addComponent(panelPhi, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addComponent(panelPositioners, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
|
||||
.addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
|
||||
);
|
||||
|
||||
layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jPanel3, panelPhi});
|
||||
layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jPanel3, panelPositioners});
|
||||
|
||||
layout.setVerticalGroup(
|
||||
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(layout.createSequentialGroup()
|
||||
.addContainerGap()
|
||||
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addComponent(panelPhi, javax.swing.GroupLayout.DEFAULT_SIZE, 543, Short.MAX_VALUE)
|
||||
.addComponent(panelPositioners, javax.swing.GroupLayout.DEFAULT_SIZE, 543, Short.MAX_VALUE)
|
||||
.addComponent(panelSensors, javax.swing.GroupLayout.DEFAULT_SIZE, 543, Short.MAX_VALUE)
|
||||
.addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE, 543, Short.MAX_VALUE))
|
||||
.addContainerGap())
|
||||
@@ -579,7 +588,7 @@ public class HoloScan extends Panel {
|
||||
private javax.swing.JPanel jPanel3;
|
||||
private ch.psi.pshell.swing.MotorReadoutPanel motorPanelPhi;
|
||||
private ch.psi.pshell.swing.MotorReadoutPanel motorPanelTheta;
|
||||
private javax.swing.JPanel panelPhi;
|
||||
private javax.swing.JPanel panelPositioners;
|
||||
private javax.swing.JPanel panelSensors;
|
||||
private javax.swing.JRadioButton radioStepSize;
|
||||
private javax.swing.JRadioButton radioSteps;
|
||||
|
||||
Reference in New Issue
Block a user