ukacgla_KMap
Class KMap_Frame

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--java.awt.Window
                    |
                    +--java.awt.Frame
                          |
                          +--javax.swing.JFrame
                                |
                                +--ukacgla_KMap.KMap_Frame
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.image.ImageObserver, java.awt.MenuContainer, javax.swing.RootPaneContainer, java.io.Serializable, javax.swing.WindowConstants
Direct Known Subclasses:
Ex02_Frame, Ex05_Frame, Ex06_Frame

public abstract class KMap_Frame
extends javax.swing.JFrame

Frame holds the GUI components of the exercise.

See Also:
Serialized Form

Inner Class Summary
protected  class KMap_Frame.ButtonListener
           
protected  class KMap_Frame.checkBoxListener
           
protected  class KMap_Frame.MyTableModel
           
 
Inner classes inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
Inner classes inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
Inner classes inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
Inner classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Inner classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent
 
Field Summary
protected  java.util.Vector answers
          Vector holds all Minterm objects for display.
protected  javax.swing.border.Border border
           
protected  javax.swing.JPanel buttonPanel
           
protected  javax.swing.JCheckBox[] checkBox
           
protected  javax.swing.JPanel checkBoxPanel
           
protected  javax.swing.JButton clear
           
protected  java.lang.String[] columnNames
          Sets titles of columns.
protected  java.awt.Container contentPane
           
protected  java.lang.Object[][] data
          2D Object array to hold data in TableModel.
protected  javax.swing.JPanel host
           
protected  javax.swing.JPanel kMap
           
protected  javax.swing.JLabel lab1
           
protected  javax.swing.JPanel labelPanel
           
protected  KMap_Frame.checkBoxListener listener
           
protected  javax.swing.JPanel mid1
           
protected  javax.swing.JPanel mid2
           
protected  KMap_Frame.MyTableModel model
          Model of the TableModel.
protected  javax.swing.JButton nextMap
           
protected  int noOfCols
           
protected  int noOfOptions
          Number of options to be presented to user.
protected  int noOfRows
           
protected  javax.swing.JTextArea output
           
protected  javax.swing.JButton reveal
           
protected  javax.swing.JTable table
           
 
Fields inherited from class javax.swing.JFrame
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, 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 javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
KMap_Frame(javax.swing.JApplet m, int noOfRows, int noOfCols, java.lang.String[] c)
           
 
Method Summary
protected abstract  void buildAnswers()
          Builds the correct answers for the K Map
protected  void clearChkbox()
          Sets all boxes in GUI to de selected.
 void clearTxtArea()
          Sets output JTextArea to new blank String ( "" )
protected  javax.swing.JButton mkButton(java.lang.String nm, java.awt.Container c)
          Returns JButton of standard size 100 x 25.
protected abstract  javax.swing.JPanel mkButtonPanel()
          Returns an panel containing the JCheckBox buttons.
protected  void mkCheckBoxPanel()
          Adds the panel with the JCheckboxes to the contentPane.
protected  javax.swing.JCheckBox mkChkButton(java.awt.Container b, java.lang.String name, java.lang.String correct, boolean checked)
          Check boxes are given labels and action commands based on the Minterm object.
protected  javax.swing.JLabel mkLabel(java.lang.String nm, int style, int size)
          Returns JLabel using "arial" font.
protected abstract  javax.swing.JPanel mkTable()
          Builds the table to display the K Map, and the model to hold the data.
protected  javax.swing.JTextArea mkTextArea(int rows, int cols, boolean editable)
          Returns JTextArea of required size.
 void mkUI()
          Builds GUI and adds to applet content pane.
protected abstract  void newTable()
          Builds a new table model, calculates the answers, and redraws the panel on the screen
 void setTxtArea(java.lang.String s)
          Appends String argument to output JTextArea.
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isRootPaneCheckingEnabled, paramString, processKeyEvent, processWindowEvent, remove, setContentPane, setDefaultCloseOperation, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update
 
Methods inherited from class java.awt.Frame
addNotify, finalize, getCursorType, getFrames, getIconImage, getMenuBar, getState, getTitle, isResizable, remove, removeNotify, setCursor, setIconImage, setMenuBar, setResizable, setState, setTitle
 
