
org.eclipse.debug.ui.IBreakpointOrganizerDelegate Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of org.eclipse.debug.ui Show documentation
Show all versions of org.eclipse.debug.ui Show documentation
This is org.eclipse.debug.ui jar used by Scout SDK
The newest version!
/*******************************************************************************
* Copyright (c) 2000, 2006 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.debug.ui;
import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.debug.core.model.IBreakpoint;
import org.eclipse.debug.internal.ui.DebugUIPlugin;
import org.eclipse.jface.util.IPropertyChangeListener;
/**
* 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 adapters.
*
* 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.png"/>
* </extension>
*
* The attributes are specified as follows:
*
* class
Fully qualified name of a Java class that implements
* {@link IBreakpointOrganizerDelegate}.
* id
Unique identifier for this breakpoint organizer.
* label
Label for this organizer which is suitable for
* presentation to the user.
* icon
Optional path to an icon which can be shown for this
* organizer
*
*
*
* Clients contributing a breakpoint organizer are intended to implement
* this interface.
*
* @since 3.1
*/
public interface IBreakpointOrganizerDelegate {
/**
* 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 IPropertyChangeListener
*/
public static final String P_CATEGORY_CHANGED = DebugUIPlugin.getUniqueIdentifier() + ".P_CATEGORY_CHANGED"; //$NON-NLS-1$
/**
* 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.
*
* @param breakpoint breakpoint to classify
* @return categories of the given breakpoint or null
*/
public IAdaptable[] getCategories(IBreakpoint breakpoint);
/**
* Adds the specified listener. Has no effect if an identical listener is
* already registered.
*
* @param listener listener to add
*/
public void addPropertyChangeListener(IPropertyChangeListener listener);
/**
* Removes the specified listener. Has no effect if an identical listener
* is not already registered.
*
* @param listener listener to remove
*/
public void removePropertyChangeListener(IPropertyChangeListener listener);
/**
* Adds the specified breakpoint to the given category. Only called
* if canAdd(...)
returns true
for the given
* breakpoint and category.
*
* @param breakpoint breakpoint to recategorize
* @param category the breakpoint's new category
*/
public void addBreakpoint(IBreakpoint breakpoint, IAdaptable category);
/**
* Removes the specified breakpoint from the given category. Only
* called if canRemove(...)
returns true
for
* the given breakpoint and category.
*
* @param breakpoint breakpoint to recategorize
* @param category the category the breakpoint is remove from
*/
public void removeBreakpoint(IBreakpoint breakpoint, IAdaptable category);
/**
* Returns whether the given breakpoint can be categorized in the
* specified category.
*
* @param breakpoint breakpoint to recatogorize
* @param category the category to add the breakpoint to
* @return whether the given breakpoint can be categorized in the
* specified category
*/
public boolean canAdd(IBreakpoint breakpoint, IAdaptable category);
/**
* Returns whether the given breakpoint can be removed from the given
* category.
*
* @param breakpoint breakpoint to recategorize
* @param category the category to remove the breakpoint from
* @return whether the given breakpoint can be removed from the given
* category
*/
public boolean canRemove(IBreakpoint breakpoint, IAdaptable category);
/**
* 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.
*
* @return all categories managed by this organizer, or null
*/
public IAdaptable[] getCategories();
/**
* Disposes this breakpoint organizer.
*/
public void dispose();
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy