This commit is contained in:
gac-x11ma
2020-02-05 14:21:56 +01:00
parent 27152efce8
commit 15313b378b
15 changed files with 671 additions and 154 deletions

View File

@@ -5,25 +5,36 @@ import ch.psi.pshell.imaging.Overlays.Rect;
import ch.psi.pshell.imaging.Pen;
import ch.psi.pshell.imaging.Renderer;
import ch.psi.pshell.imaging.RendererListener;
import ch.psi.pshell.swing.DevicePanel;
import ch.psi.pshell.ui.App;
import ch.psi.pshell.ui.Panel;
import static ch.psi.pshell.ui.StripChart.FILE_EXTENSION;
import ch.psi.utils.Arr;
import ch.psi.utils.State;
import ch.psi.utils.swing.SwingUtils;
import java.awt.Component;
import java.awt.Dimension;
import java.awt.Point;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JDialog;
import javax.swing.JFileChooser;
import javax.swing.JPanel;
import javax.swing.JSpinner;
import javax.swing.JToggleButton;
import javax.swing.event.TableModelEvent;
import javax.swing.event.TableModelListener;
import javax.swing.filechooser.FileNameExtensionFilter;
import javax.swing.table.DefaultTableModel ;
/**
@@ -39,8 +50,7 @@ public class Eiger extends Panel {
public enum Switching {
Normal,
Tune_Detune,
Chopper
Tune_Detune
}
public enum Polarization {
@@ -128,6 +138,36 @@ public class Eiger extends Panel {
//Overridable callbacks
@Override
public void onInitialize(int runCount) {
try {
textNorm.setText(String.valueOf(getSetting("NORM_FILE")));
removeNorm();
String id = getSetting("ID");
Double en = Double.valueOf(getSetting("ENERGY"));
String pol1 = getSetting("POL_ID_1");
Double alp1 = Double.valueOf(getSetting("ALPHA_ID_1"));
String har1 = getSetting("HARMONIC_ID_1");
Double off1 = Double.valueOf(getSetting("OFFSET_ID_1"));
String pol2 = getSetting("POL_ID_2");
Double alp2 = Double.valueOf(getSetting("ALPHA_ID_2"));
String har2 = getSetting("HARMONIC_ID_2");
Double off2 = Double.valueOf(getSetting("OFFSET_ID_2"));
comboID.setSelectedItem(id);
spinnerImgEng.setValue(en);
comboPol1.setSelectedItem(pol1);
spinnerAlp1.setValue(alp1);
spinnerHar1.setValue(har1);
spinnerOff1.setValue(off1);
comboPol2.setSelectedItem(pol2);
spinnerAlp2.setValue(alp2);
spinnerHar2.setValue(har2);
spinnerOff2.setValue(off2);
} catch (IOException ex) {
showException(ex);
}
}
@Override
@@ -232,6 +272,7 @@ public class Eiger extends Panel {
void setBeamlineArgs(HashMap args) {
args.put("ID", comboID.getSelectedItem());
args.put("ENERGY", spinnerImgEng.getValue());
args.put("POL_ID_1", comboPol1.getSelectedItem());
args.put("ALPHA_ID_1", spinnerAlp1.getValue());
args.put("HARMONIC_ID_1", spinnerHar1.getValue());
@@ -316,6 +357,47 @@ public class Eiger extends Panel {
});
}
void removeNorm(){
try{
JDialog dlg = App.getInstance().getDevicePanelManager().getPanelDialog("norm");
if (dlg!=null){
dlg.dispose();
}
removeDevice(this.getDevice("norm"), true);
if (buttonShowNorm.isSelected()){
buttonShowNorm.setSelected(false);
buttonShowNorm.setText("Show");
}
} catch (Exception ex){
ex.printStackTrace();
}
}
void enableNorm(boolean enabled) throws Context.ContextStateException {
if (!enabled){
removeNorm();
} else {
runAsync("devices/norm", null).handle((ret, t) -> {
if ((t != null) && (!getContext().isAborted())) {
showException((Exception) t);
}
JDialog dlg = App.getInstance().getDevicePanelManager().getPanelDialog("norm");
if (dlg!=null){
dlg.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
dlg.removeWindowListener(this);
removeNorm();
}
});
}
return t;
});
}
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
@@ -355,6 +437,13 @@ public class Eiger extends Panel {
jLabel16 = new javax.swing.JLabel();
spinnerOff2 = new javax.swing.JSpinner();
buttonApply = new javax.swing.JButton();
jLabel27 = new javax.swing.JLabel();
spinnerImgEng = new javax.swing.JSpinner();
panelNorm = new javax.swing.JPanel();
buttonSetNorm = new javax.swing.JButton();
textNorm = new javax.swing.JTextField();
jLabel29 = new javax.swing.JLabel();
buttonShowNorm = new javax.swing.JToggleButton();
panelRoi = new javax.swing.JPanel();
rendererRoi = new ch.psi.pshell.imaging.Renderer();
jLabel26 = new javax.swing.JLabel();
@@ -363,6 +452,7 @@ public class Eiger extends Panel {
jScrollPane1 = new javax.swing.JScrollPane();
tableRoi = new javax.swing.JTable();
buttonTriggerDetector = new javax.swing.JButton();
buttonShowDetectorPanel = new javax.swing.JButton();
jPanel2 = new javax.swing.JPanel();
buttonImgStart = new javax.swing.JButton();
buttonImgAbort = new javax.swing.JButton();
@@ -529,6 +619,7 @@ public class Eiger extends Panel {
panelBeamline.setBorder(javax.swing.BorderFactory.createTitledBorder("Beamline"));
jLabel3.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel3.setText("ID:");
comboID.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));
@@ -664,25 +755,43 @@ public class Eiger extends Panel {
}
});
jLabel27.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel27.setText("Energy");
spinnerImgEng.setModel(new javax.swing.SpinnerNumberModel(1000.0d, 90.0d, 2520.0d, 1.0d));
javax.swing.GroupLayout panelBeamlineLayout = new javax.swing.GroupLayout(panelBeamline);
panelBeamline.setLayout(panelBeamlineLayout);
panelBeamlineLayout.setHorizontalGroup(
panelBeamlineLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(panelBeamlineLayout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel3)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(comboID, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel7, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGap(18, 18, 18)
.addComponent(jPanel9, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(panelBeamlineLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(panelBeamlineLayout.createSequentialGroup()
.addGroup(panelBeamlineLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(panelBeamlineLayout.createSequentialGroup()
.addComponent(jLabel3)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(comboID, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(panelBeamlineLayout.createSequentialGroup()
.addComponent(jLabel27)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(spinnerImgEng, 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(jPanel7, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGap(18, 18, 18)
.addComponent(jPanel9, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addGroup(panelBeamlineLayout.createSequentialGroup()
.addGap(0, 0, Short.MAX_VALUE)
.addComponent(buttonApply, javax.swing.GroupLayout.PREFERRED_SIZE, 166, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 0, Short.MAX_VALUE)))
.addContainerGap())
.addGroup(panelBeamlineLayout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(buttonApply, javax.swing.GroupLayout.PREFERRED_SIZE, 166, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
panelBeamlineLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jLabel27, jLabel3});
panelBeamlineLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {comboID, spinnerImgEng});
panelBeamlineLayout.setVerticalGroup(
panelBeamlineLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelBeamlineLayout.createSequentialGroup()
@@ -694,12 +803,72 @@ public class Eiger extends Panel {
.addGap(30, 30, 30)
.addGroup(panelBeamlineLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(comboID, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel3))))
.addComponent(jLabel3))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(panelBeamlineLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel27)
.addComponent(spinnerImgEng, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(buttonApply)
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
panelNorm.setBorder(javax.swing.BorderFactory.createTitledBorder("Normalization"));
buttonSetNorm.setText("Select");
buttonSetNorm.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
buttonSetNormActionPerformed(evt);
}
});
textNorm.setEditable(false);
textNorm.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyTyped(java.awt.event.KeyEvent evt) {
textNormKeyTyped(evt);
}
public void keyReleased(java.awt.event.KeyEvent evt) {
textNormKeyReleased(evt);
}
});
jLabel29.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
jLabel29.setText("File: ");
buttonShowNorm.setText("Show");
buttonShowNorm.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
buttonShowNormActionPerformed(evt);
}
});
javax.swing.GroupLayout panelNormLayout = new javax.swing.GroupLayout(panelNorm);
panelNorm.setLayout(panelNormLayout);
panelNormLayout.setHorizontalGroup(
panelNormLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(panelNormLayout.createSequentialGroup()
.addContainerGap()
.addComponent(buttonShowNorm)
.addGap(18, 18, 18)
.addComponent(jLabel29)
.addGap(0, 0, 0)
.addComponent(textNorm)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(buttonSetNorm)
.addContainerGap())
);
panelNormLayout.setVerticalGroup(
panelNormLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(panelNormLayout.createSequentialGroup()
.addContainerGap()
.addGroup(panelNormLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel29)
.addComponent(textNorm, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(buttonSetNorm)
.addComponent(buttonShowNorm))
.addContainerGap())
);
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
@@ -708,7 +877,8 @@ public class Eiger extends Panel {
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(panelDataFile, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(panelBeamline, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addComponent(panelBeamline, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(panelNorm, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addContainerGap())
);
jPanel1Layout.setVerticalGroup(
@@ -716,6 +886,8 @@ public class Eiger extends Panel {
.addGroup(jPanel1Layout.createSequentialGroup()
.addComponent(panelDataFile, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(panelNorm, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(panelBeamline, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
@@ -776,22 +948,36 @@ public class Eiger extends Panel {
}
});
buttonShowDetectorPanel.setText("Show Detector Panel");
buttonShowDetectorPanel.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
buttonShowDetectorPanelActionPerformed(evt);
}
});
javax.swing.GroupLayout panelRoiLayout = new javax.swing.GroupLayout(panelRoi);
panelRoi.setLayout(panelRoiLayout);
panelRoiLayout.setHorizontalGroup(
panelRoiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(panelRoiLayout.createSequentialGroup()
.addGap(17, 17, 17)
.addComponent(rendererRoi, javax.swing.GroupLayout.DEFAULT_SIZE, 443, Short.MAX_VALUE)
.addGap(18, 18, 18)
.addGroup(panelRoiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(jLabel26)
.addComponent(buttonRoiAdd, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(buttonRoiRemove, javax.swing.GroupLayout.DEFAULT_SIZE, 200, Short.MAX_VALUE)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE)
.addComponent(buttonTriggerDetector, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addComponent(rendererRoi, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(panelRoiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(panelRoiLayout.createSequentialGroup()
.addGroup(panelRoiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel26)
.addComponent(buttonRoiAdd, javax.swing.GroupLayout.PREFERRED_SIZE, 200, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(buttonRoiRemove, javax.swing.GroupLayout.PREFERRED_SIZE, 200, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 200, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(buttonTriggerDetector, javax.swing.GroupLayout.PREFERRED_SIZE, 200, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(1, 1, 1))
.addComponent(buttonShowDetectorPanel, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 201, javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap())
);
panelRoiLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {buttonRoiAdd, buttonRoiRemove, buttonShowDetectorPanel, buttonTriggerDetector, jScrollPane1});
panelRoiLayout.setVerticalGroup(
panelRoiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(panelRoiLayout.createSequentialGroup()
@@ -799,14 +985,16 @@ public class Eiger extends Panel {
.addGroup(panelRoiLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(rendererRoi, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(panelRoiLayout.createSequentialGroup()
.addComponent(buttonRoiAdd)
.addComponent(buttonRoiAdd, javax.swing.GroupLayout.PREFERRED_SIZE, 25, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(buttonRoiRemove)
.addComponent(buttonRoiRemove, javax.swing.GroupLayout.PREFERRED_SIZE, 25, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(jLabel26)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 152, Short.MAX_VALUE)
.addGap(18, 18, 18)
.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 270, Short.MAX_VALUE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(buttonShowDetectorPanel, javax.swing.GroupLayout.PREFERRED_SIZE, 25, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(buttonTriggerDetector)))
.addContainerGap())
);
@@ -1052,7 +1240,7 @@ public class Eiger extends Panel {
.addGroup(jPanel2Layout.createSequentialGroup()
.addGap(18, 18, 18)
.addComponent(panelImgControls, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 87, Short.MAX_VALUE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 236, Short.MAX_VALUE)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(buttonImgStart)
.addComponent(buttonImgAbort))
@@ -1198,9 +1386,9 @@ public class Eiger extends Panel {
.addGroup(panelSpectrumLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel25)
.addComponent(spinnerSpecScans, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED, 19, Short.MAX_VALUE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED, 93, Short.MAX_VALUE)
.addComponent(checkSpecSwitchPol)
.addGap(0, 11, Short.MAX_VALUE))
.addGap(0, 86, Short.MAX_VALUE))
.addComponent(jPanel4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addContainerGap())
);
@@ -1256,7 +1444,7 @@ public class Eiger extends Panel {
this.setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jTabbedPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 691, Short.MAX_VALUE)
.addComponent(jTabbedPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 691, Short.MAX_VALUE)
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
@@ -1276,46 +1464,10 @@ public class Eiger extends Panel {
}
}//GEN-LAST:event_buttonSetPathActionPerformed
private void buttonUndoPathActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonUndoPathActionPerformed
try {
textDataPath.setText(getContext().getConfig().dataPath);
updateControls();
} catch (Exception ex) {
showException(ex);
}
}//GEN-LAST:event_buttonUndoPathActionPerformed
private void buttonSetSeqActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonSetSeqActionPerformed
try {
getContext().setFileSequentialNumber(((Number) spinnerSeq.getValue()).intValue());
updateControls();
} catch (Exception ex) {
showException(ex);
}
}//GEN-LAST:event_buttonSetSeqActionPerformed
private void buttonUndoSeqActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonUndoSeqActionPerformed
try {
spinnerSeq.setValue(getContext().getFileSequentialNumber());
updateControls();
} catch (Exception ex) {
showException(ex);
}
}//GEN-LAST:event_buttonUndoSeqActionPerformed
private void textDataPathKeyTyped(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_textDataPathKeyTyped
}//GEN-LAST:event_textDataPathKeyTyped
private void spinnerSeqStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_spinnerSeqStateChanged
updateControls();
}//GEN-LAST:event_spinnerSeqStateChanged
private void buttonDefaultPathActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonDefaultPathActionPerformed
textDataPath.setText(DEFAULT_PATH);
updateControls();
}//GEN-LAST:event_buttonDefaultPathActionPerformed
private void textDataPathKeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_textDataPathKeyReleased
updateControls();
}//GEN-LAST:event_textDataPathKeyReleased
@@ -1399,6 +1551,84 @@ public class Eiger extends Panel {
}
}//GEN-LAST:event_buttonApplyActionPerformed
private void spinnerSeqStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_spinnerSeqStateChanged
updateControls();
}//GEN-LAST:event_spinnerSeqStateChanged
private void buttonUndoSeqActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonUndoSeqActionPerformed
try {
spinnerSeq.setValue(getContext().getFileSequentialNumber());
updateControls();
} catch (Exception ex) {
showException(ex);
}
}//GEN-LAST:event_buttonUndoSeqActionPerformed
private void buttonSetSeqActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonSetSeqActionPerformed
try {
getContext().setFileSequentialNumber(((Number) spinnerSeq.getValue()).intValue());
updateControls();
} catch (Exception ex) {
showException(ex);
}
}//GEN-LAST:event_buttonSetSeqActionPerformed
private void buttonUndoPathActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonUndoPathActionPerformed
try {
textDataPath.setText(getContext().getConfig().dataPath);
updateControls();
} catch (Exception ex) {
showException(ex);
}
}//GEN-LAST:event_buttonUndoPathActionPerformed
private void buttonDefaultPathActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonDefaultPathActionPerformed
textDataPath.setText(DEFAULT_PATH);
updateControls();
}//GEN-LAST:event_buttonDefaultPathActionPerformed
private void buttonSetNormActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonSetNormActionPerformed
try{
JFileChooser chooser = new JFileChooser(getContext().getSetup().expandPath(getContext().getConfig().dataPath));
FileNameExtensionFilter filter = new FileNameExtensionFilter("Image File", "tif", "tiff");
chooser.setFileFilter(filter);
chooser.setFileHidingEnabled(true);
int rVal = chooser.showOpenDialog(this);
if (rVal == JFileChooser.APPROVE_OPTION) {
textNorm.setText(chooser.getSelectedFile().getAbsoluteFile().toString());
this.setSetting("NORM_FILE", textNorm.getText());
}
} catch (Exception ex){
showException (ex);
}
}//GEN-LAST:event_buttonSetNormActionPerformed
private void textNormKeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_textNormKeyReleased
// TODO add your handling code here:
}//GEN-LAST:event_textNormKeyReleased
private void textNormKeyTyped(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_textNormKeyTyped
// TODO add your handling code here:
}//GEN-LAST:event_textNormKeyTyped
private void buttonShowDetectorPanelActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonShowDetectorPanelActionPerformed
try{
this.showDevicePanel("eiger");
} catch (Exception ex){
showException (ex);
}
}//GEN-LAST:event_buttonShowDetectorPanelActionPerformed
private void buttonShowNormActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonShowNormActionPerformed
try{
this.enableNorm( buttonShowNorm.isSelected());
buttonShowNorm.setText(buttonShowNorm.isSelected() ? "Hide" : "Show");
} catch (Exception ex){
showException (ex);
}
}//GEN-LAST:event_buttonShowNormActionPerformed
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JButton buttonAdd;
private javax.swing.JButton buttonApply;
@@ -1408,8 +1638,11 @@ public class Eiger extends Panel {
private javax.swing.JButton buttonRemove;
private javax.swing.JButton buttonRoiAdd;
private javax.swing.JButton buttonRoiRemove;
private javax.swing.JButton buttonSetNorm;
private javax.swing.JButton buttonSetPath;
private javax.swing.JButton buttonSetSeq;
private javax.swing.JButton buttonShowDetectorPanel;
private javax.swing.JToggleButton buttonShowNorm;
private javax.swing.JButton buttonSpecAbort;
private javax.swing.JButton buttonSpecStart;
private javax.swing.JButton buttonTriggerDetector;
@@ -1445,6 +1678,8 @@ public class Eiger extends Panel {
private javax.swing.JLabel jLabel24;
private javax.swing.JLabel jLabel25;
private javax.swing.JLabel jLabel26;
private javax.swing.JLabel jLabel27;
private javax.swing.JLabel jLabel29;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
@@ -1467,6 +1702,7 @@ public class Eiger extends Panel {
private javax.swing.JPanel panelBeamline;
private javax.swing.JPanel panelDataFile;
private javax.swing.JPanel panelImgControls;
private javax.swing.JPanel panelNorm;
private javax.swing.JPanel panelRoi;
private javax.swing.JPanel panelSpectrum;
private ch.psi.pshell.imaging.Renderer rendererRoi;
@@ -1476,6 +1712,7 @@ public class Eiger extends Panel {
private javax.swing.JSpinner spinnerHar2;
private javax.swing.JSpinner spinnerImgAvg1;
private javax.swing.JSpinner spinnerImgAvg2;
private javax.swing.JSpinner spinnerImgEng;
private javax.swing.JSpinner spinnerImgEng1;
private javax.swing.JSpinner spinnerImgEng2;
private javax.swing.JSpinner spinnerImgExp1;
@@ -1490,5 +1727,6 @@ public class Eiger extends Panel {
private javax.swing.JTable tableRegions;
private javax.swing.JTable tableRoi;
private javax.swing.JTextField textDataPath;
private javax.swing.JTextField textNorm;
// End of variables declaration//GEN-END:variables
}