⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tinyviz.java

📁 无线通信的主要编程软件,是无线通信工作人员的必备工具,关天相关教程我会在后续传上.
💻 JAVA
字号:
// $Id: TinyViz.java,v 1.23 2004/01/10 00:58:22 mikedemmer Exp $/*									tab:2 * * * "Copyright (c) 2000 and The Regents of the University  * of California.  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 and the following two paragraphs appear in all copies of * this software. *  * IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA 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 UNIVERSITY OF CALIFORNIA HAS BEEN * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *  * THE UNIVERSITY OF CALIFORNIA 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 UNIVERSITY OF * CALIFORNIA HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, * UPDATES, ENHANCEMENTS, OR MODIFICATIONS." * * Authors:	Phil Levis, Nelson Lee * Date:        November 27, 2002 * Desc:        Base GUI; plugins connect to this one * *//** * @author Phil Levis * @author Nelson Lee */package net.tinyos.sim;import java.awt.*;import javax.swing.*;import java.util.*;import java.io.*;import net.tinyos.sim.event.*;import java.net.URL;public class TinyViz implements SimConst {  private SimDriver driver;  private JFrame mainFrame;  private MainMenuBar menuBar;  private MotePanel motePanel;  private CoordinateTransformer cT;  private PluginPanel pluginPanel;  public static final Font defaultFont = new Font("Helvetica", Font.PLAIN, 10);  public static final Font labelFont = new Font("Helvetica", Font.BOLD, 11);  public static final Font smallFont = new Font("Helvetica", Font.PLAIN, 9);  public static final Font constFont = new Font("Courier", Font.PLAIN, 9);  public static final Font constBoldFont = new Font("Courier", Font.BOLD, 9);  public static final Font boldFont = new Font("Helvetica", Font.BOLD, 10);  public static final Color paleBlue = new Color(0x97, 0x97, 0xc8);  public SimDriver getSimDriver() {    return driver;  }  public Frame getMainFrame() {    return mainFrame;  }  public double getTosTime() {    return Double.valueOf(menuBar.timeLabel.getText()).doubleValue();  }  public MainMenuBar getMenuBar() {    return menuBar;  }  public CoordinateTransformer getCoordTransformer() {    return cT;  }  public MotePanel getMotePanel() {    return motePanel;  }  public PluginPanel getPluginPanel() {    return pluginPanel;  }  // Called by AutoRun and within reset()  public void refreshAndWait() {    motePanel.refreshAndWait();  }  // Called by SimComm when its internal state changes and by  // pause/resume  public void refreshPauseState() {    menuBar.refreshPausePlayButton();  }  // Sets the status line  public void setStatus(String s) {    pluginPanel.setStatus(s);  }  // Called by SimEventBus when a new event comes in  public void timeUpdate(String time) {    menuBar.timeLabel.setText(time);  }  // Called by AutoRun after loading the specified plugins  public void refreshPluginRegistrations() {    pluginPanel.refreshRegistrations();  }  public void pause() {    driver.pause();  }  public void resume() {    driver.resume();  }  public TinyViz(SimDriver driver, boolean lookandfeel) {    this.driver = driver;    /* Set up look and feel */    if (lookandfeel) {      try {	Class oclass =          Class.forName("com.oyoaha.swing.plaf.oyoaha.OyoahaLookAndFeel");	Object olnf = oclass.newInstance();	URL otm_res = this.getClass().getResource("ui/slushy8.otm");	if(otm_res != null) {	  Class params[] = new Class[1];	  Object args[] = new Object[1];	  java.lang.reflect.Method method;          	  params[0] = otm_res.getClass();	  args[0] = otm_res;          method = oclass.getMethod("setOyoahaTheme", params);	  method.invoke(olnf, args);	}	UIManager.setLookAndFeel((javax.swing.LookAndFeel)olnf);       } catch (Exception e) {	System.err.println("Got exception loading Oyoaha: "+e);	System.err.println("Using default look and feel");      }    }    /* Create GUI components */    mainFrame = new JFrame("TinyViz");    mainFrame.setFont(defaultFont);    menuBar = new MainMenuBar(this);    menuBar.setFont(defaultFont);    mainFrame.setJMenuBar(menuBar);    cT = new CoordinateTransformer(MOTE_SCALE_WIDTH, MOTE_SCALE_HEIGHT,				   MOTE_PANEL_WIDTH, MOTE_PANEL_HEIGHT);    motePanel = new MotePanel(this);    pluginPanel = new PluginPanel(this);    MoteSimObject.setPopupMenu(new SimObjectPopupMenu(this));    menuBar.addToolbar();    mainFrame.getContentPane().setLayout(new GridLayout(1,2));    mainFrame.getContentPane().add(motePanel);    mainFrame.getContentPane().add(pluginPanel);    mainFrame.pack();    boolean visible_flag = true;    if (driver.getAutoRun() != null) {      visible_flag = driver.getAutoRun().visible_flag;    }    mainFrame.setVisible(visible_flag);  }    public static void main(String[] args) throws IOException {    String[] args2 = new String[args.length + 1];    for (int i = 0; i < args.length; ++i) {      args2[i] = args[i];    }    args2[args.length] = "-gui";    new SimDriver(args2);  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -