?? remotecontrol.java
字號:
/* * Copyright (c) 2003, Vanderbilt University * All rights reserved. * * Permission to use, copy, modify, and distribute this software and its * documentation for any purpose, without fee, and without written agreement is * hereby granted, provided that the above copyright notice, the following * two paragraphs and the author appear in all copies of this software. * * IN NO EVENT SHALL THE VANDERBILT UNIVERSITY BE LIABLE TO ANY PARTY FOR * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT * OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE VANDERBILT * UNIVERSITY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * THE VANDERBILT UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES, * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS * ON AN "AS IS" BASIS, AND THE VANDERBILT UNIVERSITY HAS NO OBLIGATION TO * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. */package net.tinyos.mcenter;import java.util.prefs.*;import java.util.*;/** * * @author nadand */public class RemoteControl extends MessageCenterInternalFrame { // the AM type public static byte AM_TYPE = (byte)0x5E; // command constants public static byte STOP = (byte)0; public static byte START = (byte)1; public static byte RESTART = (byte)2; // data type constants public static byte INT = (byte)0; public static byte DATA = (byte)1; public static byte COMMAND = (byte)2; // target constants public static int BROADCAST = 0xFFFF; // other constants public static int COMMAND_RESEND = 3; private static byte sequenceNum = 1; private static byte commandState = START; Preferences prefs = null; /** Creates new form RemoteController */ public RemoteControl() { super("RemoteController"); initComponents(); buttonGroup1.add(startRadioButton); buttonGroup1.add(stopRadioButton); buttonGroup1.add(restartRadioButton); buttonGroup1.setSelected(startRadioButton.getModel(),true); prefs = Preferences.userNodeForPackage(this.getClass()); prefs = prefs.node(prefs.absolutePath()+"/RemoteController"); loadComboBox(); } /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ private void initComponents() {//GEN-BEGIN:initComponents java.awt.GridBagConstraints gridBagConstraints; buttonGroup1 = new javax.swing.ButtonGroup(); savePanel = new javax.swing.JPanel(); configNameText = new javax.swing.JComboBox(); saveConfigButton = new javax.swing.JButton(); delConfigButton = new javax.swing.JButton(); controlPanel = new javax.swing.JPanel(); seqnLabel = new javax.swing.JLabel(); seqnTextField = new javax.swing.JTextField(); targetLabel = new javax.swing.JLabel(); targetTextField = new javax.swing.JTextField(); appIdLabel = new javax.swing.JLabel(); appIdTextField = new javax.swing.JTextField(); sendButton = new javax.swing.JButton(); jTabbedPane1 = new javax.swing.JTabbedPane(); intPanel = new javax.swing.JPanel(); intCmdLabel = new javax.swing.JLabel(); intCmdTextField = new javax.swing.JTextField(); runPanel = new javax.swing.JPanel(); startRadioButton = new javax.swing.JRadioButton(); stopRadioButton = new javax.swing.JRadioButton(); restartRadioButton = new javax.swing.JRadioButton(); commandPanel = new javax.swing.JPanel(); dataParamLabel = new javax.swing.JLabel(); dataParamTextField = new javax.swing.JTextField(); logPanel = new javax.swing.JPanel(); jScrollPane1 = new javax.swing.JScrollPane(); logTextArea = new javax.swing.JTextArea(); addToLogTextField = new javax.swing.JTextField(); addtoLogButton = new javax.swing.JButton(); clearLogButton = new javax.swing.JButton(); usageTextField = new javax.swing.JTextArea(); getContentPane().setLayout(new java.awt.GridBagLayout()); savePanel.setLayout(new java.awt.GridBagLayout()); savePanel.setBorder(new javax.swing.border.TitledBorder("Configuration")); configNameText.setEditable(true); configNameText.setMaximumRowCount(100); configNameText.setToolTipText("the name of the configuration"); configNameText.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { configNameTextActionPerformed(evt); } }); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTH; gridBagConstraints.weightx = 1.0; gridBagConstraints.insets = new java.awt.Insets(0, 3, 0, 3); savePanel.add(configNameText, gridBagConstraints); saveConfigButton.setText("Save"); saveConfigButton.setToolTipText("save the current configuration in the preferences"); saveConfigButton.setMaximumSize(new java.awt.Dimension(80, 26)); saveConfigButton.setMinimumSize(new java.awt.Dimension(80, 26)); saveConfigButton.setPreferredSize(new java.awt.Dimension(80, 26)); saveConfigButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { saveConfigButtonActionPerformed(evt); } }); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTH; gridBagConstraints.insets = new java.awt.Insets(0, 3, 0, 3); savePanel.add(saveConfigButton, gridBagConstraints); delConfigButton.setText("Delete"); delConfigButton.setToolTipText("delete the current configuration from the preferences"); delConfigButton.setMaximumSize(new java.awt.Dimension(80, 26)); delConfigButton.setMinimumSize(new java.awt.Dimension(80, 26)); delConfigButton.setPreferredSize(new java.awt.Dimension(80, 26)); delConfigButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { delConfigButtonActionPerformed(evt); } }); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTH; gridBagConstraints.insets = new java.awt.Insets(0, 3, 3, 3); savePanel.add(delConfigButton, gridBagConstraints); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 0; gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; gridBagConstraints.weightx = 1.0; getContentPane().add(savePanel, gridBagConstraints); controlPanel.setLayout(new java.awt.GridBagLayout()); controlPanel.setBorder(new javax.swing.border.TitledBorder("Command")); seqnLabel.setText("sequence"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.insets = new java.awt.Insets(0, 7, 0, 3); gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.weightx = 1.0; controlPanel.add(seqnLabel, gridBagConstraints); seqnTextField.setBackground(new java.awt.Color(204, 204, 204)); seqnTextField.setToolTipText("the sequence number of the command"); seqnTextField.setMinimumSize(new java.awt.Dimension(40, 20)); seqnTextField.setPreferredSize(new java.awt.Dimension(40, 20)); seqnTextField.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { seqnTextFieldActionPerformed(evt); } }); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; controlPanel.add(seqnTextField, gridBagConstraints); targetLabel.setText("target"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.insets = new java.awt.Insets(0, 6, 0, 3); gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.weightx = 1.0; controlPanel.add(targetLabel, gridBagConstraints); targetTextField.setToolTipText("node id, or 0xFFFF for all motes"); targetTextField.setMinimumSize(new java.awt.Dimension(60, 20)); targetTextField.setPreferredSize(new java.awt.Dimension(60, 20)); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; controlPanel.add(targetTextField, gridBagConstraints); appIdLabel.setText("appId"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.insets = new java.awt.Insets(0, 6, 0, 3); gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.weightx = 1.0; controlPanel.add(appIdLabel, gridBagConstraints); appIdTextField.setToolTipText("your remote control application id"); appIdTextField.setMinimumSize(new java.awt.Dimension(40, 20)); appIdTextField.setPreferredSize(new java.awt.Dimension(40, 20)); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.insets = new java.awt.Insets(0, 0, 0, 3); controlPanel.add(appIdTextField, gridBagConstraints); sendButton.setText("Send"); sendButton.setToolTipText("this sends the command"); sendButton.setMaximumSize(new java.awt.Dimension(80, 26)); sendButton.setMinimumSize(new java.awt.Dimension(80, 26)); sendButton.setPreferredSize(new java.awt.Dimension(80, 26)); sendButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { sendButtonActionPerformed(evt); } }); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridwidth = java.awt.GridBagConstraints.RELATIVE; gridBagConstraints.insets = new java.awt.Insets(0, 3, 3, 3); gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; gridBagConstraints.weightx = 1.0; controlPanel.add(sendButton, gridBagConstraints); jTabbedPane1.setToolTipText(""); intPanel.setLayout(new java.awt.GridBagLayout());
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -