Overview

 
Package  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 StructureDiffViewer

java.lang.Object
  extended byorg.eclipse.jface.viewers.Viewer
      extended byorg.eclipse.jface.viewers.ContentViewer
          extended byorg.eclipse.jface.viewers.StructuredViewer
              extended byorg.eclipse.jface.viewers.AbstractTreeViewer
                  extended byorg.eclipse.jface.viewers.TreeViewer
                      extended byorg.eclipse.compare.structuremergeviewer.DiffTreeViewer
                          extended byorg.eclipse.compare.structuremergeviewer.StructureDiffViewer

All Implemented Interfaces:
IInputProvider, IInputSelectionProvider, IPostSelectionProvider, ISelectionProvider


public class StructureDiffViewer
extends DiffTreeViewer

A diff tree viewer that can be configured with a IStructureCreator to retrieve a hierarchical structure from the input object (an ICompareInput) and perform a two-way or three-way compare on it.

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

See Also:
IStructureCreator, ICompareInput


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
StructureDiffViewer(Composite parent, CompareConfiguration configuration)
          Creates a new viewer under the given SWT parent with the specified configuration.
StructureDiffViewer(Tree tree, CompareConfiguration configuration)
          Creates a new viewer for the given SWT tree control with the specified configuration.
 
Method Summary
protected  void compareInputChanged(ICompareInput input)
          Recreates the comparable structures for the input sides.
protected  void contentChanged(IContentChangeNotifier changed)
          Calls diff whenever the byte contents changes.
protected  void copySelected(boolean leftToRight)
          Overridden to call the save method on the structure creator after nodes have been copied from one side to the other side of an input object.
protected  void diff()
          Runs the difference engine and refreshes the tree.
protected  Object getRoot()
          Overridden because the input of this viewer is not identical to the root of the tree.
 IStructureCreator getStructureCreator()
          Returns the structure creator or null if no structure creator has been set with setStructureCreator.
 String getTitle()
          Reimplemented to get the descriptive title for this viewer from the IStructureCreator.
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 input, Object oldInput)
          Overridden to create the comparable structures from the input object and to feed them through the differencing engine.
protected  void postDiffHook(Differencer differencer, IDiffContainer root)
          This method is called from within diff() after the difference tree has been built.
protected  void preDiffHook(IStructureComparator ancestor, IStructureComparator left, IStructureComparator right)
          This method is called from within diff() before the difference tree is being built.
protected  void propertyChange(PropertyChangeEvent event)
          Tracks property changes of the configuration object.
 void setStructureCreator(IStructureCreator structureCreator)
          Configures the StructureDiffViewer with a structure creator.
 
Methods inherited from class org.eclipse.compare.structuremergeviewer.DiffTreeViewer
copyOne, createToolItems, dontExpand, expandSelection, fillContextMenu, getBundle, getCompareConfiguration, internalExpandToLevel, navigate
 
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, 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

 

 

StructureDiffViewer

public StructureDiffViewer(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


 

 

StructureDiffViewer

public StructureDiffViewer(Composite parent,
                           CompareConfiguration configuration)

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

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

 

 

setStructureCreator

public void setStructureCreator(IStructureCreator structureCreator)

Configures the StructureDiffViewer with a structure creator. The structure creator is used to create a hierarchical structure for each side of the viewer's input element of type ICompareInput.

Parameters:
structureCreator - the new structure creator


 

 

getStructureCreator

public IStructureCreator getStructureCreator()

Returns the structure creator or null if no structure creator has been set with setStructureCreator.

Returns:
the structure creator or null


 

 

getTitle

public String getTitle()

Reimplemented to get the descriptive title for this viewer from the IStructureCreator.

Overrides:
getTitle in class DiffTreeViewer

Returns:
the viewer's name


 

 

getRoot

protected Object getRoot()

Overridden because the input of this viewer is not identical to the root of the tree. The tree's root is a IDiffContainer that was returned from the method diff.

Overrides:
getRoot in class StructuredViewer

Returns:
the root of the diff tree produced by method diff


 

 

inputChanged

protected void inputChanged(Object input,
                            Object oldInput)

Overridden to create the comparable structures from the input object and to feed them through the differencing engine. Note: for this viewer the value from getInput is not identical to getRoot.

Overrides:
inputChanged in class DiffTreeViewer


 

 

initialSelection

protected void initialSelection()

Description copied from class: DiffTreeViewer
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.

Overrides:
initialSelection in class DiffTreeViewer


 

 

handleDispose

protected void handleDispose(DisposeEvent event)

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

Overrides:
handleDispose in class DiffTreeViewer


 

 

compareInputChanged

protected void compareInputChanged(ICompareInput input)

Recreates the comparable structures for the input sides.


 

 

contentChanged

protected void contentChanged(IContentChangeNotifier changed)

Calls diff whenever the byte contents changes.


 

 

preDiffHook

protected void preDiffHook(IStructureComparator ancestor,
                           IStructureComparator left,
                           IStructureComparator right)

This method is called from within diff() before the difference tree is being built. Clients may override this method to perform their own pre-processing. This default implementation does nothing.

Parameters:
ancestor - the ancestor input to the differencing operation
left - the left input to the differencing operation
right - the right input to the differencing operation
Since:
2.0


 

 

diff

protected void diff()

Runs the difference engine and refreshes the tree.


 

 

postDiffHook

protected void postDiffHook(Differencer differencer,
                            IDiffContainer root)

This method is called from within diff() after the difference tree has been built. Clients may override this method to perform their own post-processing. This default implementation does nothing.

Parameters:
differencer - the differencer used to perform the differencing
root - the non-null root node of the difference tree
Since:
2.0


 

 

propertyChange

protected void propertyChange(PropertyChangeEvent event)

Tracks property changes of the configuration object. Clients may override to track their own property changes. In this case they must call the inherited method.

Overrides:
propertyChange in class DiffTreeViewer


 

 

copySelected

protected void copySelected(boolean leftToRight)

Overridden to call the save method on the structure creator after nodes have been copied from one side to the other side of an input object.

Overrides:
copySelected in class DiffTreeViewer

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


 

Overview

 
Package  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.