Eclipse Platform Release 3.7

## org.eclipse.debug.ui.sourcelookup
Interface ISourceContainerBrowser

All Known Implementing Classes:
  AbstractSourceContainerBrowser

    public interface ISourceContainerBrowser

Creates and edits source containers for a source lookup director. Contributed via a source container presentation extension for a specific type of source container.

Following is an example source container presentation definition that contributes a source container browser via the `browserClass` attribute.

     <extension point="org.eclipse.debug.ui.sourceContainerPresentations">
        <sourceContainerPresentation
              browserClass="org.eclipse.debug.internal.ui.sourcelookup.browsers.ProjectSourceContainerBrowser"
              containerTypeID="org.eclipse.debug.core.containerType.project"
              icon="icons/full/obj16/prj_obj.gif"
              id="org.eclipse.debug.ui.containerPresentation.project">
        </sourceContainerPresentation>
     </extension>

Since:
  3.0

Method Summary
`ISourceContainer[]` `addSourceContainers(Shell shell, ISourceLookupDirector director)` Creates and returns new source containers to add to the given source lookup director.
`boolean` `canAddSourceContainers(ISourceLookupDirector director)` Returns whether this browser can add any source containers to the given source lookup director.
`boolean` `canEditSourceContainers(ISourceLookupDirector director, ISourceContainer[] containers)` Returns whether this browser can edit the given source containers.
`ISourceContainer[]` `editSourceContainers(Shell shell, ISourceLookupDirector director, ISourceContainer[] containers)` Edits and returns source containers to replace the given source containers.

Method Detail

### addSourceContainers

    ISourceContainer[] addSourceContainers(Shell shell,
                                           ISourceLookupDirector director)

  Creates and returns new source containers to add to the given source lookup director.

  Parameters:
    `shell` - the shell to use to parent any dialogs
    `director` - the director the new containers will be added to
  Returns:
    the new source containers to add

### canAddSourceContainers

    boolean canAddSourceContainers(ISourceLookupDirector director)

  Returns whether this browser can add any source containers to the given source lookup director.

  Parameters:
    `director` - source lookup director to potentially add source containers to
  Returns:
    whether this browser can add any source containers to the given source lookup director

### editSourceContainers

    ISourceContainer[] editSourceContainers(Shell shell,
                                            ISourceLookupDirector director,
                                            ISourceContainer[] containers)

  Edits and returns source containers to replace the given source containers.

  Parameters:
    `shell` - the shell to use to parent any dialogs
    `director` - the director the new containers will be added to
    `containers` - the source containers to be edited
  Returns:
    the replacement source containers

### canEditSourceContainers

    boolean canEditSourceContainers(ISourceLookupDirector director,
                                    ISourceContainer[] containers)

  Returns whether this browser can edit the given source containers.

  Parameters:
    `director` - source lookup director to potentially edit source containers for
    `containers` - the containers to edit
  Returns:
    whether this browser can edit the given source containers

Eclipse Platform Release 3.7

Guidelines for using Eclipse APIs.

Copyright (c) Eclipse contributors and others 2000, 2011. All rights reserved.