Skip to main content
aboutsummaryrefslogtreecommitdiffstats
blob: 00ab897b6d5d1388aa9429a2e823f63fa6bd2318 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<!--
 Copyright (c) 2012, 2016 CEA, Christian W. Damus, and others.
 
 All rights reserved. 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-2.0/

 SPDX-License-Identifier: EPL-2.0
 
 Contributors:
   CEA - Initial API and implementation
   Christian W. Damus (CEA) - bug 323802
   Christian W. Damus (CEA) - bug 408491
   Christian W. Damus (CEA) - bug 431953 (pre-requisite refactoring of ModelSet service start-up)
   Christian W. Damus - bug 485220
   
-->
<plugin>
   <extension
         point="org.eclipse.papyrus.infra.services.labelprovider.labelProvider">
      <labelProvider
            priority="110"
            provider="org.eclipse.papyrus.infra.ui.emf.providers.ResourceFilteredLabelProvider">
      </labelProvider>
      <labelProvider
            priority="100"
            provider="org.eclipse.papyrus.infra.ui.emf.providers.EMFFilteredLabelProvider">
      </labelProvider>
      <labelProvider
            priority="50"
            provider="org.eclipse.papyrus.infra.ui.emf.providers.AnyTypeLabelProvider">
      </labelProvider>
   </extension>
   <extension
         point="org.eclipse.core.runtime.adapters">
      <factory
            adaptableType="org.eclipse.emf.ecore.EObject"
            class="org.eclipse.papyrus.infra.ui.emf.adapters.EObjectAdapterFactory">
         <adapter
               type="org.eclipse.papyrus.infra.widgets.creation.IAtomicOperationExecutor">
         </adapter>
      </factory>
   </extension>

   <extension
         point="org.eclipse.ui.commands">
      <command
            description="Enable write"
            categoryId="org.eclipse.papyrus.editor.category"            
            id="org.eclipse.papyrus.infra.emf.readonly.EnableWriteCommand"
            name="Enable write">
      </command>
   </extension>
   
   <extension
		point="org.eclipse.ui.menus">
	<menuContribution
       allPopups="false"
       locationURI="popup:org.eclipse.papyrus.views.modelexplorer.modelexplorer.popup?after=tools">
        <command commandId="org.eclipse.papyrus.infra.emf.readonly.EnableWriteCommand"
			icon="icons/enable_write.png"
			label="Enable write"
			style="push"
			tooltip="Enable write">
			<visibleWhen>
				<reference definitionId="org.eclipse.papyrus.ui.semanticModelActive"/>
			</visibleWhen>
		</command>
	</menuContribution>
		
	<menuContribution locationURI="popup:org.eclipse.gmf.runtime.diagram.ui.DiagramEditorContextMenu?endof=fileMenu"
		allPopups="false">
		<command commandId="org.eclipse.papyrus.infra.emf.readonly.EnableWriteCommand"
			icon="icons/enable_write.png"
			label="Enable write"
			style="push"
			tooltip="Enable write">
			<visibleWhen>
				<reference definitionId="org.eclipse.papyrus.ui.semanticModelActive"/>
			</visibleWhen>
		</command>
	</menuContribution>

	<menuContribution locationURI="toolbar:org.eclipse.ui.main.toolbar?after=additions">
	<toolbar id="org.eclipse.papyrus.infra.emf.readonly.toolbar">
		<command commandId="org.eclipse.papyrus.infra.emf.readonly.EnableWriteCommand"
			icon="icons/enable_write.png"
			label="Enable write"
			style="push"
			tooltip="Enable write">
			<visibleWhen>
				<reference definitionId="org.eclipse.papyrus.ui.semanticModelActive"/>
			</visibleWhen>
		</command>
	</toolbar>
	</menuContribution>
   </extension>
   <extension
         point="org.eclipse.ui.handlers">
      <handler
            class="org.eclipse.papyrus.infra.ui.internal.emf.readonly.handlers.EnableWriteCommandHandler"
            commandId="org.eclipse.papyrus.infra.emf.readonly.EnableWriteCommand">
         <enabledWhen>
            <and>
               <with variable="activeEditorId">
                  <equals value="org.eclipse.papyrus.infra.core.papyrusEditor"/>
               </with>
               <with
                     variable="selection">
                  <test
                        property="org.eclipse.papyrus.infra.emf.readonly.tester.isReadOnly"
                        value="true">
                  </test>
                  <count
                        value="1">
                  </count>
               </with>
            </and>
         </enabledWhen>
      </handler>
   </extension>
   <extension
         point="org.eclipse.core.expressions.propertyTesters">
      <propertyTester
            class="org.eclipse.papyrus.infra.ui.internal.emf.expressions.ReadOnlyTester"
            id="org.eclipse.papyrus.infra.ui.emf.readonly.tester"
            namespace="org.eclipse.papyrus.infra.emf.readonly.tester"
            properties="isReadOnly,canMakeWritable"
            type="org.eclipse.jface.viewers.IStructuredSelection">
      </propertyTester>
   </extension>
   
   <extension
         point="org.eclipse.papyrus.infra.emf.readonly.readOnlyHandler">
      <readOnlyHandler
            class="org.eclipse.papyrus.infra.ui.internal.emf.readonly.handlers.ReferencedModelReadOnlyHandler"
            id="org.eclipse.papyrus.infra.ui.emf.readonly.ReferencedModelReadOnlyHandler"
            priority="15">
         <affinity
               axis="discretion">
         </affinity>
      </readOnlyHandler>
      <readOnlyHandler
            class="org.eclipse.papyrus.infra.ui.internal.emf.readonly.handlers.FSReadOnlyHandler"
            id="org.eclipse.papyrus.infra.ui.emf.readonly.FSReadOnlyHandler"
            priority="10">
         <affinity
               axis="permission">
         </affinity>
      </readOnlyHandler>
   </extension>
</plugin>

Back to the top