Runtime

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

    java.lang.Object
      org.eclipse.gef.editpolicies.AbstractEditPolicy
          org.eclipse.gef.editpolicies.GraphicalEditPolicy
              org.eclipse.gmf.runtime.diagram.ui.editpolicies.DiagramAssistantEditPolicy
                  org.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.