edu.neu.ccs.gui
Class BasePane

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended byjavax.swing.JPanel
                  extended byedu.neu.ccs.gui.DisplayPanel
                      extended byedu.neu.ccs.gui.BasePane
All Implemented Interfaces:
Accessible, AlertListener, Displayable, EventListener, ImageObserver, JPTConstants, MalformedDataListener, MenuContainer, Serializable, SwingConstants
Direct Known Subclasses:
ColorPane, ExpressionEvaluationPane, FunctionsPlotter, MultiColorView, SimpleFunctionPane, SliderView

public class BasePane
extends DisplayPanel

Class BasePane contains common font and size definitions for use in certain other JPT classes.

In 2.5.0, this class was designed as a base class that defined certain protected variables that could be used in a derived class. That usage is still possible. In addition, in 2.6.0, public “get” methods were added that allow a caller access the same definitions. Therefore, a designer need not used inheritance but may simply add items to this panel and use the definitions as desired.

Note that it is the responsibility of the caller to set fonts for fields, labels, and buttons. That cannot be done automatically.

In 2.5.0, the font size used for the fonts was computed by the formula:

The rationale for this formula was to start with a base font size (14) and then adjust that size by whatever font size adjustment was already defined via the class LookAndFeelTools. In this way, the usability features of LookAndFeelTools would be taken into account automatically.

In 2.6.0, the decision was made to permit the base font size to be supplied in a constructor and to make 12 rather than 14 be the default if no such size is supplied.

This class chooses font families using the methods in class Fonts.

Since:
2.5.0
Version:
2.6.0
See Also:
Fonts, Serialized Form

Nested Class Summary
 
Nested classes inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
 
Nested classes inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
protected  int baseFontSize
          The base font size which either defaults to 12 or is supplied in the constructor.
protected  Font buttonFont
          The button font uses the sans serif font with BOLD style in the common font size.
static int DEFAULT_BASE_FONT_SIZE
          The default value of the base font size.
protected  Font fieldFont
          The field font uses the monospaced font with BOLD style in the common font size.
protected  int fontSize
          The common font size for fields, labels, and buttons.
protected  int gap
          The recommend common gap for use in table panels.
protected  Font labelFont
          The label font uses the serif font with BOLD style in the common font size.
protected  int largeFieldWidth
          The large field width is 3 times the small field width.
protected  int mediumFieldWidth
          The medium field width is 2 times the small field width.
static int MINIMUM_FONT_SIZE
          The minimum value permitted for the common font size regardless of other settings.
protected  String monospacedFontName
          The monospaced font name from class Fonts.
protected  String sansserifFontName
          The sans serif font name from class Fonts.
protected  String serifFontName
          The serif font name from class Fonts.
protected  int smallFieldWidth
          The small field width is the width of 20 characters in the field font.
 
Fields inherited from class edu.neu.ccs.gui.DisplayPanel
background, codec, CODEC
 
Fields inherited from class javax.swing.JPanel
 
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.Container
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface edu.neu.ccs.gui.Displayable
DEFAULT_VIEW_STATE, VIEW_STATE
 
Fields inherited from interface edu.neu.ccs.util.JPTConstants
ABOVE, ALIGNMENT, BELOW, BOTTOM_LEFT, BOTTOM_RIGHT, DEFAULT, FONT, INPUT_PROPERTIES, MANDATORY, OPTIONAL, ORIENTATION, TOP_LEFT, TOP_RIGHT, VALUE
 
Fields inherited from interface javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
BasePane()
          The default constructor that assumes a base font size of 12.
BasePane(int baseFontSize)
          The constructor that permits the base font size to be supplied by the caller.
 
Method Summary
 Font getButtonFont()
          Returns the recommended button font.
 Font getFieldFont()
          Returns the recommended field font.
 int getFontSize()
          Returns the common font size.
 int getGap()
          Returns the recommended table panel gap.
 Font getLabelFont()
          Returns the recommended label font.
 int getLargeFieldWidth()
          Returns the recommended large field width.
 int getMediumFieldWidth()
          Returns the recommended medium field width.
 int getSmallFieldWidth()
          Returns the recommended small field width.
protected  void initializeBasePane()
          The common initialization code for both constructors.
 
