[458147] Apply three-way merging also for rejecting attribute changes
[EMFCompare2.git] / plugins / org.eclipse.emf.compare.ide.ui / plugin.xml
blob1e01b9ab062f8933aeb65a9ec2c50de820f1495b
1 <?xml version="1.0" encoding="UTF-8"?>
2 <?eclipse version="3.4"?>
4 <!--
5  Copyright (c) 2012, 2014 Obeo.
6  All rights reserved. This program and the accompanying materials
7  are made available under the terms of the Eclipse Public License v1.0
8  which accompanies this distribution, and is available at
9  http://www.eclipse.org/legal/epl-v10.html
11  Contributors:
12      Obeo - initial API and implementation
13 -->
15 <plugin>
16    <extension-point id="modelResolvers" name="Model Resolvers" schema="schema/modelResolvers.exsd"/>
17    <extension-point id="logicalModelViewHandlers" name="Logical Model View Handlers" schema="schema/logicalModelViewHandlers.exsd"/>
18    
19    <extension
20          point="org.eclipse.compare.structureMergeViewers">
21       <viewer
22             class="org.eclipse.emf.compare.ide.ui.internal.structuremergeviewer.EMFCompareStructureMergeViewerCreator"
23             extensions="NODE_TYPE__EMF_EOBJECT,NODE_TYPE__EMF_RESOURCE,NODE_TYPE__EMF_RESOURCESET,NODE_TYPE__EMF_COMPARISON"
24             id="org.eclipse.emf.compare.ide.ui.internal.structureMergeViewer"
25             label="%emf.compare.structure.merge.viewer">
26       </viewer>
27       <contentTypeBinding
28             contentTypeId="org.eclipse.emf.ecore.xmi"
29             structureMergeViewerId="org.eclipse.emf.compare.ide.ui.internal.structureMergeViewer">
30       </contentTypeBinding>
31       <contentTypeBinding
32             contentTypeId="org.eclipse.emf.compare.content.type"
33             structureMergeViewerId="org.eclipse.emf.compare.ide.ui.internal.structureMergeViewer">
34       </contentTypeBinding>
35    </extension>
36    <extension
37          point="org.eclipse.compare.contentMergeViewers">
38       <viewer
39             class="org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.tree.TreeContentMergeViewerCreator"
40             extensions=
41             "org.eclipse.emf.compare.rcp.ui.eTreeDiff,
42             org.eclipse.emf.compare.rcp.ui.eMatch,
43             org.eclipse.emf.compare.rcp.ui.eResourceDiff,
44             NODE_TYPE__EMF_EOBJECT,
45             NODE_TYPE__EMF_RESOURCE,
46             NODE_TYPE__EMF_RESOURCESET,
47             NODE_TYPE__EMF_COMPARISON"
48             id="org.eclipse.emf.compare.ide.ui.internal.EObjectContentMergeViewer"
49             label="%model.compare.containment.feature">
50       </viewer>
51       <viewer
52             class="org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.table.TableContentMergeViewerCreator"
53             extensions="org.eclipse.emf.compare.rcp.ui.eListDiff"
54             id="org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.EObjectListContentMergeViewer"
55             label="%model.compare.non.containment.feature">
56       </viewer>
57       <viewer
58             class="org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.text.EMFCompareTextMergeViewerCreator"
59             extensions="org.eclipse.emf.compare.rcp.ui.eTextDiff"
60             id="org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.text.EMFCompareTextContentMergeViewer"
61             label="%model.compare.text.feature">
62       </viewer>
63       <viewer
64             class="org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.label.LabeledViewerCreator"
65             extensions="org.eclipse.emf.compare.rcp.ui.eWait"
66             id="org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.WaitViewer"
67             label="%emf.compare.wait.viewer">
68       </viewer>
69       <viewer
70             class="org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.label.NoDifferencesViewerCreator"
71             extensions="org.eclipse.emf.compare.rcp.ui.eNoDiff"
72             id="org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.NoDifferencesViewer"
73             label="%emf.compare.no.differences.viewer">
74       </viewer>
75       <viewer
76             class="org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.label.NoVisibleItemViewerCreator"
77             extensions="org.eclipse.emf.compare.rcp.ui.eNoVisibleItem"
78             id="org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.NoVisibleItemViewer"
79             label="%emf.compare.no.visible.item.viewer">
80       </viewer>
81       <viewer
82             class="org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.TextFallbackCompareViewerCreator"
83             extensions=
84             "org.eclipse.emf.compare.rcp.ui.fallbackText,
85             org.eclipse.emf.compare.rcp.ui.eTreeDiff,
86             org.eclipse.emf.compare.rcp.ui.eMatch,
87             org.eclipse.emf.compare.rcp.ui.eResourceDiff,
88             org.eclipse.emf.compare.rcp.ui.eListDiff,
89             org.eclipse.emf.compare.rcp.ui.eTextDiff,
90             org.eclipse.emf.compare.rcp.ui.eNoDiff,
91             org.eclipse.emf.compare.rcp.ui.eNoVisibleItem"
92             id="org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.TextFallbackCompareViewer"
93             label="%emf.compare.fallback.textcompare">
94       </viewer>
95       <contentTypeBinding
96             contentTypeId="org.eclipse.emf.ecore.xmi"
97             contentMergeViewerId="org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.WaitViewer">
98       </contentTypeBinding>
99       <contentTypeBinding
100             contentTypeId="org.eclipse.emf.compare.content.type"
101             contentMergeViewerId="org.eclipse.emf.compare.ide.ui.internal.contentmergeviewer.WaitViewer">
102       </contentTypeBinding>
103    </extension>
104    <extension
105          point="org.eclipse.emf.edit.itemProviderAdapterFactories">
106       <factory
107             class="org.eclipse.emf.compare.ide.ui.internal.structuremergeviewer.provider.TreeCompareInputAdapterFactory"
108             supportedTypes="org.eclipse.compare.structuremergeviewer.ICompareInput"
109             uri="http://www.eclipse.org/emf/2002/Tree">
110       </factory>
111    </extension>
112    <extension
113          point="org.eclipse.ui.views">
114       <category
115             id="org.eclipse.emf.compare.category"
116             name="EMF Compare">
117       </category>
118       <view
119             allowMultiple="false"
120             category="org.eclipse.emf.compare.category"
121             class="org.eclipse.emf.compare.ide.ui.internal.logical.view.LogicalModelView"
122             icon="icons/full/eobj16/emfcompare-icon.gif"
123             id="org.eclipse.emf.compare.ide.ui.logicalmodel.view"
124             name="Logical Model View"
125             restorable="true">
126       </view>
127    </extension>
128    <extension
129          point="org.eclipse.ui.navigator.viewer">
130       <viewer
131             viewerId="org.eclipse.emf.compare.ide.ui.logicalmodel.view">
132          <popupMenu
133                allowsPlatformContributions="true"
134                id="org.eclipse.emf.compare.ide.ui.logicalmodel.view#PopupMenu">
135             <insertionPoint
136                   name="group.open"
137                   separator="true">
138             </insertionPoint>
139             <insertionPoint
140                   name="group.openWith">
141             </insertionPoint>
142             <insertionPoint
143                   name="group.show"
144                   separator="true">
145             </insertionPoint>
146             <insertionPoint
147                   name="additions"
148                   separator="true">
149             </insertionPoint>
150             <insertionPoint
151                   name="group.properties"
152                   separator="true">
153             </insertionPoint>
154          </popupMenu>
155          <options>
156             <property
157                   name="org.eclipse.ui.navigator.hideLinkWithEditorAction"
158                   value="true">
159             </property>
160             <property
161                   name="org.eclipse.ui.navigator.hideCollapseAllAction"
162                   value="true">
163             </property>
164             <property
165                   name="org.eclipse.ui.navigator.customizeViewDialogHelpContext"
166                   value="false">
167             </property>
168          </options>
169       </viewer>
170       <viewerActionBinding
171             viewerId="org.eclipse.emf.compare.ide.ui.logicalmodel.view">
172          <includes>
173             <actionExtension
174                   pattern="org.eclipse.ui.navigator.resources.OpenActions">
175             </actionExtension>
176             <actionExtension
177                   pattern="org.eclipse.ui.navigator.resources.PropertiesActionProvider">
178             </actionExtension>
179          </includes>
180          <excludes>
181             <actionExtension
182                   pattern="org.eclipse.ui.navigator.resources.GotoActions">
183             </actionExtension>
184             <actionExtension
185                   pattern="org.eclipse.ui.navigator.resources.PortingActions">
186             </actionExtension>
187             <actionExtension
188                   pattern="org.eclipse.ui.navigator.resources.NewActions">
189             </actionExtension>
190             <actionExtension
191                   pattern="org.eclipse.ui.navigator.resources.WorkManagementActionProvider">
192             </actionExtension>
193             <actionExtension
194                   pattern="org.eclipse.ui.navigator.resources.ResourceMgmtActions">
195             </actionExtension>
196             <actionExtension
197                   pattern="org.eclipse.ui.navigator.resources.UndoRedoActionProvider">
198             </actionExtension>
199             <actionExtension
200                   pattern="org.eclipse.ui.navigator.resources.WorkingSetActions">
201             </actionExtension></excludes>
202       </viewerActionBinding>
203       <viewerContentBinding
204             viewerId="org.eclipse.emf.compare.ide.ui.logicalmodel.view">
205          <includes>
206             <contentExtension
207                   pattern="org.eclipse.ui.navigator.resourceContent">
208             </contentExtension>
209          </includes>
210       </viewerContentBinding>
211    </extension>
212       <extension
213          point="org.eclipse.ui.menus">
214       <menuContribution
215             allPopups="true"
216             locationURI="popup:compareWithMenu?after=compareWithGroup">
217          <command
218                commandId="org.eclipse.emf.compare.ide.ui.compareInDialog"
219                label="%command.each.other.in.dialog"
220                style="push">
221             <visibleWhen
222                   checkEnabled="true">
223             </visibleWhen>
224          </command>
225          <command
226                commandId="org.eclipse.emf.compare.ide.ui.compareInEditor"
227                label="%command.each.other.in.editor"
228                style="push">
229             <visibleWhen
230                   checkEnabled="true">
231             </visibleWhen>
232          </command>
233       </menuContribution>
234       <menuContribution
235             allPopups="false"
236             locationURI="popup:org.eclipse.ui.popup.any">
237          <menu
238                id="compareWithMenu"
239                label="%compare.with.label">
240             <separator
241                   name="compareWithGroup">
242             </separator>
243          </menu>
244       </menuContribution>
245       <menuContribution
246             allPopups="false"
247             locationURI="toolbar:org.eclipse.emf.compare.structuremergeviewer.toolbar">
248       </menuContribution>
249    </extension>
250    <extension
251          point="org.eclipse.ui.commands">
252       <command
253             categoryId="org.eclipse.compare.ui.category.compare"
254             id="org.eclipse.emf.compare.ide.ui.compareInDialog"
255             name="Compare in Dialog">
256       </command>
257       <command
258             categoryId="org.eclipse.compare.ui.category.compare"
259             id="org.eclipse.emf.compare.ide.ui.compareInEditor"
260             name="Compare in new Editor">
261       </command>
262       <command
263             id="org.eclipse.team.ui.compareWithEachOther"
264             name="Each Other">
265       </command>
266    </extension>
267    <extension
268          point="org.eclipse.ui.handlers">
269       <handler
270             class="org.eclipse.emf.compare.ide.ui.internal.handler.CompareInDialog"
271             commandId="org.eclipse.emf.compare.ide.ui.compareInDialog">
272          <activeWhen>
273             <with
274                   variable="selection">
275                <and>
276                   <iterate
277                         ifEmpty="false"
278                         operator="and">
279                      <instanceof
280                            value="org.eclipse.emf.ecore.EObject">
281                      </instanceof>
282                   </iterate>
283                   <or>
284                      <count
285                            value="2">
286                      </count>
287                      <count
288                            value="3">
289                      </count>
290                   </or>
291                </and>
292             </with>
293          </activeWhen>
294       </handler>
295       <handler
296             class="org.eclipse.emf.compare.ide.ui.internal.handler.CompareInNewEditor"
297             commandId="org.eclipse.emf.compare.ide.ui.compareInEditor">
298          <activeWhen>
299             <with
300                   variable="selection">
301                <and>
302                   <iterate
303                         ifEmpty="false"
304                         operator="and">
305                      <instanceof
306                            value="org.eclipse.emf.ecore.EObject">
307                      </instanceof>
308                   </iterate>
309                   <or>
310                      <count
311                            value="2">
312                      </count>
313                      <count
314                            value="3">
315                      </count>
316                   </or>
317                </and>
318             </with>
319          </activeWhen>
320       </handler>
321       <handler
322             class="org.eclipse.emf.compare.ide.ui.internal.handler.CompareInDialog"
323             commandId="org.eclipse.team.ui.compareWithEachOther">
324          <activeWhen>
325             <with
326                   variable="selection">
327                <and>
328                   <iterate
329                         ifEmpty="false"
330                         operator="and">
331                      <instanceof
332                            value="org.eclipse.emf.ecore.EObject">
333                      </instanceof>
334                   </iterate>
335                   <or>
336                      <count
337                            value="2">
338                      </count>
339                      <count
340                            value="3">
341                      </count>
342                   </or>
343                </and>
344             </with>
345          </activeWhen>
346       </handler>
347    </extension>
348    <extension
349          id="org.eclipse.emf.compare.model.provider"
350          name="EMF Compare"
351          point="org.eclipse.core.resources.modelProviders">
352       <modelProvider
353             class="org.eclipse.emf.compare.ide.ui.internal.logical.EMFModelProvider">
354       </modelProvider>
355       <enablement>
356          <and>
357             <adapt
358                   type="org.eclipse.core.resources.IFile">
359             </adapt>
360             <or>
361                <test
362                      args="kindOf"
363                      property="org.eclipse.core.resources.contentTypeId"
364                      value="org.eclipse.emf.ecore">
365                </test>
366                <test
367                      args="kindOf"
368                      property="org.eclipse.core.resources.contentTypeId"
369                      value="org.eclipse.emf.ecore.xmi">
370                </test>
371                <test
372                      args="kindOf"
373                      property="org.eclipse.core.resources.contentTypeId"
374                      value="org.eclipse.emf.compare.content.type">
375                </test>
376             </or>
377          </and>
378       </enablement>
379       <extends-model
380             id="org.eclipse.core.resources.modelProvider">
381       </extends-model>
382    </extension>
383    <extension
384          point="org.eclipse.emf.compare.ide.ui.modelResolvers">
385       <resolver
386             class="org.eclipse.emf.compare.ide.ui.internal.logical.resolver.ThreadedModelResolver"
387             description="%resolver.threadedModelResolver.description"
388             label="%resolver.threadedModelResolver.label"
389             ranking = "0">
390       </resolver>
391    </extension>
392    <extension
393          point="org.eclipse.ui.preferencePages">
394       <page
395             category="org.eclipse.emf.compare.rcp.ui.preferencePage.global"
396             class="org.eclipse.emf.compare.ide.ui.internal.preferences.ModelResolutionPreferencePage"
397             id="org.eclipse.emf.compare.ide.ui.preferencepage.resolvers"
398             name="Resolution strategy">
399       </page>
400    </extension>
401    <extension
402          point="org.eclipse.core.runtime.preferences">
403       <initializer
404             class="org.eclipse.emf.compare.ide.ui.internal.preferences.EMFCompareUIPreferencesInitializer">
405       </initializer>
406    </extension>
407    <extension
408          point="org.eclipse.core.runtime.adapters">
409       <factory
410             adaptableType="org.eclipse.emf.compare.ide.ui.internal.logical.EMFModelProvider"
411             class="org.eclipse.emf.compare.ide.ui.internal.logical.EMFLogicalModelAdapterFactory">
412          <adapter
413                type="org.eclipse.team.core.mapping.IResourceMappingMerger">
414          </adapter>
415       </factory>
416    </extension>
417    <extension
418          point="org.eclipse.emf.compare.ide.ui.logicalModelViewHandlers">
419       <handler
420             class="org.eclipse.emf.compare.ide.ui.internal.logical.view.EMFCompareEditorLMVHandler"
421             ranking="20">
422       </handler>
423       <handler
424             class="org.eclipse.emf.compare.ide.ui.internal.logical.view.EMFReflectiveEditorLMVHandler"
425             ranking="10">
426       </handler>
427       <handler
428             class="org.eclipse.emf.compare.ide.ui.internal.logical.view.ExplorersViewSelectionLMVHandler"
429             ranking="10">
430       </handler>
431    </extension>
432 </plugin>