161 lines
4.3 KiB
Java
161 lines
4.3 KiB
Java
package org.hwo.ui.servicelink.register;
|
|
|
|
import javax.swing.JPanel;
|
|
|
|
import java.awt.GridBagLayout;
|
|
|
|
import javax.swing.JLabel;
|
|
|
|
import java.awt.GridBagConstraints;
|
|
|
|
import javax.swing.JSpinner;
|
|
|
|
import java.awt.Insets;
|
|
import java.awt.event.ActionEvent;
|
|
import java.awt.event.ActionListener;
|
|
import java.util.LinkedList;
|
|
import java.util.List;
|
|
|
|
import javax.swing.SpinnerNumberModel;
|
|
import javax.swing.JCheckBox;
|
|
import javax.swing.event.ChangeListener;
|
|
import javax.swing.event.ChangeEvent;
|
|
|
|
public class JServiceRegisterSourceEditor extends JPanel {
|
|
private JSpinner spRegister;
|
|
private JSpinner spNode;
|
|
private JSpinner spAx;
|
|
|
|
private List<ActionListener> actionListeners;
|
|
|
|
private ServiceRegister serviceRegister;
|
|
|
|
/**
|
|
* Create the panel.
|
|
*/
|
|
public JServiceRegisterSourceEditor() {
|
|
GridBagLayout gridBagLayout = new GridBagLayout();
|
|
gridBagLayout.columnWidths = new int[]{0, 0, 0, 0, 0, 0, 0};
|
|
gridBagLayout.rowHeights = new int[]{0, 0};
|
|
gridBagLayout.columnWeights = new double[]{0.0, 1.0, 0.0, 1.0, 0.0, 1.0, Double.MIN_VALUE};
|
|
gridBagLayout.rowWeights = new double[]{1.0, Double.MIN_VALUE};
|
|
setLayout(gridBagLayout);
|
|
|
|
JLabel lblAx = new JLabel("AX:");
|
|
GridBagConstraints gbc_lblAx = new GridBagConstraints();
|
|
gbc_lblAx.insets = new Insets(0, 0, 0, 5);
|
|
gbc_lblAx.gridx = 0;
|
|
gbc_lblAx.gridy = 0;
|
|
add(lblAx, gbc_lblAx);
|
|
|
|
spAx = new JSpinner();
|
|
spAx.addChangeListener(new ChangeListener() {
|
|
public void stateChanged(ChangeEvent e) {
|
|
fireAction();
|
|
}
|
|
});
|
|
spAx.setModel(new SpinnerNumberModel(0, 0, 14, 1));
|
|
GridBagConstraints gbc_spAx = new GridBagConstraints();
|
|
gbc_spAx.fill = GridBagConstraints.HORIZONTAL;
|
|
gbc_spAx.insets = new Insets(0, 0, 0, 5);
|
|
gbc_spAx.gridx = 1;
|
|
gbc_spAx.gridy = 0;
|
|
add(spAx, gbc_spAx);
|
|
|
|
JLabel lblNode = new JLabel("NODE:");
|
|
GridBagConstraints gbc_lblNode = new GridBagConstraints();
|
|
gbc_lblNode.insets = new Insets(0, 0, 0, 5);
|
|
gbc_lblNode.gridx = 2;
|
|
gbc_lblNode.gridy = 0;
|
|
add(lblNode, gbc_lblNode);
|
|
|
|
spNode = new JSpinner();
|
|
spNode.addChangeListener(new ChangeListener() {
|
|
public void stateChanged(ChangeEvent e) {
|
|
fireAction();
|
|
}
|
|
});
|
|
spNode.setModel(new SpinnerNumberModel(0, 0, 15, 1));
|
|
GridBagConstraints gbc_spNode = new GridBagConstraints();
|
|
gbc_spNode.fill = GridBagConstraints.HORIZONTAL;
|
|
gbc_spNode.insets = new Insets(0, 0, 0, 5);
|
|
gbc_spNode.gridx = 3;
|
|
gbc_spNode.gridy = 0;
|
|
add(spNode, gbc_spNode);
|
|
|
|
JLabel lblRegister = new JLabel("REGISTER:");
|
|
GridBagConstraints gbc_lblRegister = new GridBagConstraints();
|
|
gbc_lblRegister.insets = new Insets(0, 0, 0, 5);
|
|
gbc_lblRegister.gridx = 4;
|
|
gbc_lblRegister.gridy = 0;
|
|
add(lblRegister, gbc_lblRegister);
|
|
|
|
spRegister = new JSpinner();
|
|
spRegister.addChangeListener(new ChangeListener() {
|
|
public void stateChanged(ChangeEvent e) {
|
|
fireAction();
|
|
}
|
|
});
|
|
spRegister.setModel(new SpinnerNumberModel(0, 0, 65535, 1));
|
|
GridBagConstraints gbc_spRegister = new GridBagConstraints();
|
|
gbc_spRegister.fill = GridBagConstraints.HORIZONTAL;
|
|
gbc_spRegister.gridx = 5;
|
|
gbc_spRegister.gridy = 0;
|
|
add(spRegister, gbc_spRegister);
|
|
|
|
this.initialize();
|
|
}
|
|
|
|
private void initialize(){
|
|
actionListeners = new LinkedList<ActionListener>();
|
|
}
|
|
|
|
public void addActionListener(ActionListener actionListener){
|
|
actionListeners.add(actionListener);
|
|
}
|
|
public void removeActionListener(ActionListener actionListener){
|
|
actionListeners.remove(actionListener);
|
|
}
|
|
|
|
public ServiceRegister getServiceRegister(){
|
|
return this.serviceRegister;
|
|
}
|
|
public void setServiceRegister(ServiceRegister serviceRegister){
|
|
this.serviceRegister = serviceRegister;
|
|
}
|
|
|
|
void fireAction(){
|
|
|
|
if (serviceRegister != null){
|
|
serviceRegister.setAx(getAx());
|
|
serviceRegister.setNode(getNode());
|
|
serviceRegister.setRegister(getRegister());
|
|
}
|
|
|
|
for (ActionListener l:actionListeners)
|
|
l.actionPerformed(new ActionEvent(this, 0, ""));
|
|
}
|
|
|
|
public Integer getAx(){
|
|
return (Integer)spAx.getValue();
|
|
}
|
|
public void setAx(Integer value){
|
|
spAx.setValue(value);
|
|
}
|
|
|
|
public Integer getNode(){
|
|
return (Integer)spNode.getValue();
|
|
}
|
|
public void setNode(Integer value){
|
|
spNode.setValue(value);
|
|
}
|
|
|
|
public Integer getRegister(){
|
|
return (Integer)spRegister.getValue();
|
|
}
|
|
public void setRegister(Integer value){
|
|
spAx.setValue(value);
|
|
}
|
|
|
|
}
|