JSettlers v1.0.6 API
Built ${date}

soc.client
Class SOCPlayerInterface

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjava.awt.Window
              extended byjava.awt.Frame
                  extended bysoc.client.SOCPlayerInterface
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.event.ActionListener, java.util.EventListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable

public class SOCPlayerInterface
extends java.awt.Frame
implements java.awt.event.ActionListener

Interface for a player of Settlers of Catan

Author:
Robert S. Thomas
See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
Nested classes inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
Nested classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected  SOCBoardPanel boardPanel
          the board display
protected  SOCBuildingPanel buildingPanel
          interface for building pieces
protected  SnippingTextArea chatDisplay
          where chat text is displayed
protected  soc.client.SOCChoosePlayerDialog choosePlayerDialog
          the dialog for choosing a player from which to steal
protected  SOCPlayerClient client
          the client that spawned us
protected  soc.client.SOCDiscardDialog discardDialog
          the dialog for getting what resources the player wants to discard
protected  soc.client.SOCDiscoveryDialog discoveryDialog
          the dialog for choosing 2 resources to discover
protected  SOCGame game
          the game associated with this interface
protected  SOCHandPanel[] hands
          the display for the players' hands
protected  soc.client.SOCMonopolyDialog monopolyDialog
          the dialog for choosing a resource to monopolize
protected  int ncols
          number of columns in the text output area
protected  int npix
          width of text output area in pixels
protected  java.awt.Color[] playerColors
          the player colors
protected  SnippingTextArea textDisplay
          where text is displayed
protected  java.awt.TextField textInput
          where the player types in text
 
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
 
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
SOCPlayerInterface(java.lang.String title, SOCPlayerClient cl, SOCGame ga)
          create a new player interface
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent e)
          send the message that was just typed in
 void addPlayer(java.lang.String n, int pn)
          a player has sat down to play
 void began()
          start
 void changeFace(int pn, int id)
          set the face icon for a player
 void chatPrint(java.lang.String s)
          print text in the chat window
 void choosePlayer(int count, int[] pnums)
          show the choose player dialog box
 void doLayout()
          do the layout
 SOCBoardPanel getBoardPanel()
           
 SOCBuildingPanel getBuildingPanel()
           
 SOCPlayerClient getClient()
           
 SOCGame getGame()
           
 java.awt.Color getPlayerColor(int pn)
           
 SOCHandPanel getPlayerHandPanel(int pn)
           
protected  void initInterfaceElements()
          Setup the interface elements
 void leaveGame()
          leave this game
 void over(java.lang.String s)
          an error occured, stop editing
 void print(java.lang.String s)
          print text in the text window
 void removePlayer(int pn)
          remove a player from the game
 void showDiscardDialog(int nd)
          show the discard dialog
 void showDiscoveryDialog()
          show the Discovery dialog box
 void showMonopolyDialog()
          show the Monopoly dialog box
 void startGame()
          remove the start buttons
 void update(java.awt.Graphics g)
          Overriden so the peer isn't painted, which clears background.
 
Methods inherited from class java.awt.Frame
addNotify, finalize, getAccessibleContext, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, paramString, remove, removeNotify, setCursor, setExtendedState, setIconImage, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, hide, isActive, isFocusableWindow, isFocusCycleRoot, isFocused, isShowing, pack, postEvent, processEvent, processWindowEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationRelativeTo, show, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, remove, removeAll, removeContainerListener, setFocusTraversalKeys, setFocusTraversalPolicy, setFont, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isOpaque, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Field Detail

boardPanel

protected SOCBoardPanel boardPanel
the board display


textInput

protected java.awt.TextField textInput
where the player types in text


textDisplay

protected SnippingTextArea textDisplay
where text is displayed


chatDisplay

protected SnippingTextArea chatDisplay
where chat text is displayed


buildingPanel

protected SOCBuildingPanel buildingPanel
interface for building pieces


hands

protected SOCHandPanel[] hands
the display for the players' hands


playerColors

protected java.awt.Color[] playerColors
the player colors


client

protected SOCPlayerClient client
the client that spawned us


game

protected SOCGame game
the game associated with this interface


ncols

protected int ncols
number of columns in the text output area


npix

protected int npix
width of text output area in pixels


discardDialog

protected soc.client.SOCDiscardDialog discardDialog
the dialog for getting what resources the player wants to discard


choosePlayerDialog

protected soc.client.SOCChoosePlayerDialog choosePlayerDialog
the dialog for choosing a player from which to steal


discoveryDialog

protected soc.client.SOCDiscoveryDialog discoveryDialog
the dialog for choosing 2 resources to discover


monopolyDialog

protected soc.client.SOCMonopolyDialog monopolyDialog
the dialog for choosing a resource to monopolize

Constructor Detail

SOCPlayerInterface

public SOCPlayerInterface(java.lang.String title,
                          SOCPlayerClient cl,
                          SOCGame ga)
create a new player interface

Parameters:
title - title for this interface
cl - the player client that spawned us
ga - the game associated with this interface
Method Detail

initInterfaceElements

protected void initInterfaceElements()
Setup the interface elements


update

public void update(java.awt.Graphics g)
Overriden so the peer isn't painted, which clears background. Don't call this directly, use Component.repaint() instead.


getClient

public SOCPlayerClient getClient()
Returns:
the client that spawned us

getGame

public SOCGame getGame()
Returns:
the game associated with this interface

getPlayerColor

public java.awt.Color getPlayerColor(int pn)
Parameters:
pn - the player number
Returns:
the color of a player

getPlayerHandPanel

public SOCHandPanel getPlayerHandPanel(int pn)
Parameters:
pn - the player's seat number
Returns:
a player's hand panel

getBoardPanel

public SOCBoardPanel getBoardPanel()
Returns:
the board panel

getBuildingPanel

public SOCBuildingPanel getBuildingPanel()
Returns:
the building panel

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent e)
send the message that was just typed in

Specified by:
actionPerformed in interface java.awt.event.ActionListener

leaveGame

public void leaveGame()
leave this game


print

public void print(java.lang.String s)
print text in the text window

Parameters:
s - the text

chatPrint

public void chatPrint(java.lang.String s)
print text in the chat window

Parameters:
s - the text

over

public void over(java.lang.String s)
an error occured, stop editing

Parameters:
s - an error message

began

public void began()
start


addPlayer

public void addPlayer(java.lang.String n,
                      int pn)
a player has sat down to play

Parameters:
n - the name of the player
pn - the seat number of the player

removePlayer

public void removePlayer(int pn)
remove a player from the game

Parameters:
pn - the number of the player

startGame

public void startGame()
remove the start buttons


showDiscardDialog

public void showDiscardDialog(int nd)
show the discard dialog

Parameters:
nd - the number of discards

choosePlayer

public void choosePlayer(int count,
                         int[] pnums)
show the choose player dialog box

Parameters:
count - the number of players to choose from
pnums - the player ids of those players

showDiscoveryDialog

public void showDiscoveryDialog()
show the Discovery dialog box


showMonopolyDialog

public void showMonopolyDialog()
show the Monopoly dialog box


changeFace

public void changeFace(int pn,
                       int id)
set the face icon for a player

Parameters:
pn - the number of the player
id - the id of the face image

doLayout

public void doLayout()
do the layout


JSettlers v1.0.6 API
Built ${date}