Startup
This commit is contained in:
@@ -3,8 +3,6 @@ import ch.psi.pshell.bs.StreamValue;
|
||||
import ch.psi.pshell.core.CommandSource;
|
||||
import ch.psi.pshell.device.Device;
|
||||
import ch.psi.pshell.device.DeviceAdapter;
|
||||
import ch.psi.pshell.device.DeviceListener;
|
||||
import ch.psi.pshell.imaging.ColormapSource;
|
||||
import ch.psi.pshell.imaging.Overlay;
|
||||
import ch.psi.pshell.imaging.Overlays;
|
||||
import ch.psi.pshell.scan.MonitorScan;
|
||||
@@ -22,10 +20,10 @@ import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.nio.file.Paths;
|
||||
import java.util.HashMap;
|
||||
import java.util.concurrent.Future;
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
import javax.swing.ImageIcon;
|
||||
import javax.swing.SwingUtilities;
|
||||
|
||||
/**
|
||||
*
|
||||
@@ -49,7 +47,8 @@ public class AthosCameras extends Panel {
|
||||
|
||||
public AthosCameras() {
|
||||
initComponents();
|
||||
|
||||
labelRecording.setVisible(false);
|
||||
buttonOpen.setEnabled(false);
|
||||
}
|
||||
|
||||
ImageIcon getIcon(String name){
|
||||
@@ -107,9 +106,11 @@ public class AthosCameras extends Panel {
|
||||
this.cameraName = cameraName;
|
||||
|
||||
|
||||
textCamera.setText((cameraName == null) ? "" : cameraName);
|
||||
if (cameraName == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
System.out.println("Setting camera: " + cameraName );
|
||||
try{
|
||||
@@ -154,7 +155,8 @@ public class AthosCameras extends Panel {
|
||||
System.out.println("Creating pipeline: " + pipelineName);
|
||||
HashMap<String, Object> config = new HashMap<>();
|
||||
config.put("camera_name", cameraName);
|
||||
config.put("include", new String[]{"x_center_of_mass", "y_center_of_mass"});
|
||||
config.put("include", new String[]{"x_center_of_mass", "y_center_of_mass",
|
||||
"x_fit_mean", "y_fit_mean"});
|
||||
//server.createFromConfig(config, pipelineName);
|
||||
dataPipeline.savePipelineConfig(pipelineName, config);
|
||||
}
|
||||
@@ -171,15 +173,12 @@ public class AthosCameras extends Panel {
|
||||
showException(ex);
|
||||
renderer.clearOverlays();
|
||||
if (renderer.getDevice() == null) {
|
||||
//renderer.setZoom(1.0);
|
||||
//renderer.setMode(RendererMode.Zoom);
|
||||
errorOverlay = new Overlays.Text(renderer.getPenErrorText(), ex.toString(), new Font("Verdana", Font.PLAIN, 12), new Point(20, 20));
|
||||
errorOverlay.setFixed(true);
|
||||
errorOverlay.setAnchor(Overlay.ANCHOR_VIEWPORT_TOP_LEFT);
|
||||
renderer.addOverlay(errorOverlay);
|
||||
}
|
||||
} finally {
|
||||
//checkReticle();
|
||||
onTimer();
|
||||
}
|
||||
}
|
||||
@@ -189,7 +188,6 @@ public class AthosCameras extends Panel {
|
||||
}
|
||||
|
||||
void updateData(StreamValue value){
|
||||
//System.exit(0);
|
||||
try{
|
||||
edit_x_center_of_mass.setText(getDoubleStr(value, "x_center_of_mass"));
|
||||
} catch (Exception ex){
|
||||
@@ -200,6 +198,16 @@ public class AthosCameras extends Panel {
|
||||
} catch (Exception ex){
|
||||
edit_y_center_of_mass.setText("");
|
||||
}
|
||||
try{
|
||||
edit_x_fit_mean.setText(getDoubleStr(value, "x_fit_mean"));
|
||||
} catch (Exception ex){
|
||||
edit_x_fit_mean.setText("");
|
||||
}
|
||||
try{
|
||||
edit_y_fit_mean.setText(getDoubleStr(value, "y_fit_mean"));
|
||||
} catch (Exception ex){
|
||||
edit_y_fit_mean.setText("");
|
||||
}
|
||||
}
|
||||
|
||||
MonitorScan scan;
|
||||
@@ -210,23 +218,26 @@ public class AthosCameras extends Panel {
|
||||
getContext().setExecutionPar("name", cameraName);
|
||||
getContext().setExecutionPar("open", true);
|
||||
scan= new MonitorScan(dataPipeline.getStream(), dataPipeline.getStream().getReadables().toArray(new ch.psi.pshell.device.Readable[0]), -1, -1);
|
||||
Threading.getFuture(() ->scan.start());
|
||||
|
||||
DataPanel panel = DataPanel.create(new File(getContext().getExecutionPars().getPath()));
|
||||
SwingUtils.showDialog(getTopLevel(), getContext().getExecutionPars().getPath(), new Dimension(800,600), panel);
|
||||
|
||||
Threading.getFuture(() ->scan.start());
|
||||
textFile.setText(getContext().getExecutionPars().getPath());
|
||||
SwingUtilities.invokeLater(()->{
|
||||
scrollFile.getHorizontalScrollBar().setValue( scrollFile.getHorizontalScrollBar().getMaximum() );
|
||||
});
|
||||
buttonOpen.setEnabled(true);
|
||||
}
|
||||
|
||||
void stopRecording() throws Exception{
|
||||
System.out.println("stopRecording");
|
||||
scan.abort();
|
||||
|
||||
//showMessage("Data recording", "Data saved to: " + getContext().getExecutionPars().getPath());
|
||||
|
||||
|
||||
getContext().endExecution();
|
||||
}
|
||||
|
||||
void openFile() throws Exception{
|
||||
String filename = textFile.getText();
|
||||
DataPanel panel = DataPanel.create(new File(filename));
|
||||
SwingUtils.showDialog(getTopLevel(), filename, new Dimension(600,400), panel);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@@ -234,22 +245,27 @@ public class AthosCameras extends Panel {
|
||||
private void initComponents() {
|
||||
|
||||
renderer = new ch.psi.pshell.imaging.Renderer();
|
||||
jPanel1 = new javax.swing.JPanel();
|
||||
buttonRec = new javax.swing.JToggleButton();
|
||||
buttonStop = new javax.swing.JButton();
|
||||
jPanel3 = new javax.swing.JPanel();
|
||||
labelRecording = new javax.swing.JLabel();
|
||||
buttonOpen = new javax.swing.JButton();
|
||||
scrollFile = new javax.swing.JScrollPane();
|
||||
textFile = new javax.swing.JTextField();
|
||||
jPanel2 = new javax.swing.JPanel();
|
||||
jLabel1 = new javax.swing.JLabel();
|
||||
jLabel2 = new javax.swing.JLabel();
|
||||
edit_y_center_of_mass = new javax.swing.JTextField();
|
||||
edit_x_center_of_mass = new javax.swing.JTextField();
|
||||
buttonRec = new javax.swing.JToggleButton();
|
||||
buttonStop = new javax.swing.JButton();
|
||||
jLabel3 = new javax.swing.JLabel();
|
||||
edit_x_fit_mean = new javax.swing.JTextField();
|
||||
edit_y_fit_mean = new javax.swing.JTextField();
|
||||
jLabel4 = new javax.swing.JLabel();
|
||||
jPanel4 = new javax.swing.JPanel();
|
||||
textCamera = new javax.swing.JTextField();
|
||||
|
||||
jLabel1.setText("x_center_of_mass:");
|
||||
|
||||
jLabel2.setText("y_center_of_mass:");
|
||||
|
||||
edit_y_center_of_mass.setEditable(false);
|
||||
edit_y_center_of_mass.setHorizontalAlignment(javax.swing.JTextField.TRAILING);
|
||||
|
||||
edit_x_center_of_mass.setEditable(false);
|
||||
edit_x_center_of_mass.setHorizontalAlignment(javax.swing.JTextField.TRAILING);
|
||||
jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("Data Recording"));
|
||||
|
||||
buttonRec.setIcon(getIcon("Rec"));
|
||||
buttonRec.setToolTipText("Start Data Recording");
|
||||
@@ -267,59 +283,195 @@ public class AthosCameras extends Panel {
|
||||
}
|
||||
});
|
||||
|
||||
labelRecording.setFont(new java.awt.Font("Lucida Grande", 0, 12)); // NOI18N
|
||||
labelRecording.setForeground(new java.awt.Color(255, 0, 0));
|
||||
labelRecording.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
|
||||
labelRecording.setText("RECORDING");
|
||||
|
||||
javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
|
||||
jPanel3.setLayout(jPanel3Layout);
|
||||
jPanel3Layout.setHorizontalGroup(
|
||||
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(jPanel3Layout.createSequentialGroup()
|
||||
.addGap(0, 0, 0)
|
||||
.addComponent(labelRecording, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
|
||||
.addGap(0, 0, 0))
|
||||
);
|
||||
jPanel3Layout.setVerticalGroup(
|
||||
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(jPanel3Layout.createSequentialGroup()
|
||||
.addContainerGap()
|
||||
.addComponent(labelRecording, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
|
||||
.addContainerGap())
|
||||
);
|
||||
|
||||
buttonOpen.setText("Open Data File");
|
||||
buttonOpen.addActionListener(new java.awt.event.ActionListener() {
|
||||
public void actionPerformed(java.awt.event.ActionEvent evt) {
|
||||
buttonOpenActionPerformed(evt);
|
||||
}
|
||||
});
|
||||
|
||||
scrollFile.setHorizontalScrollBarPolicy(javax.swing.ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS);
|
||||
scrollFile.setVerticalScrollBarPolicy(javax.swing.ScrollPaneConstants.VERTICAL_SCROLLBAR_NEVER);
|
||||
|
||||
textFile.setEditable(false);
|
||||
scrollFile.setViewportView(textFile);
|
||||
|
||||
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)
|
||||
.addComponent(scrollFile, javax.swing.GroupLayout.PREFERRED_SIZE, 281, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addGroup(jPanel1Layout.createSequentialGroup()
|
||||
.addComponent(buttonRec)
|
||||
.addGap(2, 2, 2)
|
||||
.addComponent(buttonStop)
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||
.addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
|
||||
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
|
||||
.addGap(0, 0, Short.MAX_VALUE)
|
||||
.addComponent(buttonOpen)))
|
||||
.addContainerGap())
|
||||
);
|
||||
jPanel1Layout.setVerticalGroup(
|
||||
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(jPanel1Layout.createSequentialGroup()
|
||||
.addContainerGap()
|
||||
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
|
||||
.addComponent(buttonRec, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
|
||||
.addComponent(buttonStop, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||
.addComponent(scrollFile, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||
.addComponent(buttonOpen)
|
||||
.addContainerGap())
|
||||
);
|
||||
|
||||
jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder("Data Fields"));
|
||||
|
||||
jLabel1.setText("x_center_of_mass:");
|
||||
|
||||
jLabel2.setText("y_center_of_mass:");
|
||||
|
||||
edit_y_center_of_mass.setEditable(false);
|
||||
edit_y_center_of_mass.setHorizontalAlignment(javax.swing.JTextField.TRAILING);
|
||||
|
||||
edit_x_center_of_mass.setEditable(false);
|
||||
edit_x_center_of_mass.setHorizontalAlignment(javax.swing.JTextField.TRAILING);
|
||||
|
||||
jLabel3.setText("x_fit_mean:");
|
||||
|
||||
edit_x_fit_mean.setEditable(false);
|
||||
edit_x_fit_mean.setHorizontalAlignment(javax.swing.JTextField.TRAILING);
|
||||
|
||||
edit_y_fit_mean.setEditable(false);
|
||||
edit_y_fit_mean.setHorizontalAlignment(javax.swing.JTextField.TRAILING);
|
||||
|
||||
jLabel4.setText("y_fit_mean");
|
||||
|
||||
javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
|
||||
jPanel2.setLayout(jPanel2Layout);
|
||||
jPanel2Layout.setHorizontalGroup(
|
||||
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
|
||||
.addContainerGap(19, Short.MAX_VALUE)
|
||||
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
|
||||
.addComponent(jLabel1)
|
||||
.addComponent(jLabel2)
|
||||
.addComponent(jLabel3)
|
||||
.addComponent(jLabel4))
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
|
||||
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addComponent(edit_y_center_of_mass, javax.swing.GroupLayout.PREFERRED_SIZE, 124, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addComponent(edit_x_center_of_mass, javax.swing.GroupLayout.PREFERRED_SIZE, 124, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addComponent(edit_x_fit_mean, javax.swing.GroupLayout.PREFERRED_SIZE, 124, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addComponent(edit_y_fit_mean, javax.swing.GroupLayout.PREFERRED_SIZE, 124, javax.swing.GroupLayout.PREFERRED_SIZE))
|
||||
.addContainerGap(20, Short.MAX_VALUE))
|
||||
);
|
||||
jPanel2Layout.setVerticalGroup(
|
||||
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(jPanel2Layout.createSequentialGroup()
|
||||
.addGap(30, 30, 30)
|
||||
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addComponent(jLabel1)
|
||||
.addComponent(edit_x_center_of_mass, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||
.addComponent(jLabel2)
|
||||
.addComponent(edit_y_center_of_mass, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||
.addComponent(jLabel3)
|
||||
.addComponent(edit_x_fit_mean, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||
.addComponent(jLabel4)
|
||||
.addComponent(edit_y_fit_mean, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
||||
.addContainerGap(33, Short.MAX_VALUE))
|
||||
);
|
||||
|
||||
jPanel4.setBorder(javax.swing.BorderFactory.createTitledBorder("Camera"));
|
||||
|
||||
textCamera.setHorizontalAlignment(javax.swing.JTextField.CENTER);
|
||||
|
||||
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()
|
||||
.addComponent(textCamera)
|
||||
.addContainerGap())
|
||||
);
|
||||
jPanel4Layout.setVerticalGroup(
|
||||
jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(jPanel4Layout.createSequentialGroup()
|
||||
.addContainerGap()
|
||||
.addComponent(textCamera, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addContainerGap())
|
||||
);
|
||||
|
||||
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
|
||||
this.setLayout(layout);
|
||||
layout.setHorizontalGroup(
|
||||
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(layout.createSequentialGroup()
|
||||
.addContainerGap(582, Short.MAX_VALUE)
|
||||
.addContainerGap()
|
||||
.addComponent(renderer, javax.swing.GroupLayout.DEFAULT_SIZE, 505, Short.MAX_VALUE)
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(layout.createSequentialGroup()
|
||||
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
|
||||
.addComponent(jLabel1)
|
||||
.addComponent(jLabel2))
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
|
||||
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addComponent(edit_y_center_of_mass, javax.swing.GroupLayout.PREFERRED_SIZE, 124, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addComponent(edit_x_center_of_mass, javax.swing.GroupLayout.PREFERRED_SIZE, 124, javax.swing.GroupLayout.PREFERRED_SIZE)))
|
||||
.addGroup(layout.createSequentialGroup()
|
||||
.addComponent(buttonRec)
|
||||
.addGap(2, 2, 2)
|
||||
.addComponent(buttonStop)))
|
||||
.addGap(72, 72, 72))
|
||||
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(layout.createSequentialGroup()
|
||||
.addContainerGap()
|
||||
.addComponent(renderer, javax.swing.GroupLayout.PREFERRED_SIZE, 462, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addContainerGap(440, Short.MAX_VALUE)))
|
||||
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
|
||||
.addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
|
||||
.addComponent(jPanel4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
|
||||
.addContainerGap())
|
||||
);
|
||||
layout.setVerticalGroup(
|
||||
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(layout.createSequentialGroup()
|
||||
.addGap(132, 132, 132)
|
||||
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addComponent(jLabel1)
|
||||
.addComponent(edit_x_center_of_mass, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
|
||||
.addComponent(jLabel2)
|
||||
.addComponent(edit_y_center_of_mass, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
|
||||
.addGap(123, 123, 123)
|
||||
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
|
||||
.addContainerGap()
|
||||
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
|
||||
.addComponent(buttonRec)
|
||||
.addComponent(buttonStop))
|
||||
.addContainerGap(190, Short.MAX_VALUE))
|
||||
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
||||
.addGroup(layout.createSequentialGroup()
|
||||
.addContainerGap()
|
||||
.addComponent(renderer, javax.swing.GroupLayout.DEFAULT_SIZE, 520, Short.MAX_VALUE)
|
||||
.addContainerGap()))
|
||||
.addComponent(renderer, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
|
||||
.addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
|
||||
.addComponent(jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||
.addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
|
||||
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
|
||||
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
|
||||
.addContainerGap())
|
||||
);
|
||||
}// </editor-fold>//GEN-END:initComponents
|
||||
|
||||
private void buttonRecActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonRecActionPerformed
|
||||
try{
|
||||
buttonStop.setEnabled(buttonRec.isSelected());
|
||||
labelRecording.setVisible(buttonRec.isSelected());
|
||||
if (buttonRec.isSelected()){
|
||||
startRecording();
|
||||
} else {
|
||||
@@ -335,13 +487,34 @@ public class AthosCameras extends Panel {
|
||||
buttonRecActionPerformed(null);
|
||||
}//GEN-LAST:event_buttonStopActionPerformed
|
||||
|
||||
private void buttonOpenActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonOpenActionPerformed
|
||||
try{
|
||||
openFile();
|
||||
} catch (Exception ex){
|
||||
this.showException(ex);
|
||||
}
|
||||
}//GEN-LAST:event_buttonOpenActionPerformed
|
||||
|
||||
// Variables declaration - do not modify//GEN-BEGIN:variables
|
||||
private javax.swing.JButton buttonOpen;
|
||||
private javax.swing.JToggleButton buttonRec;
|
||||
private javax.swing.JButton buttonStop;
|
||||
private javax.swing.JTextField edit_x_center_of_mass;
|
||||
private javax.swing.JTextField edit_x_fit_mean;
|
||||
private javax.swing.JTextField edit_y_center_of_mass;
|
||||
private javax.swing.JTextField edit_y_fit_mean;
|
||||
private javax.swing.JLabel jLabel1;
|
||||
private javax.swing.JLabel jLabel2;
|
||||
private javax.swing.JLabel jLabel3;
|
||||
private javax.swing.JLabel jLabel4;
|
||||
private javax.swing.JPanel jPanel1;
|
||||
private javax.swing.JPanel jPanel2;
|
||||
private javax.swing.JPanel jPanel3;
|
||||
private javax.swing.JPanel jPanel4;
|
||||
private javax.swing.JLabel labelRecording;
|
||||
private ch.psi.pshell.imaging.Renderer renderer;
|
||||
private javax.swing.JScrollPane scrollFile;
|
||||
private javax.swing.JTextField textCamera;
|
||||
private javax.swing.JTextField textFile;
|
||||
// End of variables declaration//GEN-END:variables
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user