ContentMerge Viewers
Identifier: 
org.eclipse.compare.contentMergeViewers
Description: 
This extension point allows a plug-in to register compare/merge 
viewers for specific content types. The viewer is expected to 
extend org.eclipse.jface.viewers.Viewer. 
However, since viewers don't have a default constructor, 
the extension point must implement the factory interface 
for viewers org.eclipse.compare.IViewerCreator.
Configuration Markup:
<!ELEMENT extension (viewer* , contentTypeBinding*)>
<!ATTLIST extension
point CDATA #REQUIRED
id    CDATA #IMPLIED
name  CDATA #IMPLIED>
- point - a fully qualified identifier of the target extension point
 
- id - an optional identifier of the extension instance
 
- name - an optional name of the extension instance
 
<!ELEMENT viewer EMPTY>
<!ATTLIST viewer
id           CDATA #REQUIRED
class        CDATA #REQUIRED
extensions   CDATA #IMPLIED
label        CDATA #IMPLIED
linkedEditor IDREF #IMPLIED>
- id - a unique identifier that can be used to reference the viewer
 
- class - a fully qualified name of a class that implements a factory for the 
content merge viewer and implements org.eclipse.compare.IViewerCreator
 
- extensions - a comma separated list of file extensions e.g. "java, gif"
 
- label - Since 3.5. A translatable label that will be used in the UI for this viewer.
 
- linkedEditor - Since 3.11. Editor id to consider while searching for a viewer matching a content type. 
If the specified "linked" editor has content type associations, they will be also considered as possible bindings for this viewer. This is useful in cases where viewer supports same content types as "linked" editor (like in generic editor).
 
<!ELEMENT contentTypeBinding EMPTY>
<!ATTLIST contentTypeBinding
contentTypeId        IDREF #REQUIRED
contentMergeViewerId IDREF #REQUIRED>
A contentTypeBinding binds a merge viewer to a content type.
- contentTypeId - The id of a content type defined using the 
org.eclipse.core.contenttype.contentTypes extension point. 
- contentMergeViewerId - The id of a merge viewer defined using the 
viewer element of this extension point (i.e. org.eclipse.compare.contentMergeViewers) 
Examples: 
The following is an example of a compare/merge viewer 
for text files (extension "txt"):
 
<extension point = "org.eclipse.compare.contentMergeViewers"> 
     <viewer 
         id="org.eclipse.compare.contentmergeviewer.TextMergeViewer" 
         class="org.eclipse.compare.internal.TextMergeViewerCreator" 
         extensions="txt"
         label="Text Compare" 
    /> 
</extension> 
API Information: 
The contributed class must implement org.eclipse.compare.IViewerCreator
Supplied Implementation: 
The Compare UI plugin defines content viewers for text, binary contents, and images.
Copyright (c) 2000, 2009 IBM Corporation and others.
This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at https://www.eclipse.org/legal/epl-v20.html/
SPDX-License-Identifier: EPL-2.0