package org.infosec.ismp.applet.manager.component.panel.view.device;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import javax.swing.JTextField;
import org.infosec.ismp.applet.manager.component.panel.SJTUConst;
import org.infosec.ismp.applet.manager.component.panel.utils.SJTUUtils;
import org.infosec.ismp.applet.manager.component.panel.view.BorderPanel;
import twaver.swing.TableLayout;
/**
* 面板: 设备基本信息面板
* 调用接口:getDeviceInfo&setDeviceInfo
*
*/
public class DeviceInfoPanel extends BorderPanel implements PropertyChangeListener {
public static void main(String[] args) {
// SJTUUtils.showCompoentInFrame(new DeviceInfoPanel());
}
private DeviceInfo deviceInfo = new DeviceInfo();
private JTextField deviceNumberField = SJTUUtils.getTextField();
private JTextField deviceNameField = SJTUUtils.getTextField();
private JTextField complanyField = SJTUUtils.getTextField();
private JTextField deviceTradeMarkField = SJTUUtils.getTextField();
private JTextField deviceModelNumField = SJTUUtils.getTextField();
private JTextField createrField = SJTUUtils.getTextField();
private JTextField agentIdField = SJTUUtils.getTextField();
public DeviceInfoPanel() {
// this(null);
super(" 设备基本信息 ");
initGUI();
if (deviceInfo != null) {
deviceInfo.addPropertyChangeListener(this);
}
updateFields();
}
public DeviceInfoPanel(DeviceInfo deviceInfo) {
super(" 设备基本信息 ");
this.deviceInfo = deviceInfo;
initGUI();
if (deviceInfo != null) {
deviceInfo.addPropertyChangeListener(this);
}
updateFields();
}
public void initGUI() {
this.setBackground(SJTUConst.PANELBACKGROUND);
double rows[] = { TableLayout.PREFERRED, TableLayout.PREFERRED, TableLayout.PREFERRED, TableLayout.PREFERRED };
double cols[] = { TableLayout.PREFERRED, TableLayout.FILL, TableLayout.PREFERRED, TableLayout.FILL };
TableLayout layout = new TableLayout(cols, rows, 10, 5);
this.setLayout(layout);
this.add(SJTUUtils.getLabel("编号"), "0,0,0,0");
this.add(deviceNumberField, "1,0,1,0");
this.add(SJTUUtils.getLabel("名称"), "2,0,2,0");
this.add(deviceNameField, "3,0,3,0");
this.add(SJTUUtils.getLabel("设备厂家 "), "0,1,0,1");
this.add(complanyField, "1,1,1,1");
this.add(SJTUUtils.getLabel("品牌"), "2,1,2,1");
this.add(deviceTradeMarkField, "3,1,3,1");
this.add(SJTUUtils.getLabel("型号"), "0,2,0,2");
this.add(deviceModelNumField, "1,2,1,2");
// this.add(SJTUUtils.getLabel("创建人"), "2,2,2,2");
// this.add(createrField, "3,2,3,2");
// this.add(SJTUUtils.getLabel("数据代理 "), "2,2,2,2");
// this.add(agentIdField, "3,2,3,2");
// this.add(SJTUUtils.getLabel("数据代理 "), "0,3,0,3");
// this.add(agentIdField, "1,3,1,3");
}
public void propertyChange(PropertyChangeEvent evt) {
updateFields();
}
private void updateFields() {
if (deviceInfo != null) {
deviceNumberField.setText(deviceInfo.getDeviceNumber());
deviceNameField.setText(deviceInfo.getDeviceName());
complanyField.setText(deviceInfo.getCompany());
deviceTradeMarkField.setText(deviceInfo.getDeviceTradeMark());
deviceModelNumField.setText(deviceInfo.getDeviceModelNum());
createrField.setText(deviceInfo.getCreater());
String id = deviceInfo.getAgentId();
Integer agentId = null;
if(id != null && !id.equals("")) {
try {
agentId = Integer.parseInt(id);
} catch (Exception e) {
throw new RuntimeException();
}
}
} else {
deviceNumberField.setText("");
deviceNameField.setText("");
complanyField.setText("");
deviceTradeMarkField.setText("");
deviceModelNumField.setText("");
createrField.setText("");
agentIdField.setText("");
}
}
public DeviceInfo getDeviceInfo() {
return deviceInfo;
}
public void setDeviceInfo(DeviceInfo deviceInfo) {
if (this.deviceInfo != null) {
deviceInfo.removePropertyChangeListener(this);
}
if (deviceInfo != null) {
deviceInfo.addPropertyChangeListener(this);
}
this.deviceInfo = deviceInfo;
updateFields();
}
}