templates.library
Class AddTemplateDialog

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 ides.api.utilities.EscapeDialog
                          extended by templates.library.AddTemplateDialog
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public class AddTemplateDialog
extends ides.api.utilities.EscapeDialog

The UI dialog for adding templates to the template library or for editing the properties of existing templates. It lets the user select the FSA model to be used as the base for the template, as well as the color, description, etc. of the template.

Author:
Lenko Grigorov
See Also:
addTemplate(TemplateLibrary), addTemplate(TemplateLibrary, FSAModel), editTemplate(TemplateLibrary, Template), Serialized Form

Nested Class Summary
protected static class AddTemplateDialog.ColorIcon
          Icon which displays a square with a selected background color.
 
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
protected static AddTemplateDialog.ColorIcon colorIcon
          The icon which displays the color selected for the template.
protected static java.awt.event.ActionListener commitAdd
          Listener for the user action committing the addition of a new template to the template library.
protected static javax.swing.JButton commitButton
          The "OK" button to commit the addition of the new template to the library or to commit the changes made to an existing template.
protected static java.awt.event.ActionListener commitEdit
          Listener for the user action committing the modifications of an existing template.
protected static javax.swing.JTextArea descArea
          The text area for the description of the template.
protected static TemplateLibrary library
          The template library where the new template has to be added or where the existing template is located.
protected static javax.swing.JComboBox modelsCombo
          The combo box listing the FSA models for the template.
protected static Template oldTemplate
          The existing template whose properties will be modified.
protected static javax.swing.JTextField tagField
          The text field where the user can enter the "ID" of the template.
 
Fields inherited from class ides.api.utilities.EscapeDialog
escapeListener
 
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
 
Method Summary
static void addTemplate(TemplateLibrary library)
          Display the dialog to enable the addition of a new template to the template library.
protected static void addTemplate(TemplateLibrary library, java.util.Collection<ides.api.model.fsa.FSAModel> models)
          Display the dialog to enable the addition of a new template to the template library.
static void addTemplate(TemplateLibrary library, ides.api.model.fsa.FSAModel model)
          Display the dialog to enable the addition of a new template to the template library.
 java.lang.Object clone()
           
protected static void editTemplate(TemplateLibrary library, Template template)
          Display the dialog to enable the modification of the properties of an existing template.
static AddTemplateDialog instance()
          Access the singleton instance of the dialog for adding/editing templates.
 void onEscapeEvent()
          Called to cancel the addition/editing of the template (e.g., when the user presses the Esc key).
 
Methods inherited from class ides.api.utilities.EscapeDialog
bindEscapeListener
 
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, 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, 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, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

modelsCombo

protected static javax.swing.JComboBox modelsCombo
The combo box listing the FSA models for the template.


colorIcon

protected static AddTemplateDialog.ColorIcon colorIcon
The icon which displays the color selected for the template.


tagField

protected static javax.swing.JTextField tagField
The text field where the user can enter the "ID" of the template.


descArea

protected static javax.swing.JTextArea descArea
The text area for the description of the template.


commitButton

protected static javax.swing.JButton commitButton
The "OK" button to commit the addition of the new template to the library or to commit the changes made to an existing template.


library

protected static TemplateLibrary library
The template library where the new template has to be added or where the existing template is located.


oldTemplate

protected static Template oldTemplate
The existing template whose properties will be modified.


commitAdd

protected static java.awt.event.ActionListener commitAdd
Listener for the user action committing the addition of a new template to the template library. This listener is attached to the "OK" button when the dialog is displayed to add a new template.


commitEdit

protected static java.awt.event.ActionListener commitEdit
Listener for the user action committing the modifications of an existing template. This listener is attached to the "OK" button when the dialog is displayed to edit an existing template.

Method Detail

instance

public static AddTemplateDialog instance()
Access the singleton instance of the dialog for adding/editing templates.

Returns:
the singleton instance of the dialog

clone

public java.lang.Object clone()
Overrides:
clone in class java.lang.Object
Throws:
java.lang.RuntimeException - cloning is not allowed

addTemplate

public static void addTemplate(TemplateLibrary library)
Display the dialog to enable the addition of a new template to the template library.

Parameters:
library - the template library where the template has to be added

addTemplate

public static void addTemplate(TemplateLibrary library,
                               ides.api.model.fsa.FSAModel model)
Display the dialog to enable the addition of a new template to the template library. The FSA model to serve as the basis for the new template is predefined.

Parameters:
library - the template library where the template has to be added
model - the FSA model to serve as the basis of the template

addTemplate

protected static void addTemplate(TemplateLibrary library,
                                  java.util.Collection<ides.api.model.fsa.FSAModel> models)
Display the dialog to enable the addition of a new template to the template library. The list of FSA models available to the user to select as the basis of the new template is predefined.

Parameters:
library - the template library where the template has to be added
models - the list of FSA models which can serve as the basis of the template

editTemplate

protected static void editTemplate(TemplateLibrary library,
                                   Template template)
Display the dialog to enable the modification of the properties of an existing template. The dialog is updated to reflect the current properties of the template.

Parameters:
library - the template library which contains the template which will be edited
template - the template which will be edited

onEscapeEvent

public void onEscapeEvent()
Called to cancel the addition/editing of the template (e.g., when the user presses the Esc key).

Overrides:
onEscapeEvent in class ides.api.utilities.EscapeDialog