Methods inherited from class java.awt.Window
addWindowListener, applyResourceBundle, applyResourceBundle, dispose, getFocusOwner, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getOwnedWindows, getOwner, getToolkit, getWarningString, hide, isShowing, pack, postEvent, processEvent, removeWindowListener, setCursor, show, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getInsets, getLayout, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setFont, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addPropertyChangeListener, addPropertyChangeListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentOrientation, getCursor, getDropTarget, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getInputMethodRequests, getLocation, getLocation, getLocationOnScreen, getName, getParent, getPeer, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isDisplayable, isDoubleBuffered, isEnabled, isFocusTraversable, 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, processMouseEvent, processMouseMotionEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setDropTarget, setEnabled, setForeground, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, size, toString, transferFocus
 
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

answers

protected java.util.Vector answers
Vector holds all Minterm objects for display.

border

protected javax.swing.border.Border border

buttonPanel

protected javax.swing.JPanel buttonPanel

checkBox

protected javax.swing.JCheckBox[] checkBox

checkBoxPanel

protected javax.swing.JPanel checkBoxPanel

clear

protected javax.swing.JButton clear

columnNames

protected java.lang.String[] columnNames
Sets titles of columns.

contentPane

protected java.awt.Container contentPane

data

protected java.lang.Object[][] data
2D Object array to hold data in TableModel.

host

protected javax.swing.JPanel host

kMap

protected javax.swing.JPanel kMap

lab1

protected javax.swing.JLabel lab1

labelPanel

protected javax.swing.JPanel labelPanel

listener

protected KMap_Frame.checkBoxListener listener

mid1

protected javax.swing.JPanel mid1

mid2

protected javax.swing.JPanel mid2

model

protected KMap_Frame.MyTableModel model
Model of the TableModel.

nextMap

protected javax.swing.JButton nextMap

noOfCols

protected int noOfCols

noOfOptions

protected int noOfOptions
Number of options to be presented to user.

noOfRows

protected int noOfRows

output

protected javax.swing.JTextArea output

reveal

protected javax.swing.JButton reveal

table

protected javax.swing.JTable table
Constructor Detail

KMap_Frame

public KMap_Frame(javax.swing.JApplet m,
                  int noOfRows,
                  int noOfCols,
                  java.lang.String[] c)
Method Detail

buildAnswers

protected abstract void buildAnswers()
Builds the correct answers for the K Map

clearChkbox

protected void clearChkbox()
Sets all boxes in GUI to de selected. Used for each new table.

clearTxtArea

public void clearTxtArea()
Sets output JTextArea to new blank String ( "" )

mkButton

protected javax.swing.JButton mkButton(java.lang.String nm,
                                       java.awt.Container c)
Returns JButton of standard size 100 x 25.

mkButtonPanel

protected abstract javax.swing.JPanel mkButtonPanel()
Returns an panel containing the JCheckBox buttons. The checkBox array is set using the contents of the answers vector

mkCheckBoxPanel

protected void mkCheckBoxPanel()
Adds the panel with the JCheckboxes to the contentPane. Called repeatedly when a new K Map is required.

mkChkButton

protected javax.swing.JCheckBox mkChkButton(java.awt.Container b,
                                            java.lang.String name,
                                            java.lang.String correct,
                                            boolean checked)
Check boxes are given labels and action commands based on the Minterm object.

mkLabel

protected javax.swing.JLabel mkLabel(java.lang.String nm,
                                     int style,
                                     int size)
Returns JLabel using "arial" font. User can specify Font style and size.

mkTable

protected abstract javax.swing.JPanel mkTable()
Builds the table to display the K Map, and the model to hold the data. After initial instantiation, the newTable() method should be called.

mkTextArea

protected javax.swing.JTextArea mkTextArea(int rows,
                                           int cols,
                                           boolean editable)
Returns JTextArea of required size. Programmer must specify if editable during instantiation.

mkUI

public void mkUI()
Builds GUI and adds to applet content pane. Sets Look and Feel to Windows L&F.

newTable

protected abstract void newTable()
Builds a new table model, calculates the answers, and redraws the panel on the screen

setTxtArea

public void setTxtArea(java.lang.String s)
Appends String argument to output JTextArea.