ucot.ui.gui
Class GraphicalUI

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Frame
                  extended by javax.swing.JFrame
                      extended by ucot.ui.gui.GraphicalUI
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants, UIInterface

public class GraphicalUI
extends javax.swing.JFrame
implements UIInterface

Author:
tujupien
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
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.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
private  AddToModelWithDialog addToModelWithDialog
           
private  AnalyzeModelTree analyzeModelTree
           
protected static java.lang.String CLEAR_MODEL_MENU_ACTION
           
protected static java.lang.String CLEAR_MODEL_MENU_CAPTION
           
protected static java.lang.String CLEAR_MODEL_QUESTION
           
protected static java.lang.String CLEAR_MODEL_QUESTION_HEADER
           
private  ControlInterface core
           
protected static java.lang.String DEFAULT_ERROR_HEADER
           
protected static java.lang.String DEFAULT_QUESTION_HEADER
           
private  DotPanel dotPanel
           
private  javax.swing.JScrollPane dotScrollPane
           
private  EntityPropertiesDialog entityPropertiesDialog
           
protected static java.lang.String EXPORT_AS_IMAGE_MENU_ACTION
           
protected static java.lang.String EXPORT_AS_IMAGE_MENU_CAPTION
           
protected static java.lang.String FILE_MENU_CAPTION
           
protected static java.lang.String LOG_ANALYZE_MODEL_LOADED
           
protected static java.lang.String LOG_CLEAR_MODEL_TRIGGERED
           
protected static java.lang.String LOG_EXPORT_AS_IMAGE_TRIGGERED
           
protected static java.lang.String LOG_EXPORT_DONE_MESSAGE
           
protected static java.lang.String LOG_FILE_LOAD_TRIGGERED
           
protected static java.lang.String LOG_PREFIX
           
protected static java.lang.String LOG_QUIT_PROGRAM
           
protected static java.lang.String LOG_QUIT_PROGRAM_TRIGGERED
           
protected static java.lang.String LOG_SETTINGS_TRIGGERED
           
protected static java.lang.String LOG_USE_CASE_LOADING_EXCEPTION
           
protected static java.lang.String LOG_USE_CASES_ADDED
           
protected static java.lang.String LOG_USE_CASES_LOADED
           
private  java.awt.event.ActionListener menuListener
           
private  javax.swing.JScrollPane modelTreeScrollPane
           
protected static java.lang.String OPEN_FILE_MENU_ACTION
           
protected static java.lang.String PROGRAM_MENU_CAPTION
           
protected static java.lang.String PROGRAM_TITLE
           
protected static java.lang.String QUIT_MENU_ACTION
           
protected static java.lang.String QUIT_MENU_CAPTION
           
protected static java.lang.String SETTINGS_MENU_ACTION
           
protected static java.lang.String SETTINGS_MENU_CAPTION
           
private  SettingsDialog settingsDialog
           
private  UseCasePanelInterface useCasePanel
           
private  javax.swing.JScrollPane useCasePanelScrollPane
           
private  UseCaseTree useCaseTree
           
private  javax.swing.JScrollPane useCaseTreeScrollPane
           
 
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, 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 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
GraphicalUI(ControlInterface controlInterface)
          Constuctor for Graphical UI.
 
Method Summary
 void analyzeModelLoaded()
          Core signals user interface that analyzemodel has been loaded
private  java.net.URL chooseFile()
          Method for spawning a file chooser dialog.
private  javax.swing.JMenuBar createMenu()
          Method for creating a menu bar to the GUI.
private  void createMenuListener()
          This method creates and initializes the menu listener for the program menu bar.
 void exportDone()
          Core signals user interface that analyze model has been exported
 void printError(java.lang.String errorMessage)
           
 void printError(java.lang.String errorMessage, java.lang.String errorTitle)
          Prints error message to the user.
 java.lang.Object questionDialog(java.lang.String question)
           
 java.lang.Object questionDialog(java.lang.String header, java.lang.String question)
           
 java.lang.Object questionDialog(java.lang.String header, java.lang.String question, int options)
          Shows user a dialog asking a question
 void setControlInterface(ControlInterface a)
          Set control interface
 void useCaseAdded()
          Core signals user interface that usecases have been parsed, ran heuristic on and been added to given analyze model
 void useCasesLoaded()
          Core signals user interface that usecases have been loaded from file
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update
 
Methods inherited from class java.awt.Frame
addNotify, finalize, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, 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, isAlwaysOnTop, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setAlwaysOnTop, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationByPlatform, setLocationRelativeTo, show, toBack, 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, 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, firePropertyChange, firePropertyChange, firePropertyChange, 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, 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, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, 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

core

private ControlInterface core

menuListener

private java.awt.event.ActionListener menuListener

analyzeModelTree

private AnalyzeModelTree analyzeModelTree

modelTreeScrollPane

private javax.swing.JScrollPane modelTreeScrollPane

useCaseTree

private UseCaseTree useCaseTree

useCaseTreeScrollPane

private javax.swing.JScrollPane useCaseTreeScrollPane

dotPanel

private DotPanel dotPanel

dotScrollPane

private javax.swing.JScrollPane dotScrollPane

useCasePanel

private UseCasePanelInterface useCasePanel

useCasePanelScrollPane

private javax.swing.JScrollPane useCasePanelScrollPane

entityPropertiesDialog

private EntityPropertiesDialog entityPropertiesDialog

addToModelWithDialog

private AddToModelWithDialog addToModelWithDialog

settingsDialog

private SettingsDialog settingsDialog

PROGRAM_TITLE

protected static java.lang.String PROGRAM_TITLE

DEFAULT_ERROR_HEADER

protected static java.lang.String DEFAULT_ERROR_HEADER

DEFAULT_QUESTION_HEADER

protected static java.lang.String DEFAULT_QUESTION_HEADER

CLEAR_MODEL_QUESTION_HEADER

protected static java.lang.String CLEAR_MODEL_QUESTION_HEADER

CLEAR_MODEL_QUESTION

protected static java.lang.String CLEAR_MODEL_QUESTION

LOG_PREFIX

protected static java.lang.String LOG_PREFIX

LOG_FILE_LOAD_TRIGGERED

protected static java.lang.String LOG_FILE_LOAD_TRIGGERED

LOG_QUIT_PROGRAM_TRIGGERED

protected static java.lang.String LOG_QUIT_PROGRAM_TRIGGERED

LOG_QUIT_PROGRAM

protected static java.lang.String LOG_QUIT_PROGRAM

LOG_CLEAR_MODEL_TRIGGERED

protected static java.lang.String LOG_CLEAR_MODEL_TRIGGERED

LOG_SETTINGS_TRIGGERED

protected static java.lang.String LOG_SETTINGS_TRIGGERED

LOG_EXPORT_AS_IMAGE_TRIGGERED

protected static java.lang.String LOG_EXPORT_AS_IMAGE_TRIGGERED

LOG_EXPORT_DONE_MESSAGE

protected static java.lang.String LOG_EXPORT_DONE_MESSAGE

LOG_ANALYZE_MODEL_LOADED

protected static java.lang.String LOG_ANALYZE_MODEL_LOADED

LOG_USE_CASES_LOADED

protected static java.lang.String LOG_USE_CASES_LOADED

LOG_USE_CASE_LOADING_EXCEPTION

protected static java.lang.String LOG_USE_CASE_LOADING_EXCEPTION

LOG_USE_CASES_ADDED

protected static java.lang.String LOG_USE_CASES_ADDED

FILE_MENU_CAPTION

protected static java.lang.String FILE_MENU_CAPTION

EXPORT_AS_IMAGE_MENU_CAPTION

protected static java.lang.String EXPORT_AS_IMAGE_MENU_CAPTION

CLEAR_MODEL_MENU_CAPTION

protected static java.lang.String CLEAR_MODEL_MENU_CAPTION

QUIT_MENU_CAPTION

protected static java.lang.String QUIT_MENU_CAPTION

PROGRAM_MENU_CAPTION

protected static java.lang.String PROGRAM_MENU_CAPTION

SETTINGS_MENU_CAPTION

protected static java.lang.String SETTINGS_MENU_CAPTION

OPEN_FILE_MENU_ACTION

protected static java.lang.String OPEN_FILE_MENU_ACTION

QUIT_MENU_ACTION

protected static java.lang.String QUIT_MENU_ACTION

CLEAR_MODEL_MENU_ACTION

protected static java.lang.String CLEAR_MODEL_MENU_ACTION

EXPORT_AS_IMAGE_MENU_ACTION

protected static java.lang.String EXPORT_AS_IMAGE_MENU_ACTION

SETTINGS_MENU_ACTION

protected static java.lang.String SETTINGS_MENU_ACTION
Constructor Detail

GraphicalUI

public GraphicalUI(ControlInterface controlInterface)
Constuctor for Graphical UI. This constructor sets up the whole user interface and spawns it to the screen.

Method Detail

createMenuListener

private void createMenuListener()
This method creates and initializes the menu listener for the program menu bar.


printError

public void printError(java.lang.String errorMessage,
                       java.lang.String errorTitle)
Description copied from interface: UIInterface
Prints error message to the user.

Specified by:
printError in interface UIInterface
Parameters:
errorMessage - Description of the error.
errorTitle - title of the dialog

printError

public void printError(java.lang.String errorMessage)
Specified by:
printError in interface UIInterface

questionDialog

public java.lang.Object questionDialog(java.lang.String header,
                                       java.lang.String question,
                                       int options)
Description copied from interface: UIInterface
Shows user a dialog asking a question

Specified by:
questionDialog in interface UIInterface
Parameters:
header - title of the question dialog
question - question to ask
options - options for the dialog
Returns:
User's choice (e.g. button)

questionDialog

public java.lang.Object questionDialog(java.lang.String question)
Specified by:
questionDialog in interface UIInterface

questionDialog

public java.lang.Object questionDialog(java.lang.String header,
                                       java.lang.String question)
Specified by:
questionDialog in interface UIInterface

createMenu

private javax.swing.JMenuBar createMenu()
Method for creating a menu bar to the GUI.

Returns:
Program menu bar as a JMenuBar object.

chooseFile

private java.net.URL chooseFile()
Method for spawning a file chooser dialog.

Returns:
The selected file as a string or null if no file was selected.

exportDone

public void exportDone()
Description copied from interface: UIInterface
Core signals user interface that analyze model has been exported

Specified by:
exportDone in interface UIInterface

analyzeModelLoaded

public void analyzeModelLoaded()
Description copied from interface: UIInterface
Core signals user interface that analyzemodel has been loaded

Specified by:
analyzeModelLoaded in interface UIInterface

useCasesLoaded

public void useCasesLoaded()
Description copied from interface: UIInterface
Core signals user interface that usecases have been loaded from file

Specified by:
useCasesLoaded in interface UIInterface

useCaseAdded

public void useCaseAdded()
Description copied from interface: UIInterface
Core signals user interface that usecases have been parsed, ran heuristic on and been added to given analyze model

Specified by:
useCaseAdded in interface UIInterface

setControlInterface

public void setControlInterface(ControlInterface a)
Description copied from interface: UIInterface
Set control interface

Specified by:
setControlInterface in interface UIInterface
Parameters:
a - control interface (UCOT core)