Eclipse Platform
Release 3.1

org.eclipse.debug.ui
Interface IBreakpointOrganizerDelegate

All Known Implementing Classes:
AbstractBreakpointOrganizerDelegate

public interface IBreakpointOrganizerDelegate

A breakpoint organizer is used to categorize breakpoints and provides change notification when categorization has changed. Categories are represented as arbitrary adaptable objects. For example, projects could be used to categorize breakpoints. Images and labels for categories are generated via workbench adapaters.

Organizers may optionally support breakpoint recategorization.

Following is example plug-in XML for contributing a breakpoint organizer.

 <extension point="org.eclipse.debug.ui.breakpointOrganizers">
 	<breakpointOrganizer
 		class="com.example.BreakpointOrganizer"
      id="com.example.BreakpointOrganizer"
      label="Example Organizer"
      icon="icons/full/obj16/example_org.gif"/>
 </extension>
 
The attributes are specified as follows:

Clients contributing a breakpoint organizer are intended to implement this interface.

Since:
3.1

Field Summary
static String P_CATEGORY_CHANGED
          Change event id when a category's breakpoints have changed.
 
Method Summary
 void addBreakpoint(IBreakpoint breakpoint, IAdaptable category)
          Adds the specified breakpoint to the given category.
 void addPropertyChangeListener(IPropertyChangeListener listener)
          Adds the specified listener.
 boolean canAdd(IBreakpoint breakpoint, IAdaptable category)
          Returns whether the given breakpoint can be categorized in the specified category.
 boolean canRemove(IBreakpoint breakpoint, IAdaptable category)
          Returns whether the given breakpoint can be removed from the given category.
 void dispose()
          Disposes this breakpoint organizer.
 IAdaptable[] getCategories()
          Returns all categories managed by this organizer, or null.
 IAdaptable[] getCategories(IBreakpoint breakpoint)
          Returns objects representing the categories of the specified breakpoint or null if this organizer cannot classify the breakpoint.
 void removeBreakpoint(IBreakpoint breakpoint, IAdaptable category)
          Removes the specified breakpoint from the given category.
 void removePropertyChangeListener(IPropertyChangeListener listener)
          Removes the specified listener.
 

Field Detail

P_CATEGORY_CHANGED

public static final String P_CATEGORY_CHANGED
Change event id when a category's breakpoints have changed. The oldValue of the PropertyChangeEvent will be the category that has changed, and the source of the event will the the breakpoint organizer. Breakpoints in the category will be recategorized when this event is fired.

See Also:
IPropertyChangeListener
Method Detail

getCategories

public IAdaptable[] getCategories(IBreakpoint breakpoint)
Returns objects representing the categories of the specified breakpoint or null if this organizer cannot classify the breakpoint. Categories must return true when sent the message equals(Object) with an equivalent category as an argument.

Parameters:
breakpoint - breakpoint to classify
Returns:
categories of the given breakpoint or null

addPropertyChangeListener

public void addPropertyChangeListener(IPropertyChangeListener listener)
Adds the specified listener. Has no effect if an identical listener is already registered.

Parameters:
listener - listener to add

removePropertyChangeListener

public void removePropertyChangeListener(IPropertyChangeListener listener)
Removes the specified listener. Has no effect if an identical listener is not already registered.

Parameters:
listener - listener to remove

addBreakpoint

public void addBreakpoint(IBreakpoint breakpoint,
                          IAdaptable category)
Adds the specified breakpoint to the given category. Only called if canAdd(...) returns true for the given breakpoint and category.

Parameters:
breakpoint - breakpoint to recategorize
category - the breakpoint's new category

removeBreakpoint

public void removeBreakpoint(IBreakpoint breakpoint,
                             IAdaptable category)
Removes the specified breakpoint from the given category. Only called if canRemove(...) returns true for the given breakpoint and category.

Parameters:
breakpoint - breakpoint to recategorize
category - the category the breakpoint is remove from

canAdd

public boolean canAdd(IBreakpoint breakpoint,
                      IAdaptable category)
Returns whether the given breakpoint can be categorized in the specified category.

Parameters:
breakpoint - breakpoint to recatogorize
category - the category to add the breakpoint to
Returns:
whether the given breakpoint can be categorized in the specified category

canRemove

public boolean canRemove(IBreakpoint breakpoint,
                         IAdaptable category)
Returns whether the given breakpoint can be removed from the given category.

Parameters:
breakpoint - breakpoint to recategorize
category - the category to remove the breakpoint from
Returns:
whether the given breakpoint can be removed from the given category

getCategories

public IAdaptable[] getCategories()
Returns all categories managed by this organizer, or null. When null is returned, the breakpoints view only displays categories that contain breakpoints. When a collection of categories is returned the breakpoints will display all of the categories, some of which may be empty.

Returns:
all categories managed by this organizer, or null

dispose

public void dispose()
Disposes this breakpoint organizer.


Eclipse Platform
Release 3.1

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2005. All rights reserved.