org.peace_tools.views
Class DBClassifierEditor

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Dialog
                  extended by javax.swing.JDialog
                      extended by org.peace_tools.views.DBClassifierEditor
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.event.CellEditorListener, javax.swing.event.ListSelectionListener, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public class DBClassifierEditor
extends javax.swing.JDialog
implements java.awt.event.ActionListener, javax.swing.event.ListSelectionListener, javax.swing.event.CellEditorListener

This class provides a comprehensive editor for modifying the DBClassifierEditor.

See Also:
Serialized Form

Nested Class Summary
private  class DBClassifierEditor.ColorEditor
          Custom cell editor to display color chooser dialog to change colors.
private  class DBClassifierEditor.ColorRenderer
          A simple renderer that uses a JLabel to render the color for a DB classifier.
 
Nested classes/interfaces inherited from class javax.swing.JDialog
javax.swing.JDialog.AccessibleJDialog
 
Nested classes/interfaces inherited from class java.awt.Dialog
java.awt.Dialog.AccessibleAWTDialog, java.awt.Dialog.ModalExclusionType, java.awt.Dialog.ModalityType
 
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
private  java.lang.String CANCEL_MSG
          A conventional message to be displayed to the user prior to canceling out of this dialog.
private  java.lang.String CHECK_MSG
          A String.format() style message to be displayed to the user while prompting to enter data string for validating a given regular expression.
private  java.lang.String CHECK_RESULT_MSG
          A String.format() style message to be displayed to the user after validating a regular expression against a data string entered by the user.
private  DBClassifierEditor.ColorEditor ColorColumnEditor
          An instance of the color renderer that is used to render the third column in the table with a suitable colored label.
private  DBClassifierEditor.ColorRenderer ColorColumnRenderer
          An instance of the color renderer that is used to render the third column in the table with a suitable colored label.
private  MainFrame mainFrame
          Convenient reference to the main frame class that contains this dialog box.
private  java.lang.String REG_EX_ERR_MSG
          A simple error message to be displayed to the user whenever a invalid regular expression is entered.
private static long serialVersionUID
          Generated serialization UID to keep compiler happy.
private  javax.swing.JTable table
          The JTable with the list of DB classifiers that are being currently edited by the user.
private  javax.swing.table.DefaultTableModel tableData
          This instance variable contains the mutable data model that contains the actual classifier data displayed in the table.
private  javax.swing.JToolBar toolbar
          The tool bar that contains the various buttons/tools with with the classifier list can be edited and modified.
 
Fields inherited from class javax.swing.JDialog
accessibleContext, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Dialog
DEFAULT_MODALITY_TYPE
 
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, EXIT_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
protected DBClassifierEditor(MainFrame parent)
          The constructor.
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent e)
           
private  void applyClassifiers(boolean closeDialog)
          Helper method to validate regular expressions and apply them to the work space.
private  void checkAndClose()
          Helper method to check and close the dialog.
private  void createTable()
          Helper method to configure and setup various columns in the DB classifier list table.
private  void createTools()
          Helper method to configure and setup various tools in the tool bar.
 void editingCanceled(javax.swing.event.ChangeEvent event)
           
 void editingStopped(javax.swing.event.ChangeEvent event)
           
private  void setTableData()
          Helper method to copy data from workspace into table model.
private  void testRegExp()
          Method to check the working status of a DB classifier.
 void valueChanged(javax.swing.event.ListSelectionEvent event)
          Method intercepts table row selection notifications to enable/disable tool bar buttons.
 
Methods inherited from class javax.swing.JDialog
addImpl, createRootPane, dialogInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
 
Methods inherited from class java.awt.Dialog
addNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setModal, setModalityType, setResizable, setTitle, setUndecorated, setVisible, show, toBack
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeNotify, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, 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, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, 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, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

ColorColumnRenderer

private DBClassifierEditor.ColorRenderer ColorColumnRenderer
An instance of the color renderer that is used to render the third column in the table with a suitable colored label.


ColorColumnEditor

private DBClassifierEditor.ColorEditor ColorColumnEditor
An instance of the color renderer that is used to render the third column in the table with a suitable colored label.


table

private javax.swing.JTable table
The JTable with the list of DB classifiers that are being currently edited by the user.


tableData

private javax.swing.table.DefaultTableModel tableData
This instance variable contains the mutable data model that contains the actual classifier data displayed in the table.


toolbar

private final javax.swing.JToolBar toolbar
The tool bar that contains the various buttons/tools with with the classifier list can be edited and modified.


mainFrame

private final MainFrame mainFrame
Convenient reference to the main frame class that contains this dialog box. This value is set in the constructor and is never changed. The main frame reference is primarily used to handle help requests.


REG_EX_ERR_MSG

private java.lang.String REG_EX_ERR_MSG
A simple error message to be displayed to the user whenever a invalid regular expression is entered.


CANCEL_MSG

private java.lang.String CANCEL_MSG
A conventional message to be displayed to the user prior to canceling out of this dialog.


CHECK_MSG

private java.lang.String CHECK_MSG
A String.format() style message to be displayed to the user while prompting to enter data string for validating a given regular expression. The actual regular expression is substituted by the testRegExp() method.


CHECK_RESULT_MSG

private java.lang.String CHECK_RESULT_MSG
A String.format() style message to be displayed to the user after validating a regular expression against a data string entered by the user. The actual regular expression and data string is substituted by the testRegExp() method.


serialVersionUID

private static final long serialVersionUID
Generated serialization UID to keep compiler happy.

See Also:
Constant Field Values
Constructor Detail

DBClassifierEditor

protected DBClassifierEditor(MainFrame parent)
The constructor. The constructor initializes the base class and then creates the various controls for editing the current list of database classifiers associated with this work space.

Parameters:
parent - The parent window to which this editor dialog logically belongs.
Method Detail

createTools

private void createTools()
Helper method to configure and setup various tools in the tool bar. This method was introduced to streamline the code better and cut down the code clutter in the constructor.


createTable

private void createTable()
Helper method to configure and setup various columns in the DB classifier list table. This method was introduced to streamline the code better and cut down the code clutter in the constructor.


setTableData

private void setTableData()
Helper method to copy data from workspace into table model. This is a helper method that is used to copy the data from the in-memory work space data structures into the table model to be displayed in the JTable.


actionPerformed

public void actionPerformed(java.awt.event.ActionEvent e)
Specified by:
actionPerformed in interface java.awt.event.ActionListener

testRegExp

private void testRegExp()
Method to check the working status of a DB classifier. This method is invoked whenever the user clicks on the tool bar button to validate a classifier entry. This method first prompts the user to enter the data string to be matched with the regular expression. It then attempts to match the data string and provides the result back to the user.


checkAndClose

private void checkAndClose()
Helper method to check and close the dialog. This method is a helper method that is called from a couple of different places to cross check with the user before abandoning edits and exiting.


applyClassifiers

private void applyClassifiers(boolean closeDialog)
Helper method to validate regular expressions and apply them to the work space.

Parameters:
closeDialog - If this flag is true, then this method also hides and disposes the dialog.

valueChanged

public void valueChanged(javax.swing.event.ListSelectionEvent event)
Method intercepts table row selection notifications to enable/disable tool bar buttons.

Specified by:
valueChanged in interface javax.swing.event.ListSelectionListener

editingCanceled

public void editingCanceled(javax.swing.event.ChangeEvent event)
Specified by:
editingCanceled in interface javax.swing.event.CellEditorListener

editingStopped

public void editingStopped(javax.swing.event.ChangeEvent event)
Specified by:
editingStopped in interface javax.swing.event.CellEditorListener