📄 timerratecombobox.java
字号:
// **********************************************************************// // <copyright>// // BBN Technologies// 10 Moulton Street// Cambridge, MA 02138// (617) 873-8000// // Copyright (C) BBNT Solutions LLC. All rights reserved.// // </copyright>// **********************************************************************// // $Source: /cvs/distapps/openmap/src/openmap/com/bbn/openmap/gui/time/TimerRateComboBox.java,v $// $RCSfile: TimerRateComboBox.java,v $// $Revision: 1.2.2.1 $// $Date: 2004/10/14 18:26:56 $// $Author: dietrick $// // **********************************************************************package com.bbn.openmap.gui.time;import com.bbn.openmap.PropertyConsumer;import com.bbn.openmap.util.Debug;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.Properties;import javax.swing.*;/** * The TimerRateComboBox is a general pace selector for a * RealTimeHandler. It provides a JComboBox interface (pop-up menu) * that shows discrete choices of rates for timer/scenario settings. * The RealTimeHandler can set these choices, with the GUI display * name of the choice, the timer interval and the scenario pace that * the interval represents. */public class TimerRateComboBox extends JComboBox implements ActionListener, PropertyConsumer { /** * The RealTimeHandler to be updated. */ protected RealTimeHandler timeHandler; public TimerRateComboBox(RealTimeHandler rth) { super(); addActionListener(this); setTimeHandler(rth); } /** * Only TimerRateHolders can be added. */ public void addItem(Object obj) { if (obj instanceof TimerRateHolder) { super.addItem(obj); } else { Debug.error("TimerRateComboBox: Only TimerRateHolders can be added"); } } /** * The preferred way to add choices, since it creates the * TimerRateHolder for you. */ public void add(String string, int interval, int pace) { super.addItem(new TimerRateHolder(string, interval, pace)); } public void setTimeHandler(RealTimeHandler rth) { timeHandler = rth; } public RealTimeHandler getTimeHandler() { return timeHandler; } /** * When a choice is made, the TimerRateComboBox updates the * RealTimeHandler. */ public void actionPerformed(ActionEvent ae) { Object obj = ae.getSource(); if (obj == this) { TimerRateHolder trh = (TimerRateHolder) getSelectedItem(); trh.modifyTimer(getTimeHandler()); } } ///// Property Consumer Interface Methods public void setProperties(Properties props) { setProperties(null, props); } public void setProperties(String prefix, Properties props) { setPropertyPrefix(prefix); } public Properties getProperties(Properties props) { return props; } public Properties getPropertyInfo(Properties props) { return props; } protected String propPrefix = null; public String getPropertyPrefix() { return propPrefix; } public void setPropertyPrefix(String prefix) { propPrefix = prefix; } public class TimerRateHolder { protected String title; protected int timerInterval; protected int pace; public TimerRateHolder(String t, int ti, int p) { title = t; timerInterval = ti; pace = p; } public void modifyTimer(RealTimeHandler rth) { rth.setPace(pace); rth.setUpdateInterval(timerInterval); } public String toString() { return title; } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -