appletbots.gatherers
Class GatherersApplet

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Panel
              extended by java.applet.Applet
                  extended by javax.swing.JApplet
                      extended by appletbots.Applet
                          extended by appletbots.gatherers.GatherersApplet
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.RootPaneContainer

public class GatherersApplet
extends Applet

An applet to run a Gatherer simulation

Author:
Erik Rasmussen
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JApplet
javax.swing.JApplet.AccessibleJApplet
 
Nested classes/interfaces inherited from class java.applet.Applet
java.applet.Applet.AccessibleApplet
 
Nested classes/interfaces inherited from class java.awt.Panel
java.awt.Panel.AccessibleAWTPanel
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected  int agentSight
          The agent sight value
protected  javax.swing.JLabel agentSightLabel
          The "Agent Sight" label
protected  javax.swing.JSlider agentSightSlider
          The "Agent Sight" slider
static int MAX_AGENT_SIGHT
          The maximum agent sight value allowed
static int MAX_BLUE_NUM_AGENTS
          The maximum number of blue agents allowed
static int MAX_NUM_FOOD
          The maximum number of food allowed
static int MAX_RED_NUM_AGENTS
          The maximum number of red agents allowed
static int MIN_AGENT_SIGHT
          The minimum agent sight value allowed
static int MIN_BLUE_NUM_AGENTS
          The minimum number of blue agents allowed
static int MIN_NUM_FOOD
          The minimum number of food allowed
static int MIN_RED_NUM_AGENTS
          The minimum number of red agents allowed
protected  int numBlueAgents
          The number of blue agents
protected  javax.swing.JLabel numBlueAgentsLabel
          The "Number of Blue Agents" label
protected  javax.swing.JSlider numBlueAgentsSlider
          The "Number of Blue Agents" slider
protected  int numFood
          The number of food
protected  javax.swing.JLabel numFoodLabel
          The "Number of Food" label
protected  javax.swing.JSlider numFoodSlider
          The "Number of Food" slider
protected  int numRedAgents
          The number of red agents
protected  javax.swing.JLabel numRedAgentsLabel
          The "Number of Red Agents" label
protected  javax.swing.JSlider numRedAgentsSlider
          The "Number of Red Agents" slider
protected  boolean stationaryFood
          Whether or not the food is stationary
protected  javax.swing.JCheckBox stationaryFoodCheckBox
          The "Stationary Food" checkbox
 
Fields inherited from class appletbots.Applet
MILLISECONDS_BETWEEN_TIME_FIELD_UPDATES, objectViewer, settingsPanel
 
Fields inherited from class javax.swing.JApplet
accessibleContext, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
GatherersApplet()
           
 
Method Summary
 void agentSightChanged(javax.swing.event.ChangeEvent event)
          The method invoked when the "Agent Sight" slider changes
protected  javax.swing.JPanel getSettingsPanel()
          Returns a settings panel with "Number of Agents", "Number of Food", and "Agent Sight" sliders
protected  World initializeWorld()
          Initializes the world with the appropriate amount of food and Gatherers with the appropriate "agent sight" settings
 void numBlueAgentsChanged(javax.swing.event.ChangeEvent event)
          The method invoked when the "Number of Blue Agents" slider changes
 void numFoodChanged(javax.swing.event.ChangeEvent event)
          The method invoked when the "Number of Food" slider changes
 void numRedAgentsChanged(javax.swing.event.ChangeEvent event)
          The method invoked when the "Number of Red Agents" slider changes
 void stationaryFoodClicked(java.awt.event.ActionEvent event)
          The method invoked when the user selects or deselects the "Stationary Food" check box
 
Methods inherited from class appletbots.Applet
destroy, getDelay, init, resetClicked, speedChanged, startClicked, stopClicked, updateTimeField, worldClicked
 
Methods inherited from class javax.swing.JApplet
addImpl, createRootPane, getAccessibleContext, getContentPane, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isRootPaneCheckingEnabled, paramString, remove, setContentPane, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update
 
Methods inherited from class java.applet.Applet
getAppletContext, getAppletInfo, getAudioClip, getAudioClip, getCodeBase, getDocumentBase, getImage, getImage, getLocale, getParameter, getParameterInfo, isActive, newAudioClip, play, play, resize, resize, setStub, showStatus, start, stop
 
