Class PTCControls

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--javax.swing.JComponent
                    |
                    +--javax.swing.JPanel
                          |
                          +--PTCControls
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 PTCControls
extends javax.swing.JPanel
implements java.awt.event.ActionListener

This class is the main controller in the package. It handles users input, button clicks, and displays intermediate results.

See Also:
Serialized Form

Field Summary
 
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
PTCControls()
          Constructs the GUI components for the PTC package.
 
Method Summary
 void acceptButtonHandler()
          Defines how to handle the action of the Ok button in Seeting window clicking event.
 void actionPerformed(java.awt.event.ActionEvent e)
          Defines how to handle the actions of the button clicking events.
 boolean checkInput()
          Checks the input.
 javax.swing.JButton constructButton(java.lang.String name)
          Constructs the button.
 javax.swing.JPanel constructLeftPanel()
          Constructs the left Panel.
 javax.swing.JPanel constructRightPanel()
          Constructs the right Panel.
 void generateRandomCharacters(InputCharacterModel model)
          Genertaes a random input for the character based algorithms.
 void generateRandomDistance(InputDistanceModel model)
          Genertaes a random input for the distance based algorithms.
 javax.swing.JTextArea getInfoArea()
          Gets the object to display instructions.
 MyJTable getInputTable()
          Gets the object to display input table.
 MyJTable getInterTable()
          Gets the object to display intermediate result table.
 TreeDisplay getTreeDisplay()
          Gets the object to draw the tree.
 void initializeOTUNames(int begin_index)
          Initializes the names of the species.
 void okButtonHandler()
          Defines how to handle the action of the OK button clicking event.
 void randomButtonHandler()
          Defines how to handle the action of the Random button clicking event.
 void reset()
          Resets the data and the GUI components.
 void resetButtonHandler()
          Defines how to handle the action of the Reset button clicking event.
 void runButtonHandler()
          Defines how to handle the action of the Run button clicking event.
 void setAlgorithmType(int inAlgorithmType)
          Sets the algorithm type.
 void setFirst(boolean inFirst)
          Sets the status of the algorithm.
 void setPopUpQuestion(boolean inPopUpQues)
          Sets the Pop Up Question option.
 void setRatio(double ratio)
          Sets the ratio of the tree scaling factor.
 void setSaveInput(boolean inSaveInput)
          Sets the Save Input option.
 void setTableData(int count, int numOfSites, java.lang.String[] names, java.lang.Object[][] characters)
          Displays the data read from a file in the input area for the character based algorithms.
 void setTableData(int count, java.lang.String[] names, java.lang.Object[][] distance)
          Displays the data read from a file in the input area for the distance based algorithms.
 void settingButtonHandler()
          Defines how to handle the action of the Setting button clicking event.
 void traceButtonHandler()
          Defines how to handle the action of the Trace button clicking event.
 
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, setFont, 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
 

Constructor Detail

PTCControls

public PTCControls()
Constructs the GUI components for the PTC package.

Method Detail

initializeOTUNames

public void initializeOTUNames(int begin_index)
Initializes the names of the species.

Parameters:
begin_index - the begin index of the name of the species

constructLeftPanel

public javax.swing.JPanel constructLeftPanel()
Constructs the left Panel.

Returns:
the constructed left Panel

constructRightPanel

public javax.swing.JPanel constructRightPanel()
Constructs the right Panel.

Returns:
the constructed right Panel

constructButton

public javax.swing.JButton constructButton(java.lang.String name)
Constructs the button.

Parameters:
name - the name of the button
Returns:
the constructed button

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent e)
Defines how to handle the actions of the button clicking events.

Specified by:
actionPerformed in interface java.awt.event.ActionListener
Parameters:
e - - the ActionEvent object which is responsible for the actions

okButtonHandler

public void okButtonHandler()
Defines how to handle the action of the OK button clicking event.


settingButtonHandler

public void settingButtonHandler()
Defines how to handle the action of the Setting button clicking event.


randomButtonHandler

public void randomButtonHandler()
Defines how to handle the action of the Random button clicking event.


generateRandomDistance

public void generateRandomDistance(InputDistanceModel model)
Genertaes a random input for the distance based algorithms.


generateRandomCharacters

public void generateRandomCharacters(InputCharacterModel model)
Genertaes a random input for the character based algorithms.


resetButtonHandler

public void resetButtonHandler()
Defines how to handle the action of the Reset button clicking event.


traceButtonHandler

public void traceButtonHandler()
Defines how to handle the action of the Trace button clicking event.


runButtonHandler

public void runButtonHandler()
Defines how to handle the action of the Run button clicking event.


acceptButtonHandler

public void acceptButtonHandler()
Defines how to handle the action of the Ok button in Seeting window clicking event.


checkInput

public boolean checkInput()
Checks the input.

Returns:
true - the input is correct
false - the input has some errors

getInfoArea

public javax.swing.JTextArea getInfoArea()
Gets the object to display instructions.

Returns:
the object to display instructions

getInputTable

public MyJTable getInputTable()
Gets the object to display input table.

Returns:
the object to display input table

getInterTable

public MyJTable getInterTable()
Gets the object to display intermediate result table.

Returns:
the object to display intermediate result table

getTreeDisplay

public TreeDisplay getTreeDisplay()
Gets the object to draw the tree.

Returns:
the object to draw the tree

setFirst

public void setFirst(boolean inFirst)
Sets the status of the algorithm.

Parameters:
inFirst - the value indicating if it is the first run of the algorithm

setAlgorithmType

public void setAlgorithmType(int inAlgorithmType)
Sets the algorithm type.

Parameters:
inAlgorithmType - the type of the algorithm

setTableData

public void setTableData(int count,
                         java.lang.String[] names,
                         java.lang.Object[][] distance)
Displays the data read from a file in the input area for the distance based algorithms.

Parameters:
count - the number of species
names - the names of the species
distance - the distance matrix

setTableData

public void setTableData(int count,
                         int numOfSites,
                         java.lang.String[] names,
                         java.lang.Object[][] characters)
Displays the data read from a file in the input area for the character based algorithms.

Parameters:
count - the number of species
numOfSites - the number of sites in the sequence
names - the names of the species
characters - the character sequence

setSaveInput

public void setSaveInput(boolean inSaveInput)
Sets the Save Input option.

Parameters:
inSaveInput - the value indicating whether the Save Input option is enabled

setPopUpQuestion

public void setPopUpQuestion(boolean inPopUpQues)
Sets the Pop Up Question option.

Parameters:
inPopUpQues - the value indicating whether the Pop Up Question option is enabled

setRatio

public void setRatio(double ratio)
Sets the ratio of the tree scaling factor.

Parameters:
ratio - the value of the ratio

reset

public void reset()
Resets the data and the GUI components.