Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.eclipse.compare.structuremergeviewer
Class DiffTreeViewer

    java.lang.Object
      org.eclipse.jface.viewers.Viewer
          org.eclipse.jface.viewers.ContentViewer
              org.eclipse.jface.viewers.StructuredViewer
                  org.eclipse.jface.viewers.AbstractTreeViewer
                      org.eclipse.jface.viewers.TreeViewer
                          org.eclipse.compare.structuremergeviewer.DiffTreeViewer

All Implemented Interfaces:
  IInputProvider, IInputSelectionProvider, IPostSelectionProvider, ISelectionProvider

Direct Known Subclasses:
  StructureDiffViewer

public class DiffTreeViewer
extends TreeViewer

A tree viewer that works on objects implementing the `IDiffContainer` and `IDiffElement` interfaces.

This class may be instantiated; it is not intended to be subclassed outside this package.

See Also:
  `IDiffContainer`, `IDiffElement`

Field Summary

Fields inherited from class org.eclipse.jface.viewers.AbstractTreeViewer
`ALL_LEVELS`

Fields inherited from class org.eclipse.jface.viewers.Viewer
`WIDGET_DATA_KEY`

Constructor Summary
`DiffTreeViewer(Composite parent, CompareConfiguration configuration)` Creates a new viewer under the given SWT parent and with the specified configuration.
`DiffTreeViewer(Tree tree, CompareConfiguration configuration)` Creates a new viewer for the given SWT tree control with the specified configuration.

Method Summary
`protected void` | `copyOne(ICompareInput node, boolean leftToRight)` Called to copy one side of the given node to the other.
`protected void` | `copySelected(boolean leftToRight)` Copies one side of all `DiffNode`s in the current selection to the other side.
`protected void` | `createToolItems(ToolBarManager toolbarManager)` This factory method is called after the viewer's controls have been created.
`protected boolean` | `dontExpand(Object o)` This hook method is called from within `internalExpandToLevel` to control whether a given model node should be expanded or not.
`protected void` | `expandSelection()` Expands to infinity all items in the selection.
`protected void` | `fillContextMenu(IMenuManager manager)` This method is called to add actions to the viewer's context menu.
`protected ResourceBundle` | `getBundle()` Returns the resource bundle.
`CompareConfiguration` | `getCompareConfiguration()` Returns the compare configuration of this viewer.
`String` | `getTitle()` Returns the viewer's name.
`protected void` | `handleDispose(DisposeEvent event)` Called on the viewer disposal.
`protected void` | `initialSelection()` This hook method is called from within `inputChanged` after a new input has been set but before any controls are updated.
`protected void` | `inputChanged(Object in, Object oldInput)` Internal hook method called when the input to this viewer is initially set or subsequently changed.
`protected void` | `internalExpandToLevel(Widget node, int level)` Overridden to avoid expanding `DiffNode`s that shouldn't expand.
`protected void` | `navigate(boolean next)` Selects the next (or previous) node of the current selection.
`protected void` | `propertyChange(PropertyChangeEvent event)` Tracks property changes of the configuration object.

Methods inherited from class org.eclipse.jface.viewers.TreeViewer
`addTreeListener, doUpdateItem, getChildren, getControl, getExpanded, getItem, getItemCount, getItemCount, getItems, getLabelProvider, getParentItem, getSelection, getTree, newItem, removeAll, setExpanded, setLabelProvider, setSelection, showItem`

Methods inherited from class org.eclipse.jface.viewers.AbstractTreeViewer
`add, add, addSelectionListener, addTreeListener, associate, collapseAll, collapseToLevel, createChildren, createTreeItem, disassociate, doFindInputItem, doFindItem, doUpdateItem, expandAll, expandToLevel, expandToLevel, fireTreeCollapsed, fireTreeExpanded, getAutoExpandLevel, getExpandedElements, getExpandedState, getNextItem, getPreviousItem, getRawChildren, getSelectionFromWidget, getVisibleExpandedElements, handleTreeCollapse, handleTreeExpand, hookControl, indexForElement, internalCollapseToLevel, internalExpand, internalRefresh, internalRefresh, isExpandable, labelProviderChanged, remove, remove, removeTreeListener, reveal, scrollDown, scrollUp, setAutoExpandLevel, setContentProvider, setExpandedElements, setExpandedState, setSelectionToWidget, updateChildren, updatePlus`

Methods inherited from class org.eclipse.jface.viewers.StructuredViewer
`addDoubleClickListener, addDragSupport, addDropSupport, addFilter, addOpenListener, addPostSelectionChangedListener, assertElementsNotNull, equals, filter, findItem, fireDoubleClick, fireOpen, firePostSelectionChanged, getComparer, getFilteredChildren, getFilters, getRoot, getSelection, getSortedChildren, getSorter, handleDoubleSelect, handleInvalidSelection, handleLabelProviderChanged, handleOpen, handlePostSelect, handleSelect, hasFilters, mapElement, needsRefilter, preservingSelection, refresh, refresh, refresh, refresh, refreshItem, removeDoubleClickListener, removeFilter, removeOpenListener, removePostSelectionChangedListener, resetFilters, setComparer, setInput, setSelection, setSelectionToWidget, setSorter, setUseHashlookup, testFindItem, unmapAllElements, unmapElement, unmapElement, update, update, updateItem, updateSelection, usingElementMap`