Methods inherited from class edu.neu.ccs.gui.DisplayPanel
add, add, add, add, add, addBorder, addObject, addObject, addObject, addObject, bevelBorderLowered, bevelBorderLowered, bevelBorderLowered, bevelBorderLowered, bevelBorderLowered, bevelBorderRaised, bevelBorderRaised, bevelBorderRaised, bevelBorderRaised, bevelBorderRaised, compoundBorder, compoundBorder, dataMalformed, emptyBorder, emptyBorder, emptyBorder, endAlert, etchBorderLowered, etchBorderLowered, etchBorderLowered, etchBorderRaised, etchBorderRaised, etchBorderRaised, frame, frame, frame, frame, frame, frame, generalDialog, generalDialog, generalDialog, generalDialog, getCodec, getDefaultViewState, getDefaultViewStates, getDisplayables, getViewState, getViewStates, lineBorder, lineBorder, lineBorder, lineBorder, makeComponent, matteBorder, matteBorder, matteBorder, matteBorder, matteBorder, matteBorder, OKCancelDialog, OKCancelDialog, OKDialog, OKDialog, refreshComponent, remove, remove, removeAll, removeBorder, reset, sandwichBorder, setCodec, setDeepBackground, setDeepBackground, setDefaultViewState, setDefaultViewStates, setEnabled, setViewState, setViewStates, startAlert, titleBorder, titleBorder, titleBorder, titleBorder, titleBorder, titleBorder, titleBorder, titleBorder, uniformizeHeight, uniformizeSize, uniformizeWidth, YesNoCancelDialog, YesNoCancelDialog
 
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, setFont, setForeground, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
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, 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

DEFAULT_BASE_FONT_SIZE

public static final int DEFAULT_BASE_FONT_SIZE
The default value of the base font size.

See Also:
Constant Field Values

MINIMUM_FONT_SIZE

public static final int MINIMUM_FONT_SIZE
The minimum value permitted for the common font size regardless of other settings.

See Also:
Constant Field Values

monospacedFontName

protected String monospacedFontName
The monospaced font name from class Fonts.


serifFontName

protected String serifFontName
The serif font name from class Fonts.


sansserifFontName

protected String sansserifFontName
The sans serif font name from class Fonts.


baseFontSize

protected int baseFontSize
The base font size which either defaults to 12 or is supplied in the constructor.


fontSize

protected int fontSize

The common font size for fields, labels, and buttons.

This font size is computed as the base font size plus the net font size adjustment from LookAndFeelTools. The resulting font size will be forced to be at least as big as MINIMUM_FONT_SIZE.


fieldFont

protected Font fieldFont
The field font uses the monospaced font with BOLD style in the common font size.


labelFont

protected Font labelFont
The label font uses the serif font with BOLD style in the common font size.


buttonFont

protected Font buttonFont
The button font uses the sans serif font with BOLD style in the common font size.


smallFieldWidth

protected int smallFieldWidth
The small field width is the width of 20 characters in the field font.


mediumFieldWidth

protected int mediumFieldWidth
The medium field width is 2 times the small field width.


largeFieldWidth

protected int largeFieldWidth
The large field width is 3 times the small field width.


gap

protected int gap
The recommend common gap for use in table panels.

Constructor Detail

BasePane

public BasePane()

The default constructor that assumes a base font size of 12.


BasePane

public BasePane(int baseFontSize)

The constructor that permits the base font size to be supplied by the caller.

Parameters:
baseFontSize - the desired base font size
Method Detail

getFontSize

public int getFontSize()
Returns the common font size.


getFieldFont

public Font getFieldFont()
Returns the recommended field font.


getLabelFont

public Font getLabelFont()
Returns the recommended label font.


getButtonFont

public Font getButtonFont()
Returns the recommended button font.


getSmallFieldWidth

public int getSmallFieldWidth()
Returns the recommended small field width.


getMediumFieldWidth

public int getMediumFieldWidth()
Returns the recommended medium field width.


getLargeFieldWidth

public int getLargeFieldWidth()
Returns the recommended large field width.


getGap

public int getGap()
Returns the recommended table panel gap.


initializeBasePane

protected void initializeBasePane()

The common initialization code for both constructors.