📄 mgmtsimulator.java
字号:
/*
* Copyright (C) 2007 ETH Zurich
*
* This file is part of Fosstrak (www.fosstrak.org).
*
* Fosstrak is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License version 2.1, as published by the Free Software Foundation.
*
* Fosstrak is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with Fosstrak; if not, write to the Free
* Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
* Boston, MA 02110-1301 USA
*/
package org.fosstrak.reader.rprm.core.mgmt.simulator;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import javax.swing.BorderFactory;
import javax.swing.BoxLayout;
import javax.swing.ButtonGroup;
import javax.swing.ComboBoxModel;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTabbedPane;
import javax.swing.WindowConstants;
import javax.swing.border.BevelBorder;
import javax.swing.event.PopupMenuEvent;
import javax.swing.event.PopupMenuListener;
import org.fosstrak.reader.rprm.core.AntennaReadPoint;
import org.fosstrak.reader.rprm.core.ReadPoint;
import org.fosstrak.reader.rprm.core.ReaderDevice;
import org.fosstrak.reader.rprm.core.ReaderProtocolException;
import org.fosstrak.reader.rprm.core.mgmt.OperationalStatus;
import org.apache.log4j.Logger;
/**
* This code was edited or generated using CloudGarden's Jigloo
* SWT/Swing GUI Builder, which is free for non-commercial
* use. If Jigloo is being used commercially (ie, by a corporation,
* company or business for any purpose whatever) then you
* should purchase a license for each developer using Jigloo.
* Please visit www.cloudgarden.com for details.
* Use of Jigloo implies acceptance of these licensing terms.
* A COMMERCIAL LICENSE HAS NOT BEEN PURCHASED FOR
* THIS MACHINE, SO JIGLOO OR THIS CODE CANNOT BE USED
* LEGALLY FOR ANY CORPORATE OR COMMERCIAL PURPOSE.
*/
public class MgmtSimulator extends javax.swing.JFrame {
/**
* The logger.
*/
private static Logger log = Logger.getLogger(MgmtSimulator.class);
private JPanel readPointOperStatusLabelPanel;
private JPanel readPointErrorButtonPanel;
private JPanel readPointErrorLabelPanel;
private JPanel readPointSelectionLabelPanel;
private JLabel readPointOperStatusLabel;
private JRadioButton readPointUnknownRadioButton;
private JRadioButton readPointOtherRadioButton;
private JRadioButton readPointDownRadioButton;
private JRadioButton readPointUpRadioButton;
private JPanel readPointRadioButtonPanel;
private JPanel readPointOperStatusPanel;
private JLabel readPointSelectionLabel;
private JLabel readPointErrorLabel;
private JPanel readPointPanel;
private JButton lockErrorButton;
private JButton eraseErrorButton;
private JButton killErrorButton;
private JButton writeErrorButton;
private JButton readErrorButton;
private JPanel readPointErrorPanel;
private JPanel readPointActionPanel;
private JPanel readPointSelectorPanel;
private JComboBox readPointSelector;
private JTabbedPane deviceTabs;
private ButtonGroup readPointRadioButtonGroup;
/**
* The reader device.
*/
private ReaderDevice readerDevice;
/**
* Main method to display this JFrame
*/
public static void main(String[] args) {
ReaderDevice readerDevice = null;
try {
readerDevice = ReaderDevice.getInstance();
} catch (ReaderProtocolException rpe) {
log.error("Unable to obtain ReaderDevice instance. -> Abort");
return;
}
MgmtSimulator inst = new MgmtSimulator(readerDevice);
inst.setVisible(true);
}
/**
* The constructor.
*
* @param readerDevice
* The reader device
*/
public MgmtSimulator(ReaderDevice readerDevice) {
super();
this.readerDevice = readerDevice;
initGUI();
updateReadPointSelector();
updateReadPointActionPanel();
}
/**
* Initializes the GUI.
*/
private void initGUI() {
try {
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
this.setTitle("Management Simulator");
{
deviceTabs = new JTabbedPane();
getContentPane().add(deviceTabs, BorderLayout.CENTER);
{
readPointPanel = new JPanel();
GridLayout readPointPanelLayout = new GridLayout(1, 1);
readPointPanelLayout.setHgap(5);
readPointPanelLayout.setVgap(5);
readPointPanelLayout.setColumns(1);
readPointPanel.setLayout(readPointPanelLayout);
deviceTabs
.addTab("Read Points", null, readPointPanel, null);
{
readPointSelectorPanel = new JPanel();
BoxLayout readPointSelectorPanelLayout = new BoxLayout(
readPointSelectorPanel,
javax.swing.BoxLayout.Y_AXIS);
readPointSelectorPanel.setLayout(readPointSelectorPanelLayout);
readPointPanel.add(readPointSelectorPanel);
readPointSelectorPanel.setBorder(BorderFactory.createEtchedBorder(BevelBorder.LOWERED));
{
readPointSelectionLabelPanel = new JPanel();
FlowLayout readPointSelectionLabelPanelLayout = new FlowLayout();
readPointSelectionLabelPanelLayout.setAlignment(FlowLayout.LEFT);
readPointSelectorPanel.add(readPointSelectionLabelPanel);
readPointSelectionLabelPanel.setMaximumSize(new java.awt.Dimension(32767, 26));
readPointSelectionLabelPanel.setLayout(readPointSelectionLabelPanelLayout);
{
readPointSelectionLabel = new JLabel();
readPointSelectionLabelPanel.add(readPointSelectionLabel);
readPointSelectionLabel
.setText("Choose a read point:");
}
}
{
ComboBoxModel readPointSelectorModel = new DefaultComboBoxModel();
readPointSelector = new JComboBox();
readPointSelectorPanel.add(readPointSelector);
readPointSelector.setMaximumSize(new java.awt.Dimension(32767, 26));
readPointSelector
.addPopupMenuListener(new PopupMenuListener() {
public void popupMenuWillBecomeVisible(
PopupMenuEvent evt) {
readPointSelectorPopupMenuWillBecomeVisible(evt);
}
public void popupMenuWillBecomeInvisible(
PopupMenuEvent evt) { }
public void popupMenuCanceled(PopupMenuEvent evt) { }
});
readPointSelector
.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent evt) {
readPointSelectorItemStateChanged(evt);
}
});
readPointSelector.setModel(readPointSelectorModel);
}
}
{
readPointActionPanel = new JPanel();
BoxLayout readPointActionPanelLayout = new BoxLayout(
readPointActionPanel,
javax.swing.BoxLayout.Y_AXIS);
readPointActionPanel.setLayout(readPointActionPanelLayout);
readPointPanel.add(readPointActionPanel);
{
readPointErrorPanel = new JPanel();
BorderLayout readPointErrorPanelLayout = new BorderLayout();
readPointErrorPanel.setLayout(readPointErrorPanelLayout);
readPointActionPanel.add(readPointErrorPanel);
readPointErrorPanel.setPreferredSize(new java.awt.Dimension(216, 170));
readPointErrorPanel.setBorder(BorderFactory.createEtchedBorder(BevelBorder.LOWERED));
{
readPointErrorLabelPanel = new JPanel();
FlowLayout readPointErrorLabelPanelLayout = new FlowLayout();
readPointErrorLabelPanelLayout.setAlignment(FlowLayout.LEFT);
readPointErrorLabelPanel.setLayout(readPointErrorLabelPanelLayout);
readPointErrorPanel.add(readPointErrorLabelPanel, BorderLayout.NORTH);
readPointErrorLabelPanel.setMaximumSize(new java.awt.Dimension(32767, 26));
{
readPointErrorLabel = new JLabel();
readPointErrorLabelPanel.add(readPointErrorLabel);
readPointErrorLabel.setText("Generate an error:");
}
}
{
readPointErrorButtonPanel = new JPanel();
BoxLayout readPointErrorButtonPanelLayout = new BoxLayout(
readPointErrorButtonPanel,
javax.swing.BoxLayout.Y_AXIS);
readPointErrorButtonPanel.setLayout(readPointErrorButtonPanelLayout);
readPointErrorPanel.add(readPointErrorButtonPanel, BorderLayout.WEST);
{
readErrorButton = new JButton();
readPointErrorButtonPanel.add(readErrorButton);
readErrorButton.setText("Read");
readErrorButton
.setMaximumSize(new java.awt.Dimension(
70,
26));
readErrorButton
.addActionListener(new ActionListener() {
public void actionPerformed(
ActionEvent evt) {
readErrorButtonActionPerformed(evt);
}
});
}
{
writeErrorButton = new JButton();
readPointErrorButtonPanel.add(writeErrorButton);
writeErrorButton.setText("Write");
writeErrorButton
.setMaximumSize(new java.awt.Dimension(
70,
26));
writeErrorButton
.addActionListener(new ActionListener() {
public void actionPerformed(
ActionEvent evt) {
writeErrorButtonActionPerformed(evt);
}
});
}
{
killErrorButton = new JButton();
readPointErrorButtonPanel.add(killErrorButton);
killErrorButton.setText("Kill");
killErrorButton
.setMaximumSize(new java.awt.Dimension(
70,
26));
killErrorButton
.addActionListener(new ActionListener() {
public void actionPerformed(
ActionEvent evt) {
killErrorButtonActionPerformed(evt);
}
});
}
{
eraseErrorButton = new JButton();
readPointErrorButtonPanel.add(eraseErrorButton);
eraseErrorButton.setText("Erase");
eraseErrorButton
.setMaximumSize(new java.awt.Dimension(
70,
26));
eraseErrorButton
.addActionListener(new ActionListener() {
public void actionPerformed(
ActionEvent evt) {
eraseErrorButtonActionPerformed(evt);
}
});
}
{
lockErrorButton = new JButton();
readPointErrorButtonPanel.add(lockErrorButton);
lockErrorButton.setText("Lock");
lockErrorButton
.setMaximumSize(new java.awt.Dimension(
70,
26));
lockErrorButton
.addActionListener(new ActionListener() {
public void actionPerformed(
ActionEvent evt) {
lockErrorButtonActionPerformed(evt);
}
});
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -