123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632 |
- package com.its.vms.ui;
- import com.intellij.uiDesigner.core.GridConstraints;
- import com.intellij.uiDesigner.core.GridLayoutManager;
- import com.intellij.uiDesigner.core.Spacer;
- import com.its.vms.domain.NET;
- import com.its.vms.dto.TbVmsCtlrDto;
- import com.its.vms.entity.TbVmsCtlrStts;
- import com.its.vms.xnettcp.vms.process.TcpServerSendData;
- import com.its.vms.xnettcp.vms.protocol.enums.eVmsOpCode;
- import com.its.vms.xnettcp.vms.protocol.enums.eVmsReqBoardPower;
- import com.its.vms.xnettcp.vms.protocol.impl.VmsReqStatusControl;
- import com.sun.management.OperatingSystemMXBean;
- import lombok.Getter;
- import lombok.extern.slf4j.Slf4j;
- import javax.swing.*;
- import javax.swing.plaf.FontUIResource;
- import javax.swing.text.StyleContext;
- import java.awt.*;
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import java.io.File;
- import java.io.IOException;
- import java.lang.management.ManagementFactory;
- import java.text.SimpleDateFormat;
- import java.util.Date;
- import java.util.Locale;
- @Slf4j
- @Getter
- public abstract class SubUI {
- OperatingSystemMXBean osBean = null;
- private TbVmsCtlrDto selObj = null;
- private JPanel rootPanel;
- private JPanel pnlCtlr;
- private JTextArea taLog;
- private JPanel pnlControl;
- private JButton btnReqFan;
- private JButton btnReqHeater;
- private JButton btnSignBoardOn;
- private JButton btnSignBoardOff;
- private JTextField txtName;
- private JTextField txtNmbr;
- private JTextField txtPort;
- private JTextField txtIpAddr;
- private JTextField txtDoor;
- private JTextField txtFan;
- private JTextField txtHeater;
- private JTextField txtTemp;
- private JTextField txtState;
- private JButton btnLogClear;
- private JTextField txtCtlrId;
- private JButton btnReqStatus;
- private JButton btnReqParam;
- private JButton btnScnDnld;
- private JButton btnTimeSync;
- private JComboBox cboControl;
- private JSpinner spControl;
- private JButton btnSymbDnld;
- private JButton btnReqFan2;
- private JCheckBox chkDebug;
- private JComboBox cboBright;
- private JSpinner spBright;
- private JButton btnReqBright;
- protected abstract void actionButtonClicked();
- public SubUI() {
- System.setProperty("awt.useSystemAAFontSettings", "false"); // AntiAliasing false
- osBean = ManagementFactory.getPlatformMXBean(OperatingSystemMXBean.class);
- try {
- Font font = Font.createFont(Font.TRUETYPE_FONT, new File("fonts/D2Coding.ttc"));
- GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
- ge.registerFont(font);
- } catch (FontFormatException | IOException e) {
- }
- Font d2font = new Font("D2Coding", Font.PLAIN, 12);
- taLog.setFont(d2font);
- txtPort.setVisible(false);
- SpinnerModel control = new SpinnerNumberModel(0, 0, 100, 1);
- spControl.setModel(control);
- SpinnerModel bright = new SpinnerNumberModel(0, 0, 100, 1);
- spBright.setModel(bright);
- btnReqBright.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- statusControl(10); // 표출부 밝기 제어
- }
- });
- btnReqFan2.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- statusControl(9); // 표출부 FAN 제어
- }
- });
- btnLogClear.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- taLog.setText(null);
- }
- });
- btnReqStatus.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- statusControl(1); // 상태정보요청
- }
- });
- btnReqParam.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- statusControl(2); // 파라미터정보요청
- }
- });
- btnScnDnld.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- statusControl(3); // 시나리오 다운로드
- }
- });
- btnTimeSync.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- statusControl(4); // 시간설정
- }
- });
- btnSignBoardOff.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- statusControl(5); // 전광판 OFF
- }
- });
- btnSignBoardOn.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- statusControl(6); // 전광판 ON
- }
- });
- btnReqFan.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- statusControl(7); // FAN 제어
- }
- });
- btnReqHeater.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- statusControl(8); // HEATER 제어
- }
- });
- btnSymbDnld.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- if (selObj == null) {
- return;
- }
- String message = "심벌라이브러리 다운로드를 요청하시겠습니까?\n\r시스템에 영향을 줄 수 있습니다.";
- String title = "심벌라이브러리 다운로드";
- if (JOptionPane.showConfirmDialog(getRootPanel(), message, title, JOptionPane.YES_NO_OPTION) != 0) {
- return;
- }
- selObj.getDnldSymbMap().clear();
- message = "심벌라이브러리 다운로드를 요청하였습니다.\n\r시스템 운영에 따라 심벌라이브러리를 다운로드 합니다.";
- JOptionPane.showMessageDialog(getRootPanel(), message, title, JOptionPane.YES_OPTION);
- }
- });
- chkDebug.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- if (selObj != null) {
- selObj.getDebug().setDebug(chkDebug.isSelected());
- }
- }
- });
- }
- public void statusControl(int controlType) {
- if (this.selObj == null) {
- JOptionPane.showMessageDialog(getRootPanel(), "제어기가 선택되지 않았습니다. 목록을 더블클릭하여 제어기를 선택하세요.", "제어기 선택", JOptionPane.ERROR_MESSAGE);
- return;
- }
- if (this.selObj.getNetState() == NET.CLOSED) {
- JOptionPane.showMessageDialog(getRootPanel(), "제어기가 현재 연결이 되어 있지 않습니다.", "제어기 연결 상태", JOptionPane.ERROR_MESSAGE);
- return;
- }
- String message = "";
- String title = "제어기 상태 제어";
- switch (controlType) {
- case 1:
- message = "제어기의 상태정보를 요청 하시겠습니까?";
- break;
- case 2:
- message = "제어기의 파라미터정보를 요청 하시겠습니까?";
- break;
- case 3:
- message = "제어기의 표출 시나리오를 다운로드 하시겠습니까?";
- break;
- case 4:
- message = "제어기의 시간 정보를 설정 하시겠습니까?";
- break;
- case 5:
- message = "제어기의 전광판 전원을 OFF 하시겠습니까?";
- break;
- case 6:
- message = "제어기의 전광판 전원을 ON 하시겠습니까?";
- break;
- case 7:
- message = "제어기함체의 FAN 을 제어 하시겠습니까?";
- break;
- case 8:
- message = "제어기함체의 HEATER 를 제어 하시겠습니까?";
- break;
- case 9:
- message = "표출부함체의 FAN 을 제어 하시겠습니까?";
- break;
- case 10:
- message = "표출부함체의 밝기를 제어 하시겠습니까?";
- break;
- default:
- return;
- }
- if (JOptionPane.showConfirmDialog(getRootPanel(), message, title, JOptionPane.YES_NO_OPTION) != 0) {
- return;
- }
- VmsReqStatusControl statusControl = new VmsReqStatusControl(this.selObj);
- switch (controlType) {
- case 1:
- this.selObj.addRequestData(new TcpServerSendData(eVmsOpCode.OP_VMS_STATUS_REQ, null));
- return;
- case 2:
- this.selObj.addRequestData(new TcpServerSendData(eVmsOpCode.OP_VMS_PARAMETER_REQ, null));
- return;
- case 3:
- this.selObj.downloadForm();
- return;
- case 4:
- statusControl.controlSystemTime();
- break;
- case 5:
- statusControl.controlSignboardPower(eVmsReqBoardPower.vms_req_board_power_off.getValue());
- break;
- case 6:
- statusControl.controlSignboardPower(eVmsReqBoardPower.vms_req_board_power_on.getValue());
- break;
- case 7:
- statusControl.controlFan((byte) (cboControl.getSelectedIndex() & 0xff), (byte) ((Integer) spControl.getValue() & 0xFF));
- break;
- case 8:
- statusControl.controlHeater((byte) (cboControl.getSelectedIndex() & 0xff), (byte) ((Integer) spControl.getValue() & 0xFF));
- break;
- case 9:
- statusControl.controlFan2((byte) (cboControl.getSelectedIndex() & 0xff), (byte) ((Integer) spControl.getValue() & 0xFF));
- break;
- case 10:
- statusControl.controlFan2((byte) (cboBright.getSelectedIndex() & 0xff), (byte) ((Integer) spControl.getValue() & 0xFF));
- break;
- }
- this.selObj.addRequestData(new TcpServerSendData(eVmsOpCode.OP_VMS_STATUS_CONTROL, statusControl));
- }
- public void logging(String txt) {
- Date now = new Date();
- SimpleDateFormat sFormat = new SimpleDateFormat("[MM/dd HH:mm:ss] ");
- String newLog = sFormat.format(now);
- taLog.append("\n" + newLog + txt);
- taLog.setCaretPosition(taLog.getDocument().getLength());
- }
- public void updateInfo(TbVmsCtlrDto selObj) {
- this.selObj = selObj;
- taLog.setText(null);
- txtNmbr.setText("");
- txtCtlrId.setText("");
- txtName.setText("");
- txtState.setText("");
- txtIpAddr.setText("");
- txtPort.setText("");
- txtDoor.setText("");
- txtFan.setText("");
- txtHeater.setText("");
- txtTemp.setText("");
- if (selObj != null) {
- chkDebug.setSelected(selObj.getDebug().isDebug());
- txtNmbr.setText(String.valueOf(selObj.getVmsCtlrNmbr()));
- txtCtlrId.setText(selObj.getCtlrId());
- txtName.setText(selObj.getName());
- txtIpAddr.setText(selObj.getCtlrIp());
- txtPort.setText(String.valueOf(selObj.getCtlrPort()));
- txtState.setText(CtlrSttsTableModel.netStateStr[selObj.getNetState()]);
- TbVmsCtlrStts stts = selObj.getStts();
- String door = "-";
- String fan = "-";
- String heater = "-";
- String temper = "-";
- if ("CMS0".equals(stts.getCmncSttsCd())) {
- if (stts.getCboxDoorSttsCd().equals("CDS0")) {
- door = "닫힘";
- } else if (stts.getCboxDoorSttsCd().equals("CDS1")) {
- door = "열림";
- } else {
- door = "-?-";
- }
- if (stts.getFanSttsCd().equals("PAS0")) {
- fan = "중지";
- } else if (stts.getFanSttsCd().equals("PAS1")) {
- fan = "가동";
- } else {
- fan = "-?-";
- }
- if (stts.getHetrSttsCd().equals("HTS0")) {
- heater = "중지";
- } else if (stts.getHetrSttsCd().equals("HTS1")) {
- heater = "가동";
- } else {
- heater = "-?-";
- }
- temper = String.valueOf(stts.getCboxTmpr());
- }
- txtDoor.setText(door);
- txtFan.setText(fan);
- txtHeater.setText(heater);
- txtTemp.setText(temper);
- }
- }
- {
- // GUI initializer generated by IntelliJ IDEA GUI Designer
- // >>> IMPORTANT!! <<<
- // DO NOT EDIT OR ADD ANY CODE HERE!
- $$$setupUI$$$();
- }
- /**
- * Method generated by IntelliJ IDEA GUI Designer
- * >>> IMPORTANT!! <<<
- * DO NOT edit this method OR call it in your code!
- *
- * @noinspection ALL
- */
- private void $$$setupUI$$$() {
- rootPanel = new JPanel();
- rootPanel.setLayout(new GridLayoutManager(2, 1, new Insets(0, 0, 0, 0), -1, -1));
- pnlCtlr = new JPanel();
- pnlCtlr.setLayout(new GridLayoutManager(2, 1, new Insets(0, 4, 0, 4), -1, -1));
- rootPanel.add(pnlCtlr, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- pnlControl = new JPanel();
- pnlControl.setLayout(new GridLayoutManager(5, 1, new Insets(0, 0, 0, 2), 1, 1));
- pnlCtlr.add(pnlControl, new GridConstraints(1, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, null, null, null, 0, false));
- final JPanel panel1 = new JPanel();
- panel1.setLayout(new GridLayoutManager(5, 12, new Insets(0, 0, 0, 0), -1, -1));
- pnlControl.add(panel1, new GridConstraints(0, 0, 5, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, null, null, null, 0, false));
- txtName = new JTextField();
- txtName.setEditable(false);
- Font txtNameFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, txtName.getFont());
- if (txtNameFont != null) txtName.setFont(txtNameFont);
- txtName.setHorizontalAlignment(2);
- txtName.setText("제어기 명칭");
- panel1.add(txtName, new GridConstraints(1, 4, 1, 3, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_WANT_GROW, GridConstraints.SIZEPOLICY_FIXED, null, new Dimension(200, -1), null, 0, false));
- final JLabel label1 = new JLabel();
- Font label1Font = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, label1.getFont());
- if (label1Font != null) label1.setFont(label1Font);
- label1.setText("ㅣ명칭");
- panel1.add(label1, new GridConstraints(1, 0, 1, 4, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- final JLabel label2 = new JLabel();
- Font label2Font = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, label2.getFont());
- if (label2Font != null) label2.setFont(label2Font);
- label2.setText("ㅣIP / Port ");
- panel1.add(label2, new GridConstraints(2, 0, 1, 3, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- final JLabel label3 = new JLabel();
- Font label3Font = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, label3.getFont());
- if (label3Font != null) label3.setFont(label3Font);
- label3.setText("ㅣ도어");
- panel1.add(label3, new GridConstraints(3, 0, 1, 2, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- txtDoor = new JTextField();
- txtDoor.setEditable(false);
- Font txtDoorFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, txtDoor.getFont());
- if (txtDoorFont != null) txtDoor.setFont(txtDoorFont);
- txtDoor.setHorizontalAlignment(0);
- txtDoor.setText("열림/닫힘");
- panel1.add(txtDoor, new GridConstraints(3, 4, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, new Dimension(100, -1), new Dimension(100, -1), new Dimension(100, -1), 0, false));
- txtCtlrId = new JTextField();
- txtCtlrId.setEditable(false);
- Font txtCtlrIdFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, txtCtlrId.getFont());
- if (txtCtlrIdFont != null) txtCtlrId.setFont(txtCtlrIdFont);
- txtCtlrId.setHorizontalAlignment(0);
- txtCtlrId.setText("제어기 ID");
- panel1.add(txtCtlrId, new GridConstraints(0, 5, 1, 2, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_WANT_GROW, GridConstraints.SIZEPOLICY_FIXED, null, new Dimension(150, -1), null, 0, false));
- txtNmbr = new JTextField();
- txtNmbr.setEditable(false);
- Font txtNmbrFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, txtNmbr.getFont());
- if (txtNmbrFont != null) txtNmbr.setFont(txtNmbrFont);
- txtNmbr.setHorizontalAlignment(0);
- txtNmbr.setText("관리번호");
- panel1.add(txtNmbr, new GridConstraints(0, 4, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- final JLabel label4 = new JLabel();
- Font label4Font = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, label4.getFont());
- if (label4Font != null) label4.setFont(label4Font);
- label4.setText("ㅣVMS");
- panel1.add(label4, new GridConstraints(0, 0, 1, 4, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- txtFan = new JTextField();
- txtFan.setEditable(false);
- Font txtFanFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, txtFan.getFont());
- if (txtFanFont != null) txtFan.setFont(txtFanFont);
- txtFan.setHorizontalAlignment(0);
- txtFan.setText("가동/중지");
- panel1.add(txtFan, new GridConstraints(3, 6, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, new Dimension(100, -1), new Dimension(100, -1), new Dimension(100, -1), 0, false));
- txtPort = new JTextField();
- txtPort.setEditable(false);
- Font txtPortFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, txtPort.getFont());
- if (txtPortFont != null) txtPort.setFont(txtPortFont);
- txtPort.setHorizontalAlignment(0);
- txtPort.setText("3001");
- panel1.add(txtPort, new GridConstraints(2, 6, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, new Dimension(100, -1), new Dimension(100, -1), new Dimension(100, -1), 0, false));
- final JLabel label5 = new JLabel();
- Font label5Font = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, label5.getFont());
- if (label5Font != null) label5.setFont(label5Font);
- label5.setText("ㅣ함체온도");
- panel1.add(label5, new GridConstraints(4, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- final JLabel label6 = new JLabel();
- Font label6Font = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, label6.getFont());
- if (label6Font != null) label6.setFont(label6Font);
- label6.setText("ㅣ히터");
- panel1.add(label6, new GridConstraints(4, 5, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- txtTemp = new JTextField();
- txtTemp.setEditable(false);
- Font txtTempFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, txtTemp.getFont());
- if (txtTempFont != null) txtTemp.setFont(txtTempFont);
- txtTemp.setHorizontalAlignment(0);
- txtTemp.setText("34");
- panel1.add(txtTemp, new GridConstraints(4, 4, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, new Dimension(100, -1), new Dimension(100, -1), new Dimension(100, -1), 0, false));
- txtHeater = new JTextField();
- txtHeater.setEditable(false);
- Font txtHeaterFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, txtHeater.getFont());
- if (txtHeaterFont != null) txtHeater.setFont(txtHeaterFont);
- txtHeater.setHorizontalAlignment(0);
- txtHeater.setText("가동/중지");
- panel1.add(txtHeater, new GridConstraints(4, 6, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, new Dimension(100, -1), new Dimension(100, -1), new Dimension(100, -1), 0, false));
- txtIpAddr = new JTextField();
- txtIpAddr.setEditable(false);
- Font txtIpAddrFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, txtIpAddr.getFont());
- if (txtIpAddrFont != null) txtIpAddr.setFont(txtIpAddrFont);
- txtIpAddr.setHorizontalAlignment(0);
- txtIpAddr.setText("192.168.113.112");
- panel1.add(txtIpAddr, new GridConstraints(2, 4, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- btnTimeSync = new JButton();
- Font btnTimeSyncFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, btnTimeSync.getFont());
- if (btnTimeSyncFont != null) btnTimeSync.setFont(btnTimeSyncFont);
- btnTimeSync.setText("시간 설정");
- panel1.add(btnTimeSync, new GridConstraints(4, 8, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- final JLabel label7 = new JLabel();
- Font label7Font = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, label7.getFont());
- if (label7Font != null) label7.setFont(label7Font);
- label7.setText("ㅣ팬");
- panel1.add(label7, new GridConstraints(3, 5, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- txtState = new JTextField();
- txtState.setEditable(false);
- Font txtStateFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, txtState.getFont());
- if (txtStateFont != null) txtState.setFont(txtStateFont);
- txtState.setHorizontalAlignment(0);
- txtState.setText("통신");
- panel1.add(txtState, new GridConstraints(0, 8, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, new Dimension(100, -1), new Dimension(100, -1), new Dimension(100, -1), 0, false));
- btnScnDnld = new JButton();
- Font btnScnDnldFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, btnScnDnld.getFont());
- if (btnScnDnldFont != null) btnScnDnld.setFont(btnScnDnldFont);
- btnScnDnld.setText("시나리오 다운로드");
- panel1.add(btnScnDnld, new GridConstraints(3, 8, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- btnReqParam = new JButton();
- Font btnReqParamFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, btnReqParam.getFont());
- if (btnReqParamFont != null) btnReqParam.setFont(btnReqParamFont);
- btnReqParam.setText("파라미터 요청");
- panel1.add(btnReqParam, new GridConstraints(2, 8, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- btnReqStatus = new JButton();
- Font btnReqStatusFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, btnReqStatus.getFont());
- if (btnReqStatusFont != null) btnReqStatus.setFont(btnReqStatusFont);
- btnReqStatus.setText("상태정보요청");
- panel1.add(btnReqStatus, new GridConstraints(1, 8, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- final JPanel panel2 = new JPanel();
- panel2.setLayout(new GridLayoutManager(1, 1, new Insets(0, 0, 0, 0), -1, -1));
- panel1.add(panel2, new GridConstraints(1, 10, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, null, null, null, 0, false));
- cboControl = new JComboBox();
- Font cboControlFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, cboControl.getFont());
- if (cboControlFont != null) cboControl.setFont(cboControlFont);
- final DefaultComboBoxModel defaultComboBoxModel1 = new DefaultComboBoxModel();
- defaultComboBoxModel1.addElement("0x00: 꺼짐");
- defaultComboBoxModel1.addElement("0x01: 켜짐");
- defaultComboBoxModel1.addElement("0x02: 자동");
- cboControl.setModel(defaultComboBoxModel1);
- panel2.add(cboControl, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- final JLabel label8 = new JLabel();
- Font label8Font = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, label8.getFont());
- if (label8Font != null) label8.setFont(label8Font);
- label8.setText("ㅣ화면밝기 제어");
- panel1.add(label8, new GridConstraints(3, 9, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- cboBright = new JComboBox();
- Font cboBrightFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, cboBright.getFont());
- if (cboBrightFont != null) cboBright.setFont(cboBrightFont);
- final DefaultComboBoxModel defaultComboBoxModel2 = new DefaultComboBoxModel();
- defaultComboBoxModel2.addElement("0x00: 주간");
- defaultComboBoxModel2.addElement("0x01: 야간");
- defaultComboBoxModel2.addElement("0x02: 자동");
- defaultComboBoxModel2.addElement("0x03: 수동");
- cboBright.setModel(defaultComboBoxModel2);
- panel1.add(cboBright, new GridConstraints(3, 10, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- btnReqFan = new JButton();
- Font btnReqFanFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, btnReqFan.getFont());
- if (btnReqFanFont != null) btnReqFan.setFont(btnReqFanFont);
- btnReqFan.setText("함체 Fan 제어");
- btnReqFan.setToolTipText("");
- panel1.add(btnReqFan, new GridConstraints(2, 9, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- btnReqHeater = new JButton();
- Font btnReqHeaterFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, btnReqHeater.getFont());
- if (btnReqHeaterFont != null) btnReqHeater.setFont(btnReqHeaterFont);
- btnReqHeater.setText("함체 Heater 제어");
- btnReqHeater.setToolTipText("");
- panel1.add(btnReqHeater, new GridConstraints(2, 10, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- final JLabel label9 = new JLabel();
- Font label9Font = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, label9.getFont());
- if (label9Font != null) label9.setFont(label9Font);
- label9.setText("ㅣ팬/히터 제어");
- panel1.add(label9, new GridConstraints(1, 9, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- btnSignBoardOn = new JButton();
- Font btnSignBoardOnFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, btnSignBoardOn.getFont());
- if (btnSignBoardOnFont != null) btnSignBoardOn.setFont(btnSignBoardOnFont);
- btnSignBoardOn.setText("전광판 전원 ON");
- btnSignBoardOn.setToolTipText("");
- panel1.add(btnSignBoardOn, new GridConstraints(0, 9, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- btnReqBright = new JButton();
- Font btnReqBrightFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, btnReqBright.getFont());
- if (btnReqBrightFont != null) btnReqBright.setFont(btnReqBrightFont);
- btnReqBright.setText("표출부 밝기 제어");
- panel1.add(btnReqBright, new GridConstraints(4, 11, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- spBright = new JSpinner();
- panel1.add(spBright, new GridConstraints(3, 11, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_WANT_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- btnReqFan2 = new JButton();
- Font btnReqFan2Font = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, btnReqFan2.getFont());
- if (btnReqFan2Font != null) btnReqFan2.setFont(btnReqFan2Font);
- btnReqFan2.setText("표출부 Fan 제어");
- panel1.add(btnReqFan2, new GridConstraints(2, 11, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- spControl = new JSpinner();
- panel1.add(spControl, new GridConstraints(1, 11, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_WANT_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- btnSymbDnld = new JButton();
- Font btnSymbDnldFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, btnSymbDnld.getFont());
- if (btnSymbDnldFont != null) btnSymbDnld.setFont(btnSymbDnldFont);
- btnSymbDnld.setText("심벌 다운로드");
- panel1.add(btnSymbDnld, new GridConstraints(4, 9, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- btnSignBoardOff = new JButton();
- Font btnSignBoardOffFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, btnSignBoardOff.getFont());
- if (btnSignBoardOffFont != null) btnSignBoardOff.setFont(btnSignBoardOffFont);
- btnSignBoardOff.setText("전광판 전원 OFF");
- btnSignBoardOff.setToolTipText("");
- panel1.add(btnSignBoardOff, new GridConstraints(0, 10, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- final JPanel panel3 = new JPanel();
- panel3.setLayout(new GridLayoutManager(2, 1, new Insets(0, 4, 0, 4), -1, -1));
- rootPanel.add(panel3, new GridConstraints(1, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, new Dimension(-1, 200), null, null, 0, false));
- final JPanel panel4 = new JPanel();
- panel4.setLayout(new GridLayoutManager(1, 4, new Insets(2, 0, 0, 2), -1, -1));
- panel3.add(panel4, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, null, null, null, 0, false));
- final JLabel label10 = new JLabel();
- Font label10Font = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, label10.getFont());
- if (label10Font != null) label10.setFont(label10Font);
- label10.setHorizontalAlignment(2);
- label10.setIcon(new ImageIcon(getClass().getResource("/static/image/logging.png")));
- label10.setText("제어 로그");
- panel4.add(label10, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- chkDebug = new JCheckBox();
- Font chkDebugFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, chkDebug.getFont());
- if (chkDebugFont != null) chkDebug.setFont(chkDebugFont);
- chkDebug.setText("Debug Info ");
- panel4.add(chkDebug, new GridConstraints(0, 1, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- btnLogClear = new JButton();
- Font btnLogClearFont = this.$$$getFont$$$("Malgun Gothic", Font.PLAIN, 12, btnLogClear.getFont());
- if (btnLogClearFont != null) btnLogClear.setFont(btnLogClearFont);
- btnLogClear.setHorizontalAlignment(0);
- btnLogClear.setHorizontalTextPosition(0);
- btnLogClear.setText("지우기");
- panel4.add(btnLogClear, new GridConstraints(0, 3, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
- final Spacer spacer1 = new Spacer();
- panel4.add(spacer1, new GridConstraints(0, 2, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_WANT_GROW, 1, null, null, null, 0, false));
- final JScrollPane scrollPane1 = new JScrollPane();
- panel3.add(scrollPane1, new GridConstraints(1, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_WANT_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_WANT_GROW, null, null, null, 0, false));
- taLog = new JTextArea();
- taLog.setBackground(new Color(-16777216));
- taLog.setCaretColor(new Color(-1));
- taLog.setEditable(false);
- Font taLogFont = this.$$$getFont$$$("D2Coding", Font.PLAIN, 14, taLog.getFont());
- if (taLogFont != null) taLog.setFont(taLogFont);
- taLog.setForeground(new Color(-1));
- taLog.setMargin(new Insets(4, 4, 4, 4));
- taLog.setText("제어로그");
- scrollPane1.setViewportView(taLog);
- }
- /**
- * @noinspection ALL
- */
- private Font $$$getFont$$$(String fontName, int style, int size, Font currentFont) {
- if (currentFont == null) return null;
- String resultName;
- if (fontName == null) {
- resultName = currentFont.getName();
- } else {
- Font testFont = new Font(fontName, Font.PLAIN, 10);
- if (testFont.canDisplay('a') && testFont.canDisplay('1')) {
- resultName = fontName;
- } else {
- resultName = currentFont.getName();
- }
- }
- Font font = new Font(resultName, style >= 0 ? style : currentFont.getStyle(), size >= 0 ? size : currentFont.getSize());
- boolean isMac = System.getProperty("os.name", "").toLowerCase(Locale.ENGLISH).startsWith("mac");
- Font fontWithFallback = isMac ? new Font(font.getFamily(), font.getStyle(), font.getSize()) : new StyleContext().getFont(font.getFamily(), font.getStyle(), font.getSize());
- return fontWithFallback instanceof FontUIResource ? fontWithFallback : new FontUIResource(fontWithFallback);
- }
- /**
- * @noinspection ALL
- */
- public JComponent $$$getRootComponent$$$() {
- return rootPanel;
- }
- }
|