Methods inherited from class org.eclipse.jface.viewers.ContentViewer
`getContentProvider, getInput`

Methods inherited from class org.eclipse.jface.viewers.Viewer
`addHelpListener, addSelectionChangedListener, fireHelpRequested, fireSelectionChanged, getData, handleHelpRequest, removeHelpListener, removeSelectionChangedListener, setData, setSelection`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface org.eclipse.jface.viewers.ISelectionProvider
`addSelectionChangedListener, removeSelectionChangedListener, setSelection`

Constructor Detail

### DiffTreeViewer

    public DiffTreeViewer(Tree tree,
                          CompareConfiguration configuration)

  Creates a new viewer for the given SWT tree control with the specified configuration.

Parameters:
  `tree` - the tree control
  `configuration` - the configuration for this viewer

### DiffTreeViewer

    public DiffTreeViewer(Composite parent,
                          CompareConfiguration configuration)

  Creates a new viewer under the given SWT parent and with the specified configuration.

Parameters:
  `parent` - the SWT control under which to create the viewer
  `configuration` - the configuration for this viewer

Method Detail

### getTitle

    public String getTitle()

  Returns the viewer's name.

  Returns:
    the viewer's name

### getBundle

    protected ResourceBundle getBundle()

  Returns the resource bundle.

  Returns:
    the viewer's resource bundle

### getCompareConfiguration

    public CompareConfiguration getCompareConfiguration()

  Returns the compare configuration of this viewer.

  Returns:
    the compare configuration of this viewer

### handleDispose

    protected void handleDispose(DisposeEvent event)

  Called on the viewer disposal. Unregisters from the compare configuration. Clients may extend if they have to do additional cleanup.

  Overrides:
    `handleDispose` in class `ContentViewer`
  Parameters:
    `event` - a dispose event

### propertyChange

    protected void propertyChange(PropertyChangeEvent event)

  Tracks property changes of the configuration object. Clients may extend to track their own property changes.

### inputChanged

    protected void inputChanged(Object in,
                                Object oldInput)

  Description copied from class: `Viewer`
  Internal hook method called when the input to this viewer is initially set or subsequently changed.

  The default implementation does nothing. Subclassers may override this method to do something when a viewer's input is set. A typical use is populate the viewer.

  Overrides:
    `inputChanged` in class `AbstractTreeViewer`

### initialSelection

    protected void initialSelection()

  This hook method is called from within `inputChanged` after a new input has been set but before any controls are updated. This default implementation calls `navigate(true)` to select and expand the first leaf node. Clients can override this method and are free to decide whether they want to call the inherited method.

  Since:
    2.0

### internalExpandToLevel

    protected void internalExpandToLevel(Widget node,
                                         int level)

  Overridden to avoid expanding `DiffNode`s that shouldn't expand.

  Overrides:
    `internalExpandToLevel` in class `AbstractTreeViewer`
  Parameters:
    `node` - the widget
    `level` - non-negative level, or `ALL_LEVELS` to collapse all levels of the tree

### dontExpand

    protected boolean dontExpand(Object o)

  This hook method is called from within `internalExpandToLevel` to control whether a given model node should be expanded or not. This default implementation checks whether the object is a `DiffNode` and calls `dontExpand()` on it. Clients can override this method and are free to decide whether they want to call the inherited method.

  Parameters:
    `o` - the model object to be expanded
  Returns:
    `false` if a node should be expanded, `true` to prevent expanding
  Since:
    2.0

### createToolItems

    protected void createToolItems(ToolBarManager toolbarManager)

  This factory method is called after the viewer's controls have been created. It installs four actions in the given `ToolBarManager`. Two actions allow for copying one side of a `DiffNode` to the other side. Two other actions are for navigating from one node to the next (previous).

  Clients can override this method and are free to decide whether they want to call the inherited method.

  Parameters:
    `toolbarManager` - the toolbar manager for which to add the actions

### fillContextMenu

    protected void fillContextMenu(IMenuManager manager)

  This method is called to add actions to the viewer's context menu. It installs actions for expanding tree nodes, copying one side of a `DiffNode` to the other side. Clients can override this method and are free to decide whether they want to call the inherited method.

  Parameters:
    `manager` - the menu manager for which to add the actions

### expandSelection

    protected void expandSelection()

  Expands to infinity all items in the selection.

  Since:
    2.0

### copySelected

    protected void copySelected(boolean leftToRight)

  Copies one side of all `DiffNode`s in the current selection to the other side. Called from the (internal) actions for copying the sides of a `DiffNode`. Clients may override.

  Parameters:
    `leftToRight` - if `true` the left side is copied to the right side. If `false` the right side is copied to the left side

### copyOne

    protected void copyOne(ICompareInput node,
                           boolean leftToRight)

  Called to copy one side of the given node to the other. This default implementation delegates the call to `ICompareInput.copy(...)`. Clients may override.

  Parameters:
    `leftToRight` - if `true` the left side is copied to the right side. If `false` the right side is copied to the left side

### navigate

    protected void navigate(boolean next)

  Selects the next (or previous) node of the current selection. If there is no current selection the first (last) node in the tree is selected. Wraps around at end or beginning. Clients may override.

  Parameters:
    `next` - if `true` the next node is selected, otherwise the previous node

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Guidelines for using Eclipse APIs.

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