|
Eclipse Platform 2.0 |
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Interface for objects used as input to a two-way or three-way compare viewer. It defines API for accessing the three sides for the compare, and a name and image which is used when displaying the three way input in the UI, for example, in a title bar.
Note: at most two sides of an ICompareInput
can be null
,
(as it is normal for additions or deletions) but not all three.
ICompareInput
provides methods for registering
ICompareInputChangeListener
s
that get informed if one (or more)
of the three sides of an ICompareInput
object changes its value.
For example when accepting an incoming addition
the (non-null
) left side of an ICompareInput
is copied to the right side by means of method copy
.
This should trigger a call to compareInputChanged
of registered
ICompareInputChangeListener
s.
Clients can implement this interface, or use the convenience implementation
DiffNode
.
StructureDiffViewer
,
ContentMergeViewer
,
DiffNode
Method Summary | |
void |
addCompareInputChangeListener(ICompareInputChangeListener listener)
Registers the given listener for notification. |
void |
copy(boolean leftToRight)
Copy one side (source) to the other side (destination) depending on the value of leftToRight . |
ITypedElement |
getAncestor()
Returns the ancestor side of this input. |
Image |
getImage()
Returns an image representing this input. |
int |
getKind()
Returns the kind of difference between the three sides ancestor, left and right. |
ITypedElement |
getLeft()
Returns the left side of this input. |
String |
getName()
Returns name of input. |
ITypedElement |
getRight()
Returns the right side of this input. |
void |
removeCompareInputChangeListener(ICompareInputChangeListener listener)
Unregisters the given listener. |
Method Detail |
public String getName()
null
sides or a combination
thereof.
public Image getImage()
null
sides.
null
if no icon should be shownpublic int getKind()
ICompareInput
is the result of another compare. In this case it is used
together with getImage
to compose a icon
which reflects the kind of difference between the two or three elements.
Differencer
)public ITypedElement getAncestor()
null
if this input has no ancestor
or in the two-way compare case.
null
public ITypedElement getLeft()
null
if there is no left side (deletion or addition).
null
public ITypedElement getRight()
null
if there is no right side (deletion or addition).
null
public void addCompareInputChangeListener(ICompareInputChangeListener listener)
listener
- the listener to register for changes of this inputpublic void removeCompareInputChangeListener(ICompareInputChangeListener listener)
listener
- the listener to unregisterpublic void copy(boolean leftToRight)
leftToRight
. This method is called from
a merge viewer if a corresponding action ("take left" or "take right")
has been pressed.
The implementation should handle the following cases:
null
the destination must be deleted,
null
the destination must be created
and filled with the contents from the source,
null
the contents of source must be copied to destination.
ICompareInputChangeListener
.
leftToRight
- if true
the left side is copied to the right side.
If false
the right side is copied to the left side
|
Eclipse Platform 2.0 |
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |