Package 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:
ImageObserver
,MenuContainer
,Serializable
,Accessible
,Buildable
,CommandEncoder
- Direct Known Subclasses:
PrivateChatter
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
Modifier and TypeClassDescriptionstatic class
This is aCommand
object that, when executed, displays a text message in the Chatter's text areaNested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
Field Summary
Modifier and TypeFieldDescriptionprotected JTextArea
protected JTextPane
protected HTMLDocument
protected static String
Deprecated, for removal: This API element is subject to removal in a future version.protected static String
protected static String
protected static String
protected static String
protected static String
protected Color
protected Color
protected Color
protected Color
protected Color
protected JTextField
protected HTMLEditorKit
protected static String
protected Color
protected Font
protected boolean
protected static String
protected Color
protected JScrollPane
protected JScrollPane
protected StyleSheet
protected static String
protected Color
Fields inherited from class javax.swing.JComponent
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
accessibleContext, 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
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Adds a child component.protected void
Adds or updates a CSS stylesheet entry.void
Expects to be added to a GameModule.void
Build the object from the XML representation of the Buildableboolean
consoleHook(String s, String style, boolean html_allowed)
A hook for inserting a console class that accepts commandsTranslate a String into aCommand
Translate aCommand
into a Stringprotected String
formatChat(String text)
static String
getBuildElement(Document doc)
protected String
getChatStyle(String s)
Styles a chat message based on the player who sent it.Deprecated, for removal: This API element is subject to removal in a future version.void
keyCommand(KeyStroke e)
Classes other than the Chatter itself may forward KeyEvents to the Chatter by using this methodstatic void
protected void
makeStyleSheet(Font f)
Build ourselves a CSS stylesheet from our preference font/color settings.void
Displays the message, Also logs and sends to the server aCommand
that displays this message.void
Checks first for an intercepted console command; otherwise displays the messageprotected void
setChatterVisible(boolean vis)
Because our Chatters make themselves visible in their constructor, providing a way for an overriding class to "turn this chatter off" is friendlier than What Went Before.void
Set the Font used by the text areavoid
Deprecated, for removal: This API element is subject to removal in a future version.No Replacementvoid
Display a message in the text area.static void
Warning message method -- same as send, but accepts messages from static methods.Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setForeground, setInheritsPopupMenu, 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, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, 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, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, 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, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Field Details
-
conversationPane
-
doc
-
kit
-
style
-
input
-
scroll
-
scroll2
-
MY_CHAT_COLOR
- See Also:
- Constant Field Values
-
OTHER_CHAT_COLOR
- See Also:
- Constant Field Values
-
GAME_MSG1_COLOR
- See Also:
- Constant Field Values
-
GAME_MSG2_COLOR
- See Also:
- Constant Field Values
-
GAME_MSG3_COLOR
- See Also:
- Constant Field Values
-
GAME_MSG4_COLOR
- See Also:
- Constant Field Values
-
GAME_MSG5_COLOR
- See Also:
- Constant Field Values
-
SYS_MSG_COLOR
- See Also:
- Constant Field Values
-
GAME_MSG_COLOR
Deprecated, for removal: This API element is subject to removal in a future version.- See Also:
- Constant Field Values
-
myFont
-
gameMsg
-
gameMsg2
-
gameMsg3
-
gameMsg4
-
gameMsg5
-
systemMsg
-
myChat
-
otherChat
-
needUpdate
protected boolean needUpdate -
conversation
-
-
Constructor Details
-
Chatter
public Chatter()
-
-
Method Details
-
getAnonymousUserName
-
setChatterVisible
protected void setChatterVisible(boolean vis)Because our Chatters make themselves visible in their constructor, providing a way for an overriding class to "turn this chatter off" is friendlier than What Went Before.- Parameters:
vis
- - whether this chatter should be visible
-
formatChat
-
getInputField
-
getChatStyle
Styles a chat message based on the player who sent it. Presently just distinguishes a chat message "from me" from a chat message "from anyone else". To make the player colors easy to override in a custom class (my modules have logic to assign individual player colors -- beyond the scope of the present effort but a perhaps a fun future addition)- Parameters:
s
- - chat message from a player- Returns:
- - an entry in our CSS style sheet to use for this chat message
-
consoleHook
A hook for inserting a console class that accepts commands- Parameters:
s
- - chat messagestyle
- - current style name (contains information that might be useful)html_allowed
- - flag if html_processing is enabled for this message (allows console to apply security considerations)- Returns:
- true - if was accepted as a console command
-
show
Display a message in the text area. Ensures we execute in the EDT -
addStyle
Adds or updates a CSS stylesheet entry. Styles in the color, font type, and font size.- Parameters:
s
- Style namef
- Font to usec
- Color for textfont_weight
- Bold? Italic?size
- Font size
-
makeStyleSheet
Build ourselves a CSS stylesheet from our preference font/color settings.- Parameters:
f
- - Font to use for this stylesheet
-
setFont
Set the Font used by the text area- Overrides:
setFont
in classJComponent
-
build
Description copied from interface:Buildable
Build the object from the XML representation of the Buildable -
getBuildElement
- Specified by:
getBuildElement
in interfaceBuildable
- Parameters:
doc
- XML file- Returns:
- an XML element from which this component can be built
-
addTo
Expects to be added to a GameModule. Adds itself to the controls window and registers itself as aCommandEncoder
-
add
Description copied from interface:Buildable
Adds a child component. Both this method andBuildable.addTo(VASSAL.build.Buildable)
are invoked when adding a child to a parent -
decode
Description copied from interface:CommandEncoder
Translate a String into aCommand
- Specified by:
decode
in interfaceCommandEncoder
-
encode
Description copied from interface:CommandEncoder
Translate aCommand
into a String- Specified by:
encode
in interfaceCommandEncoder
-
send
Displays the message, Also logs and sends to the server aCommand
that displays this message. -
send
Checks first for an intercepted console command; otherwise displays the message- Parameters:
msg
- message to display if not a console commandconsole
- potential console command (without any chat livery added to it)
-
warning
Warning message method -- same as send, but accepts messages from static methods. For reporting soft-fail problems in modules. -
keyCommand
Classes other than the Chatter itself may forward KeyEvents to the Chatter by using this method -
main
-
setHandle
Deprecated, for removal: This API element is subject to removal in a future version.No Replacement -
getHandle
Deprecated, for removal: This API element is subject to removal in a future version.
-
GlobalOptions.getPlayerId()