diff --git a/src/main/java/ch/psi/mxsc/Controller.java b/src/main/java/ch/psi/mxsc/Controller.java
index 493ce58..a1425a8 100644
--- a/src/main/java/ch/psi/mxsc/Controller.java
+++ b/src/main/java/ch/psi/mxsc/Controller.java
@@ -270,6 +270,14 @@ public class Controller {
return null;
}
}
+
+ public Boolean isPuckLoading() {
+ try {
+ return getMainFrame().eval("is_puck_loading()", true).equals(true);
+ } catch (Exception ex) {
+ return null;
+ }
+ }
public String getWorkingMode() {
try {
diff --git a/src/main/java/ch/psi/mxsc/MainPanel.form b/src/main/java/ch/psi/mxsc/MainPanel.form
index 8566a76..a5650fd 100644
--- a/src/main/java/ch/psi/mxsc/MainPanel.form
+++ b/src/main/java/ch/psi/mxsc/MainPanel.form
@@ -31,7 +31,7 @@
-
+
@@ -334,21 +334,21 @@
-
+
-
+
-
+
-
+
@@ -384,12 +384,12 @@
-
+
-
+
@@ -882,7 +882,7 @@
-
+
@@ -990,9 +990,9 @@
-
+
-
+
@@ -1004,7 +1004,7 @@
-
+
diff --git a/src/main/java/ch/psi/mxsc/MainPanel.java b/src/main/java/ch/psi/mxsc/MainPanel.java
index 3da9b95..8e87cb0 100644
--- a/src/main/java/ch/psi/mxsc/MainPanel.java
+++ b/src/main/java/ch/psi/mxsc/MainPanel.java
@@ -12,6 +12,7 @@ import ch.psi.pshell.device.DeviceAdapter;
import ch.psi.pshell.imaging.Renderer;
import ch.psi.pshell.imaging.RendererMode;
import ch.psi.pshell.imaging.Source;
+import ch.psi.pshell.scripting.ViewPreference;
import ch.psi.pshell.ui.App;
import ch.psi.pshell.ui.Panel;
import ch.psi.utils.State;
@@ -46,6 +47,9 @@ public class MainPanel extends Panel {
*/
Boolean manualMode;
Boolean roomTemperature;
+ Boolean puckLoading;
+
+ public final String PUCK_LOADING_STATUS = "Puck loading";
public MainPanel() {
initComponents();
@@ -168,7 +172,7 @@ public class MainPanel extends Panel {
this.getLogger().log(Level.SEVERE, null, ex);
}
Controller.getInstance().updatePuckTypes();
- startTimer(10000, 1000);
+ startTimer(3000, 1000);
updateCameraView();
refreshSamplesTable();
@@ -197,6 +201,21 @@ public class MainPanel extends Panel {
ledRoomTemperature.setColor(Color.BLACK);
labelRoomTemperature.setText("Room Temperature");
}
+
+ try {
+ puckLoading = Controller.getInstance().isPuckLoading();
+ } catch (Exception ex) {
+ puckLoading = null;
+ }
+ if (getState()==State.Ready){
+ if (Boolean.TRUE.equals(puckLoading)){
+ getView().getStatusBar().setStatusMessage(PUCK_LOADING_STATUS);
+ } else {
+ if (PUCK_LOADING_STATUS.equals(getView().getStatusBar().getStatusLabel().getText())){
+ getView().getStatusBar().setApplicationState(getState());
+ }
+ }
+ }
}