Samples Editor

This commit is contained in:
gac-S_Changer
2023-05-25 14:41:32 +02:00
parent 45e130b164
commit 47ab8f1f0e
2 changed files with 60 additions and 31 deletions

View File

@@ -93,7 +93,7 @@
<Component id="panelDetection" linkSize="23" min="-2" max="-2" attributes="0"/>
<Component id="panelLegend" min="-2" max="-2" attributes="0"/>
</Group>
<EmptySpace pref="276" max="32767" attributes="0"/>
<EmptySpace pref="234" max="32767" attributes="0"/>
<Group type="103" groupAlignment="0" attributes="0">
<Component id="panelHexiposi" alignment="1" min="-2" max="-2" attributes="0"/>
<Component id="panelViewType" linkSize="23" alignment="1" min="-2" max="-2" attributes="0"/>
@@ -1143,20 +1143,20 @@
<EmptySpace min="0" pref="0" max="-2" attributes="0"/>
<Component id="jPanel4" min="-2" max="-2" attributes="0"/>
<EmptySpace max="-2" attributes="0"/>
<Component id="jPanel1" max="32767" attributes="0"/>
<Component id="panelSamples" max="32767" attributes="0"/>
<EmptySpace min="0" pref="0" max="-2" attributes="0"/>
</Group>
</Group>
</DimensionLayout>
<DimensionLayout dim="1">
<Group type="103" groupAlignment="0" attributes="0">
<Component id="jPanel1" max="32767" attributes="0"/>
<Component id="panelSamples" max="32767" attributes="0"/>
<Component id="jPanel4" max="32767" attributes="0"/>
</Group>
</DimensionLayout>
</Layout>
<SubComponents>
<Container class="javax.swing.JPanel" name="jPanel1">
<Container class="javax.swing.JPanel" name="panelSamples">
<Properties>
<Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor">
<Border info="org.netbeans.modules.form.compat2.border.TitledBorderInfo">

View File

