uk.ac.kcl.cch.jb.pliny.actions
Class MakeNoteAction

java.lang.Object
  extended byorg.eclipse.core.commands.common.EventManager
      extended byorg.eclipse.jface.action.AbstractAction
          extended byorg.eclipse.jface.action.Action
              extended byuk.ac.kcl.cch.jb.pliny.actions.MakeNoteAction
All Implemented Interfaces:
org.eclipse.gef.requests.CreationFactory, org.eclipse.jface.action.IAction

public class MakeNoteAction
extends org.eclipse.jface.action.Action
implements org.eclipse.gef.requests.CreationFactory

This action tells GEF to use its Creation tool to allow the user to create a new NoteLucened. To this end, it is also a creation factory for NoteLucened objects.

The code is modelled on code in IBM's redbook "Eclipse Development using GEF and EMF", pg 155.

Author:
John Bradley

Field Summary
 
Fields inherited from interface org.eclipse.jface.action.IAction
AS_CHECK_BOX, AS_DROP_DOWN_MENU, AS_PUSH_BUTTON, AS_RADIO_BUTTON, AS_UNSPECIFIED, CHECKED, DESCRIPTION, ENABLED, HANDLED, IMAGE, RESULT, TEXT, TOOL_TIP_TEXT
 
Constructor Summary
MakeNoteAction()
          constructor for this action.
MakeNoteAction(org.eclipse.gef.EditDomain editDomain)
          constructor for this action.
 
Method Summary
 Object getNewObject()
          creates a new NoteLucened object.
 Object getObjectType()
          Returns the new object's type.
 void run()
          creates a new CreationTool with this as a factory for NoteLucenes and gives the tool to the editDomain.
 void setEditDomain(org.eclipse.gef.EditDomain editDomain)
          stores the editDomain to which the creation tool will be given.
 
Methods inherited from class org.eclipse.jface.action.Action
convertAccelerator, convertAccelerator, findKeyCode, findKeyString, findModifier, findModifierString, getAccelerator, getActionDefinitionId, getDescription, getDisabledImageDescriptor, getHelpListener, getHoverImageDescriptor, getId, getImageDescriptor, getMenuCreator, getStyle, getText, getToolTipText, isChecked, isEnabled, isHandled, notifyResult, removeAcceleratorText, removeMnemonics, runWithEvent, setAccelerator, setActionDefinitionId, setChecked, setDescription, setDisabledImageDescriptor, setEnabled, setHelpListener, setHoverImageDescriptor, setId, setImageDescriptor, setMenuCreator, setText, setToolTipText
 
Methods inherited from class org.eclipse.jface.action.AbstractAction
addPropertyChangeListener, firePropertyChange, firePropertyChange, removePropertyChangeListener
 
Methods inherited from class org.eclipse.core.commands.common.EventManager
addListenerObject, clearListeners, getListeners, isListenerAttached, removeListenerObject
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.jface.action.IAction
addPropertyChangeListener, removePropertyChangeListener
 

Constructor Detail

MakeNoteAction

public MakeNoteAction()
constructor for this action. It will require a GEF editDomain to which the tool can be given before it can be used, which can be specified through setEditDomain().


MakeNoteAction

public MakeNoteAction(org.eclipse.gef.EditDomain editDomain)
constructor for this action. The editDomain is the one to which the CreateTool is to be given.

Parameters:
editDomain - EditDomain
Method Detail

setEditDomain

public void setEditDomain(org.eclipse.gef.EditDomain editDomain)
stores the editDomain to which the creation tool will be given.

Parameters:
editDomain - EditDomain

run

public void run()
creates a new CreationTool with this as a factory for NoteLucenes and gives the tool to the editDomain.

Specified by:
run in interface org.eclipse.jface.action.IAction

getNewObject

public Object getNewObject()
creates a new NoteLucened object. Part of the CreationFactory interface.

Note that the NoteLucened object is created in such a way that it is not immediately added to the backing DB. This putting in the DB will be done if the user completes the note creation.

Specified by:
getNewObject in interface org.eclipse.gef.requests.CreationFactory

getObjectType

public Object getObjectType()
Returns the new object's type.

Specified by:
getObjectType in interface org.eclipse.gef.requests.CreationFactory
Returns:
the type