This commit is contained in:
gac-S_Changer
2018-08-22 08:50:52 +02:00
parent 401d2b10ff
commit b42b1cf988
7 changed files with 133 additions and 27 deletions

View File

@@ -30,6 +30,8 @@ import javax.swing.JComponent;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.SwingUtilities;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import javax.swing.table.DefaultTableModel;
/**
@@ -56,7 +58,26 @@ public class MainPanel extends Panel {
for (int puck=1; puck<=5; puck++){
tablePucks.getModel().setValueAt(segment+puck, row++, 0);
}
}
}
tablePucks.getSelectionModel().addListSelectionListener(new ListSelectionListener() {
@Override
public void valueChanged(ListSelectionEvent e) {
try{
String add = String.valueOf(tablePucks.getModel().getValueAt(tablePucks.getSelectedRow(), 0));
String cur = Controller.getInstance().getCurrentSelection();
if (cur!=null){
cur = cur.substring(0,2);
}
if (!add.equals(cur)){
Puck puck = Controller.getInstance().getPuck(add);
Controller.getInstance().selectPuck(puck);
}
} catch (Exception ex){
showException(ex);
}
}
});
}
@Override
@@ -73,8 +94,10 @@ public class MainPanel extends Panel {
public void onInitialize(int runCount) {
stopTimer();
Controller.getInstance().onInitialize(runCount);
//basePlatePanel.setDevice((Device) getDevice("BasePlate"));
//basePlatePanel.getDevice().setSelectable(true);
if (basePlatePanel.getDevice() != (Device) getDevice("BasePlate")){
basePlatePanel.setDevice((Device) getDevice("BasePlate"));
basePlatePanel.getDevice().setSelectable(true);
}
try {
devicesPanel.initialize();
((Device) getDevice("dewar_level")).addListener(new DeviceAdapter() {
@@ -167,6 +190,7 @@ public class MainPanel extends Panel {
void refresh(){
repaint();
for (Puck p : Controller.getInstance().basePlate.getPucks()) {
//int index = (p.getSegment() - new Character('A')) * 5 + p.getNumber();
tablePucks.getModel().setValueAt(p.getStatus(), p.getIndex(), 1);
tablePucks.getModel().setValueAt(p.getId(), p.getIndex(), 2);
}
@@ -430,6 +454,23 @@ public class MainPanel extends Panel {
HEADER
));
}
void onSelectionChanged(String segment, Integer puck, Integer sample){
if (segment != null){
String add = segment + String.valueOf(puck);
for (int i=0; i<tablePucks.getModel().getRowCount(); i++){
if (tablePucks.getModel().getValueAt(i, 0).equals(add)){
if (tablePucks.getSelectedRow()!=i){
tablePucks.setRowSelectionInterval(i, i);
SwingUtils.scrollToVisible(tablePucks, i, 0);
}
break;
}
}
}
}
/**
* 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
@@ -975,15 +1016,14 @@ public class MainPanel extends Panel {
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addGroup(panelSystemStatusLayout.createSequentialGroup()
.addComponent(filler1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(panelSystemStatusLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(labeManualMode, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(panelSystemStatusLayout.createSequentialGroup()
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(labeManualMode, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addContainerGap())
.addGroup(panelSystemStatusLayout.createSequentialGroup()
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGap(0, 0, Short.MAX_VALUE)
.addComponent(buttonRelease)
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))
.addGap(0, 0, Short.MAX_VALUE)))
.addContainerGap())
);
panelSystemStatusLayout.setVerticalGroup(
panelSystemStatusLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
@@ -1193,7 +1233,6 @@ public class MainPanel extends Panel {
panelExpertLayout.setHorizontalGroup(
panelExpertLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(panelExpertLayout.createSequentialGroup()
.addGap(0, 0, 0)
.addGroup(panelExpertLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(buttonExpertCommands, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(buttonRecovery, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
@@ -1243,9 +1282,7 @@ public class MainPanel extends Panel {
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(panelDevicesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(panelExpert, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(panelDevicesLayout.createSequentialGroup()
.addComponent(devicesPanel, javax.swing.GroupLayout.DEFAULT_SIZE, 229, Short.MAX_VALUE)
.addGap(0, 0, Short.MAX_VALUE)))
.addComponent(devicesPanel, javax.swing.GroupLayout.DEFAULT_SIZE, 229, Short.MAX_VALUE))
.addContainerGap())
);
@@ -1557,7 +1594,7 @@ public class MainPanel extends Panel {
// Variables declaration - do not modify//GEN-BEGIN:variables
private ch.psi.mxsc.BasePlatePanel basePlatePanel;
ch.psi.mxsc.BasePlatePanel basePlatePanel;
private javax.swing.JToggleButton btViewDewar;
private javax.swing.JToggleButton btViewRT;
private javax.swing.JButton buttonCalibrateCover;