@@ -40,6 +40,7 @@ import java.util.logging.Level;
import javax.swing.GroupLayout;
import javax.swing.ImageIcon;
import javax.swing.JComponent;
import javax.swing.JDialog;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
@@ -169,6 +170,18 @@ public class MainPanel extends Panel {
});
tableSamples.getTableHeader().addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
try {
if ((e.getClickCount() == 2) && (!e.isPopupTrigger())) {
openSamplesInfo();
}
} catch (Exception ex) {
showException(ex);
}
}
});
tableSamples.addMouseListener(new MouseAdapter() {
/*
@Override
@@ -263,7 +276,11 @@ public class MainPanel extends Panel {
Image img = new ImageIcon(this.getClass().getResource("/apple_transparent_white_100x50.png")).getImage();
SwingUtils.getWindow(this).setIconImage(img);
}
basePlatePanel.setSelectionMode(SelectionMode.Pucks);
if (isRt()){
basePlatePanel.setSelectionMode(SelectionMode.Samples);
} else {
basePlatePanel.setSelectionMode(SelectionMode.Pucks);
}
basePlatePanel.setDevice(Controller.getInstance().basePlate);
try{
@@ -833,22 +850,31 @@ public class MainPanel extends Panel {
expertWindows.clear();
}
}
JDialog samplesDialog;
JsonTableEditor openSamplesInfo(){
try{
String file = getContext().getSetup().expandPath("{context}/samples_info.json");
for (Editor ed : getView().getEditors()) {
if (ed instanceof JsonTableEditor) {
if (file.equals(ed.getFileName())){
if (ed.changedOnDisk()){
getView().closeFile(file);
} else {
getView().selectPanel(ed);
return (JsonTableEditor) ed;
}
if (getView()!=null){
for (Editor ed : getView().getEditors()) {
if (ed instanceof JsonTableEditor) {
if (file.equals(ed.getFileName())){
if (ed.changedOnDisk()){
getView().closeFile(file);
} else {
getView().selectPanel(ed);
return (JsonTableEditor) ed;
}
}
}
}
}
} else {
if ((samplesDialog!=null) && (samplesDialog.isDisplayable())){
SwingUtils.centerComponent(this, samplesDialog);
samplesDialog.requestFocus();
return (JsonTableEditor) SwingUtils.getComponentsByType(samplesDialog, JsonTableEditor.class)[0];
}
}
String[] columns = new String[]{ "userName", "dewarName",
"puckName", "puckType", "puckBarcode", "puckAddress",
"sampleName", "samplePosition", "sampleBarcode", "sampleStatus", "sampleMountCount"
@@ -878,8 +904,11 @@ public class MainPanel extends Panel {
});
editor.setDefaultValues(defaults);
editor.load(file);
getView().openEditor(editor);
if (getView()!=null){
getView().openEditor(editor);
} else {
samplesDialog = showDialog("Samples Info", new Dimension (1000,800), editor);
}
return editor;
} catch (Exception ex) {
showException(ex);
@@ -988,7 +1017,7 @@ public class MainPanel extends Panel {
buttonRecovery = new javax.swing.JButton();
buttonConfig = new javax.swing.JButton();
panelBottom = new javax.swing.JPanel();
jPanel1 = new javax.swing.JPanel();
panelSamples = new javax.swing.JPanel();
panelTableSamples = new javax.swing.JScrollPane();
tableSamples = new javax.swing.JTable();
jPanel4 = new javax.swing.JPanel();
@@ -1199,7 +1228,7 @@ public class MainPanel extends Panel {
.addGroup(basePlatePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(panelDetection, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(panelLegend, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 276, Short.MAX_VALUE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 234, Short.MAX_VALUE)
.addGroup(basePlatePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(panelHexiposi, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(panelViewType, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
@@ -1699,7 +1728,7 @@ public class MainPanel extends Panel {
panelBottom.setPreferredSize(new java.awt.Dimension(810, 150));
panelBottom.setRequestFocusEnabled(false);
jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder("Samples"));
panelSamples.setBorder(javax.swing.BorderFactory.createTitledBorder("Samples"));
tableSamples.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
@@ -1712,18 +1741,18 @@ public class MainPanel extends Panel {
tableSamples.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION);
panelTableSamples.setViewportView(tableSamples);
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
javax.swing.GroupLayout panelSamplesLayout = new javax.swing.GroupLayout(panelSamples);
panelSamples.setLayout(panelSamplesLayout);
panelSamplesLayout.setHorizontalGroup(
panelSamplesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(panelSamplesLayout.createSequentialGroup()
.addGap(0, 0, 0)
.addComponent(panelTableSamples)
.addGap(0, 0, 0))
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
panelSamplesLayout.setVerticalGroup(
panelSamplesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(panelSamplesLayout.createSequentialGroup()
.addGap(0, 0, 0)
.addComponent(panelTableSamples, javax.swing.GroupLayout.DEFAULT_SIZE, 126, Short.MAX_VALUE)
.addGap(0, 0, 0))
@@ -1811,12 +1840,12 @@ public class MainPanel extends Panel {
.addGap(0, 0, 0)
.addComponent(jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(panelSamples, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGap(0, 0, 0))
);
panelBottomLayout.setVerticalGroup(
panelBottomLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(panelSamples, 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)
);
@@ -2033,7 +2062,6 @@ public class MainPanel extends Panel {
private javax.swing.JLabel jLabel8;
private javax.swing.JLabel jLabel9;
private javax.swing.JLabel jLabell21;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel3;
private javax.swing.JPanel jPanel4;
private javax.swing.JLabel labelManualMode;
@@ -2066,6 +2094,7 @@ public class MainPanel extends Panel {
private javax.swing.JPanel panelLN2Level;
private javax.swing.JPanel panelLegend;
private javax.swing.JPanel panelRight;
private javax.swing.JPanel panelSamples;
private javax.swing.JPanel panelStatus;
private javax.swing.JPanel panelSystemStatus;
private javax.swing.JScrollPane panelTablePucks;