Methods inherited from class java.awt.Panel
addNotify
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getInsets, getLayout, getListeners, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, processEvent, remove, removeAll, removeContainerListener, removeNotify, setComponentZOrder, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

MAX_RED_NUM_AGENTS

public static final int MAX_RED_NUM_AGENTS
The maximum number of red agents allowed

See Also:
Constant Field Values

MIN_RED_NUM_AGENTS

public static final int MIN_RED_NUM_AGENTS
The minimum number of red agents allowed

See Also:
Constant Field Values

numRedAgents

protected int numRedAgents
The number of red agents


numRedAgentsSlider

protected javax.swing.JSlider numRedAgentsSlider
The "Number of Red Agents" slider


numRedAgentsLabel

protected javax.swing.JLabel numRedAgentsLabel
The "Number of Red Agents" label


MAX_BLUE_NUM_AGENTS

public static final int MAX_BLUE_NUM_AGENTS
The maximum number of blue agents allowed

See Also:
Constant Field Values

MIN_BLUE_NUM_AGENTS

public static final int MIN_BLUE_NUM_AGENTS
The minimum number of blue agents allowed

See Also:
Constant Field Values

numBlueAgents

protected int numBlueAgents
The number of blue agents


numBlueAgentsSlider

protected javax.swing.JSlider numBlueAgentsSlider
The "Number of Blue Agents" slider


numBlueAgentsLabel

protected javax.swing.JLabel numBlueAgentsLabel
The "Number of Blue Agents" label


MAX_AGENT_SIGHT

public static final int MAX_AGENT_SIGHT
The maximum agent sight value allowed

See Also:
Constant Field Values

MIN_AGENT_SIGHT

public static final int MIN_AGENT_SIGHT
The minimum agent sight value allowed

See Also:
Constant Field Values

agentSight

protected int agentSight
The agent sight value


agentSightSlider

protected javax.swing.JSlider agentSightSlider
The "Agent Sight" slider


agentSightLabel

protected javax.swing.JLabel agentSightLabel
The "Agent Sight" label


MAX_NUM_FOOD

public static final int MAX_NUM_FOOD
The maximum number of food allowed

See Also:
Constant Field Values

MIN_NUM_FOOD

public static final int MIN_NUM_FOOD
The minimum number of food allowed

See Also:
Constant Field Values

numFood

protected int numFood
The number of food


numFoodSlider

protected javax.swing.JSlider numFoodSlider
The "Number of Food" slider


numFoodLabel

protected javax.swing.JLabel numFoodLabel
The "Number of Food" label


stationaryFoodCheckBox

protected javax.swing.JCheckBox stationaryFoodCheckBox
The "Stationary Food" checkbox


stationaryFood

protected boolean stationaryFood
Whether or not the food is stationary

Constructor Detail

GatherersApplet

public GatherersApplet()
Method Detail

initializeWorld

protected World initializeWorld()
Initializes the world with the appropriate amount of food and Gatherers with the appropriate "agent sight" settings

Specified by:
initializeWorld in class Applet
Returns:
A world with Gatherers

getSettingsPanel

protected javax.swing.JPanel getSettingsPanel()
Returns a settings panel with "Number of Agents", "Number of Food", and "Agent Sight" sliders

Overrides:
getSettingsPanel in class Applet
Returns:
A settings panel with "Number of Agents", "Number of Food", and "Agent Sight" sliders

numRedAgentsChanged

public void numRedAgentsChanged(javax.swing.event.ChangeEvent event)
The method invoked when the "Number of Red Agents" slider changes

Parameters:
event - The change event

numBlueAgentsChanged

public void numBlueAgentsChanged(javax.swing.event.ChangeEvent event)
The method invoked when the "Number of Blue Agents" slider changes

Parameters:
event - The change event

agentSightChanged

public void agentSightChanged(javax.swing.event.ChangeEvent event)
The method invoked when the "Agent Sight" slider changes

Parameters:
event - The change event

numFoodChanged

public void numFoodChanged(javax.swing.event.ChangeEvent event)
The method invoked when the "Number of Food" slider changes

Parameters:
event - The change event

stationaryFoodClicked

public void stationaryFoodClicked(java.awt.event.ActionEvent event)
The method invoked when the user selects or deselects the "Stationary Food" check box

Parameters:
event - The action event