Runtime

org.eclipse.gmf.runtime.diagram.ui.editpolicies
Class PopupBarEditPolicy

java.lang.Object
  extended byorg.eclipse.gef.editpolicies.AbstractEditPolicy
      extended byorg.eclipse.gef.editpolicies.GraphicalEditPolicy
          extended byorg.eclipse.gmf.runtime.diagram.ui.editpolicies.DiagramAssistantEditPolicy
              extended byorg.eclipse.gmf.runtime.diagram.ui.editpolicies.PopupBarEditPolicy
All Implemented Interfaces:
EditPolicy, MouseMotionListener, RequestConstants
Direct Known Subclasses:
DiagramPopupBarEditPolicy

public class PopupBarEditPolicy
extends DiagramAssistantEditPolicy

Popup bars are esentially a cartoon balloon with buttons that are activated during mouse hover over a shape.


Nested Class Summary
 
Nested classes inherited from class org.eclipse.draw2d.MouseMotionListener
MouseMotionListener.Stub
 
Field Summary
protected  java.util.List imagesToBeDisposed
          Images created that must be deleted when popup bar is removed
 
Fields inherited from interface org.eclipse.gef.EditPolicy
COMPONENT_ROLE, CONNECTION_BENDPOINTS_ROLE, CONNECTION_ENDPOINTS_ROLE, CONNECTION_ROLE, CONTAINER_ROLE, DIRECT_EDIT_ROLE, GRAPHICAL_NODE_ROLE, LAYOUT_ROLE, NODE_ROLE, PRIMARY_DRAG_ROLE, SELECTION_FEEDBACK_ROLE, TREE_CONTAINER_ROLE
 
Fields inherited from interface org.eclipse.gef.RequestConstants
REQ_ADD, REQ_ALIGN, REQ_ALIGN_CHILDREN, REQ_CLONE, REQ_CONNECTION_END, REQ_CONNECTION_START, REQ_CREATE, REQ_CREATE_BENDPOINT, REQ_DELETE, REQ_DELETE_DEPENDANT, REQ_DIRECT_EDIT, REQ_MOVE, REQ_MOVE_BENDPOINT, REQ_MOVE_CHILDREN, REQ_OPEN, REQ_ORPHAN, REQ_ORPHAN_CHILDREN, REQ_RECONNECT_SOURCE, REQ_RECONNECT_TARGET, REQ_RESIZE, REQ_RESIZE_CHILDREN, REQ_SELECTION, REQ_SELECTION_HOVER
 
Constructor Summary
PopupBarEditPolicy()
           
 
Method Summary
 void activate()
           
protected  void addPopupBarDescriptor(IElementType elementType, Image theImage)
          default method for plugins which passes along the PopupBarTool as the tool to be used.
protected  void addPopupBarDescriptor(IElementType elementType, Image theImage, CreateRequest theRequest)
          method used primarily to add UnspecifiedTypeCreationTool
protected  void addPopupBarDescriptor(IElementType elementType, Image theImage, DragTracker theTracker)
          adds popup bar descriptor
protected  void addPopupBarDescriptor(IElementType elementType, Image theImage, DragTracker theTracker, java.lang.String theTip)
          allows plugins to add their own popup bar tools and tips
protected  void addPopupBarDescriptor(IElementType elementType, Image theImage, java.lang.String theTip)
           
protected  IFigure createPopupBarFigure()
           
 void deactivate()
           
protected  void fillPopupBarDescriptors()
          This is the entry point that subclasses can override to fill the popup bar descrioptors if they have customized tools that cannot be done using the type along with the modeling assistant service.
protected  int getAppearanceDelayLocationSpecific()
          Gets the amount of time to wait before showing the popup bar if the popup bar is to be shown at the mouse location PopupBarEditPolicy.getIsDisplayAtMouseHoverLocation().
protected  boolean getIsDisplayAtMouseHoverLocation()
          getter for the IsDisplayAtMouseHoverLocation flag
protected  java.util.List getPopupBarDescriptors()
          gets the popup bar descriptors
protected  void hideDiagramAssistant()
          Hides the diagram assistant figure(s).
protected  boolean isDiagramAssistant(java.lang.Object object)
          Checks if the object is or is part of the diagram assistant figure.
protected  boolean isDiagramAssistantShowing()
          Returns true if the diagram assistant is currently showing; false otherwise.
