VASSAL.build.module
Class Chatter

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--javax.swing.JComponent
                    |
                    +--javax.swing.JPanel
                          |
                          +--VASSAL.build.module.Chatter
All Implemented Interfaces:
javax.accessibility.Accessible, Buildable, CommandEncoder, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable

public class Chatter
extends javax.swing.JPanel
implements CommandEncoder, Buildable

The chat window component. Displays text messages and accepts input. Also acts as a CommandEncoder, encoding/decoding commands that display message in the text area

See Also:
Serialized Form

Nested Class Summary
static class Chatter.DisplayText
          This is a Command object that, when executed, displays a text message in the Chatter's text area
 
Field Summary
protected  javax.swing.JTextArea conversation
           
protected static java.lang.String GAME_MSG_COLOR
           
protected  javax.swing.JTextField input
           
protected static java.lang.String MY_CHAT_COLOR
           
protected static java.lang.String OTHER_CHAT_COLOR
           
protected  javax.swing.JScrollPane scroll
           
protected static java.lang.String SYS_MSG_COLOR
           
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
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
Chatter()
           
 
Method Summary
 void add(Buildable b)
          Adds a child component.
 void addTo(Buildable b)
          Expects to be added to a GameModule.
 void build(org.w3c.dom.Element e)
          Build the object
 Command decode(java.lang.String s)
          Translate a String into a Command
 java.lang.String encode(Command c)
          Translate a Command into a String
 org.w3c.dom.Element getBuildElement(org.w3c.dom.Document doc)
           
protected  java.awt.Color getColor(javax.swing.text.Element elem)
          Determines the color with which to draw a given line of text
 java.lang.String getHandle()
           
protected  java.lang.String handle()
           
 void keyCommand(javax.swing.KeyStroke e)
          Classes other than the Chatter itself may forward KeyEvents to the Chatter by using this method
static void main(java.lang.String[] args)
           
 void send(java.lang.String msg)
          Displays the message, Also logs and sends to the server a Command that displays this message
 void setFont(java.awt.Font f)
          Set the Font used by the text area
 void setHandle(java.lang.String s)
           
 void show(java.lang.String s)
          Display a message in the text area
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setForeground, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setLayout, 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, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, 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

conversation

protected javax.swing.JTextArea conversation

input

protected javax.swing.JTextField input

scroll

protected javax.swing.JScrollPane scroll

MY_CHAT_COLOR

protected static final java.lang.String MY_CHAT_COLOR
See Also:
Constant Field Values

OTHER_CHAT_COLOR

protected static final java.lang.String OTHER_CHAT_COLOR
See Also:
Constant Field Values

GAME_MSG_COLOR

protected static final java.lang.String GAME_MSG_COLOR
See Also:
Constant Field Values

SYS_MSG_COLOR

protected static final java.lang.String SYS_MSG_COLOR
See Also:
Constant Field Values
Constructor Detail

Chatter

public Chatter()
Method Detail

show

public void show(java.lang.String s)
Display a message in the text area


setHandle

public void setHandle(java.lang.String s)

getHandle

public java.lang.String getHandle()

handle

protected java.lang.String handle()

setFont

public void setFont(java.awt.Font f)
Set the Font used by the text area

Overrides:
setFont in class javax.swing.JComponent

build

public void build(org.w3c.dom.Element e)
Description copied from interface: Buildable
Build the object

Specified by:
build in interface Buildable
Parameters:
e - the XML element containing the object data

getBuildElement

public org.w3c.dom.Element getBuildElement(org.w3c.dom.Document doc)
Specified by:
getBuildElement in interface Buildable
Returns:
an XML element from which this component can be built

addTo

public void addTo(Buildable b)
Expects to be added to a GameModule. Adds itself to the controls window and registers itself as a CommandEncoder

Specified by:
addTo in interface Buildable

add

public void add(Buildable b)
Description copied from interface: Buildable
Adds a child component. Both this method and Buildable.addTo(VASSAL.build.Buildable) are invoked when adding a child to a parent

Specified by:
add in interface Buildable

decode

public Command decode(java.lang.String s)
Description copied from interface: CommandEncoder
Translate a String into a Command

Specified by:
decode in interface CommandEncoder

encode

public java.lang.String encode(Command c)
Description copied from interface: CommandEncoder
Translate a Command into a String

Specified by:
encode in interface CommandEncoder

send

public void send(java.lang.String msg)
Displays the message, Also logs and sends to the server a Command that displays this message


keyCommand

public void keyCommand(javax.swing.KeyStroke e)
Classes other than the Chatter itself may forward KeyEvents to the Chatter by using this method


getColor

protected java.awt.Color getColor(javax.swing.text.Element elem)
Determines the color with which to draw a given line of text

Returns:
the Color to draw

main

public static void main(java.lang.String[] args)