|
@@ -2,6 +2,8 @@ package uraxis.toolbar;
|
|
|
|
|
|
import com.ur.urcap.api.contribution.toolbar.ToolbarContext;
|
|
import com.ur.urcap.api.contribution.toolbar.ToolbarContext;
|
|
import com.ur.urcap.api.contribution.toolbar.swing.SwingToolbarContribution;
|
|
import com.ur.urcap.api.contribution.toolbar.swing.SwingToolbarContribution;
|
|
|
|
+import com.ur.urcap.api.domain.io.DigitalIO;
|
|
|
|
+import com.ur.urcap.api.domain.io.Register;
|
|
import uraxis.Activator;
|
|
import uraxis.Activator;
|
|
|
|
|
|
import javax.swing.*;
|
|
import javax.swing.*;
|
|
@@ -17,17 +19,22 @@ class MyToolbarContribution implements SwingToolbarContribution {
|
|
private static final int HEADER_FONT_SIZE = 24;
|
|
private static final int HEADER_FONT_SIZE = 24;
|
|
|
|
|
|
private final ToolbarContext context;
|
|
private final ToolbarContext context;
|
|
|
|
+ private final IOHandler ioModel;
|
|
|
|
+ private Register positionRegister;
|
|
|
|
+ private int positionIndex=-1;
|
|
private JLabel demoToolStatus;
|
|
private JLabel demoToolStatus;
|
|
private Timer uiTimer;
|
|
private Timer uiTimer;
|
|
HashMap<String, JCheckBox> boxes=new HashMap<>();
|
|
HashMap<String, JCheckBox> boxes=new HashMap<>();
|
|
|
|
|
|
-
|
|
|
|
MyToolbarContribution(ToolbarContext context) {
|
|
MyToolbarContribution(ToolbarContext context) {
|
|
this.context = context;
|
|
this.context = context;
|
|
|
|
+ this.ioModel = new IOHandler(context.getAPIProvider().getApplicationAPI().getIOModel());
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public void openView() {
|
|
public void openView() {
|
|
|
|
+ this.positionRegister = this.ioModel.getRegisterIOCustom("position");
|
|
|
|
+ this.positionIndex=IOHandler.getIOIndex(this.positionRegister);
|
|
//UI updates from non-GUI threads must use EventQueue.invokeLater (or SwingUtilities.invokeLater)
|
|
//UI updates from non-GUI threads must use EventQueue.invokeLater (or SwingUtilities.invokeLater)
|
|
uiTimer = new Timer(true);
|
|
uiTimer = new Timer(true);
|
|
uiTimer.schedule(new TimerTask() {
|
|
uiTimer.schedule(new TimerTask() {
|
|
@@ -48,10 +55,9 @@ class MyToolbarContribution implements SwingToolbarContribution {
|
|
if(val instanceof Boolean) {
|
|
if(val instanceof Boolean) {
|
|
cb.setSelected((Boolean) val);
|
|
cb.setSelected((Boolean) val);
|
|
}
|
|
}
|
|
-
|
|
|
|
}
|
|
}
|
|
//updateText(String.format("Position: %d, read at %tF %tT.<br/>%s", fPos.get(), now, now, fStatus.get()));
|
|
//updateText(String.format("Position: %d, read at %tF %tT.<br/>%s", fPos.get(), now, now, fStatus.get()));
|
|
- updateText(String.format("Position: %d, read at %tF %tT.<br/>", fPos.get(), now, now));
|
|
|
|
|
|
+ updateText(String.format("Position: %d, read at %tF %tT.<br/>Reg: ", fPos.get(), now, now, positionRegister.getDefaultName()));
|
|
} catch (InterruptedException|ExecutionException e) {
|
|
} catch (InterruptedException|ExecutionException e) {
|
|
e.printStackTrace();
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
@@ -60,8 +66,6 @@ class MyToolbarContribution implements SwingToolbarContribution {
|
|
});
|
|
});
|
|
}
|
|
}
|
|
}, 0, 1000);
|
|
}, 0, 1000);
|
|
-
|
|
|
|
-
|
|
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -84,7 +88,8 @@ class MyToolbarContribution implements SwingToolbarContribution {
|
|
{
|
|
{
|
|
Box vbox = Box.createVerticalBox();
|
|
Box vbox = Box.createVerticalBox();
|
|
vbox.setAlignmentY(Component.TOP_ALIGNMENT);
|
|
vbox.setAlignmentY(Component.TOP_ALIGNMENT);
|
|
- vbox.add(newCheckbox("opm"));
|
|
|
|
|
|
+ vbox.add(newCheckbox("opm1"));
|
|
|
|
+ vbox.add(newCheckbox("opm2"));
|
|
vbox.add(newCheckbox("fct"));
|
|
vbox.add(newCheckbox("fct"));
|
|
vbox.add(newCheckbox("rdyen"));
|
|
vbox.add(newCheckbox("rdyen"));
|
|
vbox.add(newCheckbox("fault"));
|
|
vbox.add(newCheckbox("fault"));
|