protected  boolean isHostConnection()
          get the host is connection flag
protected  boolean isRightDisplay()
          check thee right display status
 void mouseHover(MouseEvent me)
          Adds the popup bar after a delay
 void mouseMoved(MouseEvent me)
           
protected  void populatePopupBars()
          Populates the popup bar with popup bar descriptors added by suclassing this editpolicy (i.e.
protected  void setHostConnection(boolean bVal)
          set the host is connection flag
protected  void setIsDisplayAtMouseHoverLocation(boolean bVal)
          setter for the IsDisplayAtMouseHoverLocation
protected  void setLeftHandDisplay()
          Place the popup bar to favor the left had side of the shape
protected  void setRightHandDisplay()
          This is the default which places the popup bar to favor the right side of the shape
protected  boolean shouldShowDiagramAssistant()
          Returns true if the diagram assistant should be shown; false otherwise.
protected  void showDiagramAssistant(Point referencePoint)
          Shows the diagram assistant figure(s).
protected  void showDiagramAssistantAfterDelay(int theDelay)
          Shows the diagram assistant after a certain amount of time has passed.
 
Methods inherited from class org.eclipse.gmf.runtime.diagram.ui.editpolicies.DiagramAssistantEditPolicy
getAppearanceDelay, getDisappearanceDelay, getDisappearanceDelayUponExit, getMouseLocation, hideDiagramAssistantAfterDelay, isPreferenceOn, mouseDragged, mouseEntered, mouseExited, setAvoidHidingDiagramAssistant, setMouseLocation, shouldAvoidHidingDiagramAssistant
 
Methods inherited from class org.eclipse.gef.editpolicies.GraphicalEditPolicy
addFeedback, getFeedbackLayer, getHostFigure, getLayer, removeFeedback
 
Methods inherited from class org.eclipse.gef.editpolicies.AbstractEditPolicy
debugFeedback, eraseSourceFeedback, eraseTargetFeedback, getCommand, getHost, getTargetEditPart, setHost, showSourceFeedback, showTargetFeedback, toString, understandsRequest
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

imagesToBeDisposed

protected java.util.List imagesToBeDisposed
Images created that must be deleted when popup bar is removed

Constructor Detail

PopupBarEditPolicy

public PopupBarEditPolicy()
Method Detail

isDiagramAssistant

protected boolean isDiagramAssistant(java.lang.Object object)
Description copied from class: DiagramAssistantEditPolicy
Checks if the object is or is part of the diagram assistant figure. This is used to determine if the mouse is hovering over the diagram assistant.

Specified by:
isDiagramAssistant in class DiagramAssistantEditPolicy
Parameters:
object - the object in question
Returns:
True if the object in question is or is part of the diagram assistant figure; false otherwise.

mouseHover

public void mouseHover(MouseEvent me)
Adds the popup bar after a delay

Specified by:
mouseHover in interface MouseMotionListener
Overrides:
mouseHover in class DiagramAssistantEditPolicy

mouseMoved

public void mouseMoved(MouseEvent me)
Specified by:
mouseMoved in interface MouseMotionListener
Overrides:
mouseMoved in class DiagramAssistantEditPolicy
See Also:
MouseMotionListener.mouseMoved(org.eclipse.draw2d.MouseEvent)

setHostConnection

protected void setHostConnection(boolean bVal)
set the host is connection flag

Parameters:
bVal - the new value

isHostConnection

protected boolean isHostConnection()
get the host is connection flag

Returns:
true or false

populatePopupBars

protected void populatePopupBars()
Populates the popup bar with popup bar descriptors added by suclassing this editpolicy (i.e. fillPopupBarDescriptors and by querying the modeling assistant service for all types supported on the popup bar of this host. For those types added by the modeling assistant service the icons are retrieved using the Icon Service.


fillPopupBarDescriptors

protected void fillPopupBarDescriptors()
This is the entry point that subclasses can override to fill the popup bar descrioptors if they have customized tools that cannot be done using the type along with the modeling assistant service.


shouldShowDiagramAssistant

protected boolean shouldShowDiagramAssistant()
Description copied from class: DiagramAssistantEditPolicy
Returns true if the diagram assistant should be shown; false otherwise. This can be overridden to check any other conditions which must be met prior to showing the diagram assistant.

Overrides:
shouldShowDiagramAssistant in class DiagramAssistantEditPolicy
Returns:
true if the diagram assistant should be shown; false otherwise.

addPopupBarDescriptor

protected void addPopupBarDescriptor(IElementType elementType,
                                     Image theImage,
                                     DragTracker theTracker,
                                     java.lang.String theTip)
allows plugins to add their own popup bar tools and tips

Parameters:
elementType -
theImage -
theTracker -
theTip -

addPopupBarDescriptor

protected void addPopupBarDescriptor(IElementType elementType,
                                     Image theImage,
                                     DragTracker theTracker)
adds popup bar descriptor

Parameters:
elementType -
theImage -
theTracker -

addPopupBarDescriptor

protected void addPopupBarDescriptor(IElementType elementType,
                                     Image theImage)
default method for plugins which passes along the PopupBarTool as the tool to be used.

Parameters:
elementType -
theImage -

addPopupBarDescriptor

protected void addPopupBarDescriptor(IElementType elementType,
                                     Image theImage,
                                     java.lang.String theTip)
Parameters:
elementType -
theImage -
theTip -

addPopupBarDescriptor

protected void addPopupBarDescriptor(IElementType elementType,
                                     Image theImage,
                                     CreateRequest theRequest)
method used primarily to add UnspecifiedTypeCreationTool

Parameters:
elementType -
theImage -
theRequest - the create request to be used

getPopupBarDescriptors

protected java.util.List getPopupBarDescriptors()
gets the popup bar descriptors

Returns:
list

isDiagramAssistantShowing

protected boolean isDiagramAssistantShowing()
Description copied from class: DiagramAssistantEditPolicy
Returns true if the diagram assistant is currently showing; false otherwise. This is used to determine if the diagram assistant should be shown or hidden at a given point in time.

Specified by:
isDiagramAssistantShowing in class DiagramAssistantEditPolicy
Returns:
true if the diagram assistant is showing; false otherwise

createPopupBarFigure

protected IFigure createPopupBarFigure()

showDiagramAssistant

protected void showDiagramAssistant(Point referencePoint)
Description copied from class: DiagramAssistantEditPolicy
Shows the diagram assistant figure(s).

Specified by:
showDiagramAssistant in class DiagramAssistantEditPolicy
Parameters:
referencePoint - The reference point which may be used to determine where the diagram assistant should be located. This is most likely the current mouse location. This could be null, for example, when the host gains focus via the space bar, in which case the diagram assistant should be shown in a default location.

getIsDisplayAtMouseHoverLocation

protected boolean getIsDisplayAtMouseHoverLocation()
getter for the IsDisplayAtMouseHoverLocation flag

Returns:
true or false

setIsDisplayAtMouseHoverLocation

protected void setIsDisplayAtMouseHoverLocation(boolean bVal)
setter for the IsDisplayAtMouseHoverLocation

Parameters:
bVal -

hideDiagramAssistant

protected void hideDiagramAssistant()
Description copied from class: DiagramAssistantEditPolicy
Hides the diagram assistant figure(s).

Specified by:
hideDiagramAssistant in class DiagramAssistantEditPolicy

showDiagramAssistantAfterDelay

protected void showDiagramAssistantAfterDelay(int theDelay)
Description copied from class: DiagramAssistantEditPolicy
Shows the diagram assistant after a certain amount of time has passed.

Overrides:
showDiagramAssistantAfterDelay in class DiagramAssistantEditPolicy
Parameters:
theDelay - the delay in milliseconds

activate

public void activate()
Specified by:
activate in interface EditPolicy
Overrides:
activate in class DiagramAssistantEditPolicy

deactivate

public void deactivate()
Specified by:
deactivate in interface EditPolicy
Overrides:
deactivate in class DiagramAssistantEditPolicy

setRightHandDisplay

protected void setRightHandDisplay()
This is the default which places the popup bar to favor the right side of the shape


setLeftHandDisplay

protected void setLeftHandDisplay()
Place the popup bar to favor the left had side of the shape


isRightDisplay

protected boolean isRightDisplay()
check thee right display status

Returns:
true or false

getAppearanceDelayLocationSpecific

protected int getAppearanceDelayLocationSpecific()
Gets the amount of time to wait before showing the popup bar if the popup bar is to be shown at the mouse location PopupBarEditPolicy.getIsDisplayAtMouseHoverLocation().

Returns:
the time to wait in milliseconds

Runtime

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp., Borland Software Corp., and others 2005,2006. All rights reserved.