c6596a7b0c73749a619ce2baa827bc621576778f
[simantics/platform.git] / bundles / org.simantics.modeling.ui / plugin.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <plugin>
3
4    <extension
5          point="org.eclipse.core.expressions.propertyTesters">
6       <propertyTester
7             properties="nodeClass,deletable,modifiable,refreshable"
8             namespace="org.simantics.modeling.ui"
9             type="org.eclipse.jface.viewers.IStructuredSelection"
10             class="org.simantics.browsing.ui.swt.NodePropertyTester"
11             id="org.simantics.browsing.ui.nodePropertyTester">
12       </propertyTester>
13       <propertyTester
14             properties="partOf"
15             namespace="org.simantics.modeling.componentType"
16             type="java.lang.Object"
17             class="org.simantics.modeling.ui.property.ComponentTypePropertyTester"
18             id="org.simantics.modeling.componentTypePropertyTester">
19       </propertyTester>
20       <propertyTester
21             properties="hasActiveModelsOfType"
22             namespace="org.simantics.modeling.model"
23             type="java.lang.Object"
24             class="org.simantics.modeling.ui.property.ModelPropertyTester"
25             id="org.simantics.modeling.modelPropertyTester">
26       </propertyTester>
27       <propertyTester
28             properties="isMasterEditor,isInstanceEditor"
29             namespace="org.simantics.modeling.typical"
30             type="org.eclipse.ui.IEditorPart"
31             class="org.simantics.modeling.ui.property.TypicalPropertyTester"
32             id="org.simantics.modeling.typicalPropertyTester">
33       </propertyTester>
34    </extension>
35    <extension
36          point="org.eclipse.ui.perspectives">
37    </extension>
38    <extension
39          point="org.eclipse.ui.perspectiveExtensions">
40    </extension>
41    <extension
42          point="org.eclipse.ui.views">
43       <view
44             name="Diagram Tools"
45             icon="platform:/plugin/com.famfamfam.silk/icons/wrench.png"
46             category="org.simantics.diagram.views"
47             class="org.simantics.modeling.ui.diagramEditor.tools.DiagramToolViewPart"
48             restorable="true"
49             id="org.simantics.modeling.ui.diagramtool">
50       </view>
51       <view
52             allowMultiple="true"
53             name="Change Information"
54             icon="platform:/plugin/com.famfamfam.silk/icons/report.png"
55             category="org.simantics.modeling.category"
56             class="org.simantics.modeling.ui.view.ChangeInformationView"
57             id="org.simantics.modeling.changeInformation">
58       </view>
59    </extension>
60    <extension
61          point="org.eclipse.ui.editors">
62       <editor
63             name="Diagram Editor"
64             icon="icons/shape_square.png"
65             class="org.simantics.modeling.ui.diagramEditor.DiagramEditor:viewer=org.simantics.modeling.ui.diagramEditor.DiagramViewer"
66             contributorClass="org.simantics.modeling.ui.diagramEditor.DiagramViewerActionContributor"
67             matchingStrategy="org.simantics.ui.workbench.editor.input.ResourceEditorInputMatchingStrategy"
68             id="org.simantics.modeling.ui.diagramEditor">
69       </editor>
70       <editor
71             name="Diagram Editor (plain)"
72             icon="icons/shape_square.png"
73             class="org.simantics.modeling.ui.diagramEditor.DiagramEditor:viewer=org.simantics.modeling.ui.diagramEditor.PlainDiagramViewer"
74             contributorClass="org.simantics.modeling.ui.diagramEditor.DiagramViewerActionContributor"
75             matchingStrategy="org.simantics.ui.workbench.editor.input.ResourceEditorInputMatchingStrategy"
76             id="org.simantics.modeling.ui.plainDiagramEditor">
77       </editor>
78       <editor
79             name="Symbol Editor"
80             icon="icons/photo.png"
81             class="org.simantics.modeling.ui.diagramEditor.DiagramEditor:viewer=org.simantics.modeling.ui.symbolEditor.SymbolViewer"
82             matchingStrategy="org.simantics.ui.workbench.editor.input.ResourceEditorInputMatchingStrategy"
83             id="org.simantics.modeling.ui.symbolEditor">
84       </editor>
85       <editor
86             default="false"
87             name="User Component Editor"
88             icon="icons/box.png"
89             class="org.simantics.modeling.ui.componentTypeEditor.ComponentTypeEditor"
90             id="org.simantics.modeling.ui.componentTypeEditor">
91       </editor>
92       <editor
93             default="false"
94             name="Ontology Definition File Editor"
95             icon="icons/box.png"
96             class="org.simantics.modeling.ui.componentTypeEditor.PGraphEditor"
97             id="org.simantics.modeling.ui.pgraphEditor">
98       </editor>
99       <editor
100             default="false"
101             name="SCL Query Editor"
102             icon="icons/box.png"
103             class="org.simantics.modeling.ui.componentTypeEditor.SCLQueryEditor"
104             id="org.simantics.modeling.ui.sclQueryEditor">
105       </editor>
106       <editor
107             default="false"
108             name="Procedural User Component Code Editor"
109             icon="icons/book_open.png"
110             class="org.simantics.modeling.ui.componentTypeEditor.ProceduralComponentTypeCodeEditor"
111             id="org.simantics.modeling.ui.proceduralComponentTypeCodeEditor">
112       </editor>
113       <editor
114             class="org.simantics.modeling.ui.componentTypeEditor.SymbolCodeEditor"
115             default="false"
116             icon="icons/book_open.png"
117             id="org.simantics.modeling.ui.symbolCodeEditor"
118             name="Symbol Code Editor">
119       </editor>
120       <editor
121             class="org.simantics.modeling.ui.componentTypeEditor.SymbolDropHandlerEditor"
122             default="false"
123             icon="icons/book_open.png"
124             id="org.simantics.modeling.ui.symbolDropHandlerEditor"
125             name="Symbol Drop Handler Code Editor">
126       </editor>
127       <editor
128             default="false"
129             name="Procedural User Component Instance Viewer"
130             icon="icons/shape_3d_gray.png"
131             class="org.simantics.modeling.ui.componentTypeEditor.ProceduralComponentInstanceViewer"
132             id="org.simantics.modeling.ui.proceduralComponentInstanceViewer">
133       </editor>
134       <editor
135             default="true"
136             name="User Component Script Editor"
137             icon="icons/book_open.png"
138             class="org.simantics.modeling.ui.componentTypeEditor.ComponentTypeScriptEditor"
139             id="org.simantics.modeling.ui.componentTypeScriptEditor">
140       </editor>
141    </extension>
142    <extension
143          point="org.eclipse.core.expressions.definitions">
144       <definition
145             id="org.simantics.modeling.ui.diagram.editorActive">
146          <with
147                variable="activeEditor">
148             <instanceof
149                   value="org.simantics.modeling.ui.diagramEditor.DiagramEditor">
150             </instanceof>
151          </with>
152       </definition>
153       <definition
154             id="org.simantics.modeling.ui.inSCLModuleEditor">
155          <with
156                variable="activePartId">
157             <equals
158                   value="org.simantics.modeling.ui.sclModuleEditor2">
159             </equals>
160          </with>
161       </definition>
162       <definition
163             id="org.simantics.modeling.ui.inPGraphEditor">
164          <with variable="activePartId">
165             <equals
166                   value="org.simantics.modeling.ui.pgraphEditor">
167             </equals>
168          </with>
169       </definition>
170       <definition
171             id="org.simantics.modeling.ui.inSCLQueryEditor">
172          <with
173                variable="activePartId">
174             <equals
175                   value="org.simantics.modeling.ui.sclQueryEditor">
176             </equals>
177          </with>
178       </definition>
179    </extension>
180    <extension
181          point="org.eclipse.ui.commands">
182       <category
183             name="Modeling Commands"
184             id="org.simantics.modeling.ui.category">
185       </category>
186       <category
187             name="Data Category"
188             id="org.simantics.data.category">
189       </category>
190       <command
191             name="Pin Selection"
192             categoryId="org.simantics.modeling.ui.category"
193             id="org.simantics.modeling.ui.pinSelection">
194       </command>
195       <command
196             name="Create Issue"
197             categoryId="org.simantics.modeling.ui.category"
198             id="org.simantics.modeling.ui.createIssue">
199       </command>
200       <command
201             name="Help"
202             categoryId="org.simantics.modeling.ui.category"
203             id="org.simantics.modeling.ui.contextualHelp">
204       </command>
205       <command
206             name="Toggle Flag External State"
207             categoryId="org.simantics.modeling.ui.category"
208             id="org.simantics.modeling.ui.toggleExternalFlag">
209       </command>
210       <command
211             name="Duplicate View and Pin Selection"
212             categoryId="org.simantics.modeling.ui.category"
213             id="org.simantics.modeling.ui.duplicatePinnedView">
214       </command>
215       <command
216             name="Open"
217             categoryId="org.simantics.modeling.ui.category"
218             id="org.simantics.modeling.ui.open">
219       </command>
220       <!--<command
221             name="Import image from SVG file"
222             categoryId="org.simantics.modeling.ui.category"
223             id="org.simantics.modeling.ui.importSVG">
224       </command>-->
225       <command
226             name="Create Rectangle"
227             categoryId="org.simantics.modeling.ui.category"
228             id="org.simantics.modeling.ui.createRectangle">
229       </command>
230       <command
231             name="Create Ellipse"
232             categoryId="org.simantics.modeling.ui.category"
233             id="org.simantics.modeling.ui.createEllipse">
234       </command>
235       <command
236             name="Create Path"
237             categoryId="org.simantics.modeling.ui.category"
238             id="org.simantics.modeling.ui.createPath">
239       </command>
240       <command
241             name="Create Text"
242             categoryId="org.simantics.modeling.ui.category"
243             id="org.simantics.modeling.ui.createText">
244       </command>
245       <command
246             name="New Experiment"
247             categoryId="org.simantics.modeling.ui.category"
248             id="org.simantics.modeling.ui.newExperiment">
249       </command>
250       <command
251             name="New State"
252             categoryId="org.simantics.modeling.ui.category"
253             id="org.simantics.modeling.ui.newState">
254       </command>
255       <command
256             name="New Spreadsheet"
257             categoryId="org.simantics.modeling.ui.category"
258             id="org.simantics.modeling.ui.newSpreadsheet">
259       </command>
260       <command
261             name="New Chart"
262             categoryId="org.simantics.modeling.ui.category"
263             id="org.simantics.modeling.ui.newChart">
264       </command>
265       <command
266             name="New Chart Group"
267             categoryId="org.simantics.modeling.ui.category"
268             id="org.simantics.modeling.ui.newChartGroup">
269       </command>
270       <command
271             name="New Subscription"
272             categoryId="org.simantics.modeling.ui.category"
273             id="org.simantics.modeling.ui.newSubscription">
274       </command>
275       <command
276             name="Restore Default Value"
277             categoryId="org.simantics.modeling.ui.category"
278             id="org.simantics.modeling.ui.properties.restoreDefaultValue">
279       </command>
280       <command
281             name="Activate Filter"
282             categoryId="org.simantics.modeling.ui.category"
283             id="org.simantics.modeling.ui.activateFilter">
284       </command>
285       <command
286             name="Expand Selection"
287             description="Expand current selection to neighboring connections and nodes"
288             categoryId="org.simantics.modeling.ui.category"
289             id="expandSelection">
290       </command>
291       <!--<command
292             name="Edit Style"
293             categoryId="org.simantics.modeling.ui.category"
294             id="org.simantics.modeling.ui.editStyle">
295       </command>
296       <command
297             name="Page Settings"
298             categoryId="org.simantics.modeling.ui.category"
299             id="org.simantics.modeling.ui.pagesettings">
300       </command>-->
301       <command
302             name="Align Vertical"
303             categoryId="org.simantics.modeling.ui.category"
304             id="org.simantics.modeling.ui.alignvert">
305       </command>
306       <command
307             name="Align Horizontal"
308             categoryId="org.simantics.modeling.ui.category"
309             id="org.simantics.modeling.ui.alignhoriz">
310       </command>
311       <command
312             defaultHandler="org.simantics.modeling.ui.actions.ValidateMappingHandler"
313             name="Validate Mapping"
314             id="org.simantics.modeling.ui.validateMapping">
315       </command>
316       <command
317             name="Alignment"
318             categoryId="org.simantics.modeling.ui.category"
319             id="org.simantics.modeling.ui.align">
320       </command>
321       <command
322             name="New User Component"
323             categoryId="org.simantics.modeling.ui.category"
324             id="org.simantics.modeling.ui.newComponentType">
325       </command>
326       <command
327             name="Create Terminal"
328             categoryId="org.simantics.modeling.ui.category"
329             id="org.simantics.modeling.ui.createConnectionPoint">
330       </command>
331       <command
332             name="Merge flags"
333             categoryId="org.simantics.diagram.category"
334             id="mergeFlags">
335       </command>
336       <command
337             name="Merge related flags"
338             categoryId="org.simantics.diagram.category"
339             id="mergeRelatedFlags">
340       </command>
341       <command
342             name="Expand flags"
343             categoryId="org.simantics.diagram.category"
344             id="expandFlags">
345       </command>
346       <command
347             name="Disconnect Flags"
348             description="Disconnects those flags from the current selection that are connected to counterparts."
349             categoryId="org.simantics.diagram.category"
350             id="org.simantics.modeling.ui.disconnectFlag">
351       </command>
352       <command
353             name="Synchronize All Master Templates in Active Model with All Instances"
354             categoryId="org.simantics.modeling.ui.category"
355             id="org.simantics.modeling.typical.sync.activeModel">
356       </command>
357       <command
358             name="Synchronize Current Typical Master Template with All Instances in Active Model"
359             categoryId="org.simantics.modeling.ui.category"
360             id="org.simantics.modeling.typical.sync.currentTemplate">
361       </command>
362       <command
363             name="Synchronize Current Typical Instance with Template"
364             categoryId="org.simantics.modeling.ui.category"
365             id="org.simantics.modeling.typical.sync.currentInstance">
366       </command>
367       <command
368             name="Toggle Real-time Typical Synchronization"
369             categoryId="org.simantics.modeling.ui.category"
370             id="org.simantics.modeling.typical.sync.toggleRealtime">
371       </command>
372    </extension>
373    <extension
374          point="org.eclipse.core.expressions.definitions">
375       <definition
376             id="org.simantics.modeling.browser.selection.deletable">
377          <and>
378             <with
379                   variable="activeContexts">
380                <iterate
381                      ifEmpty="false"
382                      operator="or">
383                   <equals
384                         value="org.simantics.modeling.ui.modelBrowser">
385                   </equals>
386                </iterate>
387             </with>
388             <with
389                   variable="selection">
390                <and>
391                   <test
392                         property="org.simantics.modeling.ui.deletable">
393                   </test>
394                </and>
395             </with>
396          </and>
397       </definition>
398       <definition
399             id="org.simantics.modeling.browser.selection.modifiable">
400          <and>
401             <with
402                   variable="activeContexts">
403                <iterate
404                      ifEmpty="false"
405                      operator="or">
406                   <equals
407                         value="org.simantics.modeling.ui.modelBrowser">
408                   </equals>
409                </iterate>
410             </with>
411             <with
412                   variable="selection">
413                <test
414                      property="org.simantics.modeling.ui.modifiable">
415                </test>
416             </with>
417          </and>
418       </definition>
419       <definition
420             id="org.simantics.modeling.browser.selection.refreshable">
421          <and>
422             <with
423                   variable="activeContexts">
424                <iterate
425                      ifEmpty="false"
426                      operator="or">
427                   <equals
428                         value="org.simantics.modeling.ui.modelBrowser">
429                   </equals>
430                </iterate>
431             </with>
432             <with
433                   variable="selection">
434                <test
435                      property="org.simantics.modeling.ui.refreshable">
436                </test>
437             </with>
438          </and>
439       </definition>
440       <definition
441             id="org.simantics.modeling.ui.modelBrowser.active">
442          <with
443                variable="activeContexts">
444             <and>
445                <iterate
446                      ifEmpty="false"
447                      operator="or">
448                   <equals
449                         value="org.simantics.modeling.ui.modelBrowser">
450                   </equals>
451                </iterate>
452                <iterate
453                      ifEmpty="false"
454                      operator="and">
455                   <not>
456                      <equals
457                            value="org.simantics.browsing.ui.inlineEditing">
458                      </equals>
459                   </not>
460                </iterate>
461             </and>
462          </with>
463       </definition>
464    </extension>
465    <extension
466          point="org.eclipse.ui.handlers">
467       <handler
468             commandId="org.eclipse.ui.edit.cut"
469             class="org.simantics.modeling.ui.modelBrowser.handlers.StandardCutHandler">
470          <activeWhen>
471             <reference
472                   definitionId="org.simantics.modeling.ui.modelBrowser.active">
473             </reference>
474          </activeWhen>
475       </handler>
476       <handler
477             commandId="org.eclipse.ui.edit.copy"
478             class="org.simantics.modeling.ui.modelBrowser.handlers.StandardCopyHandler">
479          <activeWhen>
480             <reference
481                   definitionId="org.simantics.modeling.ui.modelBrowser.active">
482             </reference>
483          </activeWhen>
484       </handler>
485       <handler
486             commandId="org.eclipse.ui.edit.paste"
487             class="org.simantics.modeling.ui.modelBrowser.handlers.StandardPasteHandler">
488          <activeWhen>
489             <reference
490                   definitionId="org.simantics.modeling.ui.modelBrowser.active">
491             </reference>
492          </activeWhen>
493       </handler>
494       <handler
495             commandId="org.simantics.modeling.ui.createIssue"
496             class="org.simantics.modeling.ui.modelBrowser.handlers.CreateIssue">
497          <enabledWhen>
498             <with
499                   variable="selection">
500                <and>
501                   <test
502                         args="http://www.simantics.org/Diagram-0.0/Element"
503                         property="org.simantics.graph.resourceType">
504                   </test>
505                   <test
506                         value="true"
507                         property="org.simantics.diagram.element.mapped">
508                   </test>
509                </and>
510             </with>
511          </enabledWhen>
512       </handler>
513       <handler
514             commandId="org.simantics.modeling.ui.contextualHelp"
515             class="org.simantics.modeling.ui.modelBrowser.handlers.ContextualHelp">
516          <activeWhen>
517             <with
518                   variable="selection">
519                <and>
520                   <test
521                         args="http://www.simantics.org/Diagram-0.0/Element"
522                         property="org.simantics.graph.resourceType">
523                   </test>
524                </and>
525             </with>
526          </activeWhen>
527       </handler>
528       <handler
529             commandId="org.simantics.modeling.ui.toggleExternalFlag"
530             class="org.simantics.modeling.ui.modelBrowser.handlers.ToggleExternalFlag">
531          <enabledWhen>
532             <with
533                   variable="selection">
534                <and>
535                   <test
536                         args="http://www.simantics.org/Diagram-0.0/Flag"
537                         property="org.simantics.graph.resourceType">
538                   </test>
539                   <test
540                         value="false"
541                         property="org.simantics.diagram.flag.connected">
542                   </test>
543                </and>
544             </with>
545          </enabledWhen>
546       </handler>
547       <handler
548             commandId="org.simantics.modeling.ui.newSubscription"
549             class="org.simantics.modeling.ui.modelBrowser.handlers.NewSubscriptionHandler">
550       </handler>
551       <handler
552             commandId="org.simantics.modeling.ui.pinSelection"
553             class="org.simantics.modeling.ui.actions.PinSelectionHandler">
554          <enabledWhen>
555             <test
556                   args="org.simantics.modeling.ui,property.pinmode"
557                   property="org.simantics.preference"
558                   value="Pin">
559             </test>
560          </enabledWhen>
561       </handler>
562       <handler
563             commandId="org.simantics.modeling.ui.duplicatePinnedView"
564             class="org.simantics.modeling.ui.actions.DuplicatePinnedViewHandler">
565       </handler>
566       <!--<handler
567             commandId="org.simantics.modeling.ui.importSVG"
568             class="org.simantics.modeling.ui.actions.ImportSVG">
569       </handler>-->
570       <handler
571             commandId="org.simantics.modeling.ui.createRectangle"
572             class="org.simantics.modeling.ui.actions.CreateRectangle">
573       </handler>
574       <handler
575             commandId="org.simantics.modeling.ui.createEllipse"
576             class="org.simantics.modeling.ui.actions.CreateEllipse">
577       </handler>
578       <handler
579             commandId="org.simantics.modeling.ui.createPath"
580             class="org.simantics.modeling.ui.actions.CreatePath">
581       </handler>
582       <handler
583             commandId="org.simantics.modeling.ui.createText"
584             class="org.simantics.modeling.ui.actions.CreateText">
585       </handler>
586       <handler
587             commandId="org.simantics.modeling.ui.newSpreadsheet"
588             class="org.simantics.modeling.ui.modelBrowser.handlers.NewSpreadsheetHandler">
589       </handler>
590       <handler
591             commandId="org.simantics.modeling.ui.properties.restoreDefaultValue"
592             class="org.simantics.modeling.ui.property.RestoreDefaultValueHandler">
593       </handler>
594       <handler
595             commandId="org.eclipse.ui.file.refresh"
596             class="org.simantics.modeling.ui.modelBrowser.handlers.RefreshNodeHandler">
597          <activeWhen>
598             <reference
599                   definitionId="org.simantics.modeling.browser.selection.refreshable">
600             </reference>
601          </activeWhen>
602       </handler>
603       <handler
604             commandId="org.simantics.modeling.ui.activateFilter"
605             class="org.simantics.modeling.ui.modelBrowser.handlers.ActivateFilterHandler">
606          <activeWhen>
607             <with
608                   variable="activeContexts">
609                <iterate
610                      operator="or">
611                   <or>
612                      <equals
613                            value="org.simantics.modeling.ui.modelBrowser">
614                      </equals>
615                      <equals
616                            value="org.simantics.modeling.ui.properties">
617                      </equals>
618                   </or>
619                </iterate>
620             </with>
621          </activeWhen>
622       </handler>
623       <handler
624             commandId="expandSelection"
625             class="org.simantics.diagram.handler.CanvasCommandDelegate">
626          <activeWhen>
627             <reference
628                   definitionId="org.simantics.modeling.ui.diagram.active">
629             </reference>
630          </activeWhen>
631       </handler>
632       <handler
633             commandId="org.eclipse.ui.edit.delete"
634             class="org.simantics.modeling.ui.modelBrowser.handlers.DeleteNodeHandler">
635          <activeWhen>
636             <reference
637                   definitionId="org.simantics.modeling.browser.selection.deletable">
638             </reference>
639          </activeWhen>
640       </handler>
641       <handler
642             commandId="org.eclipse.ui.edit.rename"
643             class="org.simantics.modeling.ui.modelBrowser.handlers.RenameNodeHandler">
644          <activeWhen>
645             <reference
646                   definitionId="org.simantics.modeling.browser.selection.modifiable">
647             </reference>
648          </activeWhen>
649       </handler>
650       <!--<handler
651             commandId="org.simantics.modeling.ui.editStyle"
652             class="org.simantics.modeling.ui.actions.EditStyleHandler">
653          <enabledWhen>
654             <and>
655                <with
656                      variable="selection">
657                   <iterate
658                         ifEmpty="false"
659                         operator="and">
660                      <test
661                            args="http://www.simantics.org/Diagram-0.0/StyleProvider"
662                            property="org.simantics.graph.resourceType">
663                      </test>
664                   </iterate>
665                </with>
666             </and>
667          </enabledWhen>
668       </handler>
669       <handler
670             commandId="org.simantics.modeling.ui.pagesettings"
671             class="org.simantics.modeling.ui.actions.PageSettingsHandler">
672          <enabledWhen>
673             <with
674                   variable="activePart">
675                <and>
676                   <instanceof
677                         value="org.simantics.modeling.ui.diagramEditor.DiagramEditor">
678                   </instanceof>
679                </and>
680             </with>
681          </enabledWhen>
682       </handler>-->
683       <handler
684             commandId="org.simantics.modeling.ui.alignvert"
685             class="org.simantics.modeling.ui.diagramEditor.handlers.AlignVerticalHandler">
686          <enabledWhen>
687             <with
688                   variable="activePart">
689                <and>
690                   <instanceof
691                         value="org.simantics.modeling.ui.diagramEditor.DiagramEditor">
692                   </instanceof>
693                </and>
694             </with>
695          </enabledWhen>
696       </handler>
697       <handler
698             commandId="org.simantics.modeling.ui.alignhoriz"
699             class="org.simantics.modeling.ui.diagramEditor.handlers.AlignHorizontalHandler">
700          <enabledWhen>
701             <with
702                   variable="activePart">
703                <and>
704                   <instanceof
705                         value="org.simantics.modeling.ui.diagramEditor.DiagramEditor">
706                   </instanceof>
707                </and>
708             </with>
709          </enabledWhen>
710       </handler>
711       <handler
712             commandId="org.eclipse.ui.edit.undo"
713             class="org.simantics.ui.workbench.handler.SessionUndoHandler">
714          <activeWhen>
715             <with
716                   variable="activeContexts">
717                <test
718                      property="org.simantics.ui.tester.canUndo">
719                </test>
720             </with>
721          </activeWhen>
722       </handler>
723       <handler
724             commandId="org.eclipse.ui.edit.redo"
725             class="org.simantics.ui.workbench.handler.SessionRedoHandler">
726          <activeWhen>
727             <with
728                   variable="activeContexts">
729                <test
730                      property="org.simantics.ui.tester.canRedo">
731                </test>
732             </with>
733          </activeWhen>
734       </handler>
735       <handler
736             commandId="org.eclipse.ui.edit.undo"
737             class="org.simantics.modeling.ui.componentTypeEditor.SCLEditorBaseUndoHandler">
738          <activeWhen>
739             <reference
740                   definitionId="org.simantics.modeling.ui.inSCLModuleEditor">
741             </reference>
742          </activeWhen>
743       </handler>
744       <handler
745             class="org.simantics.modeling.ui.componentTypeEditor.PGraphUndoHandler"
746             commandId="org.eclipse.ui.edit.undo">
747          <activeWhen>
748             <reference
749                   definitionId="org.simantics.modeling.ui.inPGraphEditor">
750             </reference>
751          </activeWhen>
752       </handler>
753       <handler
754             commandId="org.eclipse.ui.edit.redo"
755             class="org.simantics.modeling.ui.componentTypeEditor.SCLEditorBaseUndoHandler">
756          <activeWhen>
757             <reference
758                   definitionId="org.simantics.modeling.ui.inSCLModuleEditor">
759             </reference>
760          </activeWhen>
761       </handler>
762       <handler
763             class="org.simantics.modeling.ui.componentTypeEditor.PGraphUndoHandler"
764             commandId="org.eclipse.ui.edit.redo">
765          <activeWhen>
766             <reference
767                   definitionId="org.simantics.modeling.ui.inPGraphEditor">
768             </reference>
769          </activeWhen>
770       </handler>
771       <handler
772             commandId="org.eclipse.ui.edit.undo"
773             class="org.simantics.modeling.ui.componentTypeEditor.SCLEditorBaseUndoHandler">
774          <activeWhen>
775             <reference
776                   definitionId="org.simantics.modeling.ui.inSCLQueryEditor">
777             </reference>
778          </activeWhen>
779       </handler>
780       <handler
781             commandId="org.eclipse.ui.edit.redo"
782             class="org.simantics.modeling.ui.componentTypeEditor.SCLEditorBaseUndoHandler">
783          <activeWhen>
784             <reference
785                   definitionId="org.simantics.modeling.ui.inSCLQueryEditor">
786             </reference>
787          </activeWhen>
788       </handler>
789       <handler
790             commandId="org.simantics.modeling.ui.align"
791             class="org.simantics.modeling.ui.diagramEditor.handlers.AlignHandler">
792          <enabledWhen>
793             <with
794                   variable="activePart">
795                <and>
796                   <instanceof
797                         value="org.simantics.modeling.ui.diagramEditor.DiagramEditor">
798                   </instanceof>
799                </and>
800             </with>
801          </enabledWhen>
802       </handler>
803       <handler
804             commandId="org.simantics.modeling.ui.createConnectionPoint"
805             class="org.simantics.modeling.ui.modelBrowser.handlers.CreateConnectionPoint">
806          <enabledWhen>
807             <with
808                   variable="selection">
809                <iterate
810                      ifEmpty="false"
811                      operator="and">
812                   <and>
813                      <test
814                            args="http://www.simantics.org/Diagram-0.0/Flag"
815                            property="org.simantics.graph.resourceType">
816                      </test>
817                      <test
818                            property="org.simantics.diagram.flag.connected"
819                            value="false">
820                      </test>
821                      <test
822                            property="org.simantics.modeling.componentType.partOf"
823                            value="true">
824                      </test>
825                   </and>
826                </iterate>
827             </with>
828          </enabledWhen>
829       </handler>
830       <handler
831             commandId="mergeFlags"
832             class="org.simantics.modeling.ui.actions.MergeFlagsHandler">
833          <enabledWhen>
834             <with
835                   variable="selection">
836                <iterate
837                      ifEmpty="false"
838                      operator="and">
839                   <and>
840                      <test
841                            args="http://www.simantics.org/Diagram-0.0/Flag"
842                            property="org.simantics.graph.resourceType">
843                      </test>
844                      <test
845                            property="org.simantics.diagram.flag.connected"
846                            value="true">
847                      </test>
848                   </and>
849                </iterate>
850                <count
851                      value="(1-">
852                </count>
853             </with>
854          </enabledWhen>
855       </handler>
856       <handler
857             commandId="mergeRelatedFlags"
858             class="org.simantics.modeling.ui.actions.MergeRelatedFlagsHandler">
859          <activeWhen>
860             <with
861                   variable="selection">
862                <iterate
863                      ifEmpty="false"
864                      operator="and">
865                   <and>
866                      <test
867                            args="http://www.simantics.org/Diagram-0.0/Flag"
868                            property="org.simantics.graph.resourceType">
869                      </test>
870                      <test
871                            property="org.simantics.diagram.flag.connected"
872                            value="true">
873                      </test>
874                   </and>
875                </iterate>
876             </with>
877          </activeWhen>
878       </handler>
879       <handler
880             commandId="expandFlags"
881             class="org.simantics.modeling.ui.actions.ExpandFlagsHandler">
882          <activeWhen>
883             <with
884                   variable="selection">
885                <iterate
886                      ifEmpty="false"
887                      operator="and">
888                   <and>
889                      <test
890                            args="http://www.simantics.org/Diagram-0.0/Flag"
891                            property="org.simantics.graph.resourceType">
892                      </test>
893                      <test
894                            property="org.simantics.diagram.flag.connected"
895                            value="true">
896                      </test>
897                      <test
898                            property="org.simantics.diagram.flag.merged"
899                            value="true">
900                      </test>
901                   </and>
902                </iterate>
903             </with>
904          </activeWhen>
905       </handler>
906       <handler
907             commandId="org.simantics.modeling.ui.disconnectFlag"
908             class="org.simantics.modeling.ui.diagramEditor.handlers.DisconnectFlagHandler">
909          <enabledWhen>
910             <with
911                   variable="selection">
912                <iterate
913                      ifEmpty="false"
914                      operator="and">
915                   <and>
916                      <test
917                            args="http://www.simantics.org/Diagram-0.0/Flag"
918                            property="org.simantics.graph.resourceType">
919                      </test>
920                      <test
921                            args="true"
922                            property="org.simantics.diagram.flag.connected">
923                      </test>
924                   </and>
925                </iterate>
926             </with>
927          </enabledWhen>
928       </handler>
929       <handler
930             commandId="org.simantics.modeling.typical.sync.currentTemplate"
931             class="org.simantics.modeling.ui.typicals.SyncCurrentTypicalTemplateToInstances">
932          <activeWhen>
933             <with
934                   variable="activeEditor">
935                <test
936                      property="org.simantics.modeling.typical.isMasterEditor">
937                </test>
938             </with>
939          </activeWhen>
940       </handler>
941       <handler
942             commandId="org.simantics.modeling.typical.sync.currentInstance"
943             class="org.simantics.modeling.ui.typicals.SyncCurrentTypicalInstanceWithTemplate">
944          <activeWhen>
945             <with
946                   variable="activeEditor">
947                <test
948                      property="org.simantics.modeling.typical.isInstanceEditor">
949                </test>
950             </with>
951          </activeWhen>
952       </handler>
953       <handler
954             commandId="org.simantics.modeling.typical.sync.toggleRealtime"
955             class="org.simantics.modeling.ui.typicals.ToggleTypicalRealtimeSync">
956       </handler>
957    </extension>
958    <extension
959          point="org.eclipse.ui.bindings">
960       <key
961             commandId="org.simantics.modeling.ui.activateFilter"
962             contextId="org.simantics.modeling.ui.modelBrowser"
963             schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
964             sequence="M1+F">
965       </key>
966       <key
967             commandId="org.simantics.modeling.ui.activateFilter"
968             contextId="org.simantics.modeling.ui.properties"
969             schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
970             sequence="M1+F">
971       </key>
972       <key
973             commandId="expandSelection"
974             contextId="org.simantics.modeling.ui.diagramming"
975             schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
976             sequence="E">
977       </key>
978       <key
979             commandId="mergeFlags"
980             contextId="org.simantics.modeling.ui.diagramming"
981             schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
982             sequence="M">
983       </key>
984       <key
985             commandId="mergeRelatedFlags"
986             contextId="org.simantics.modeling.ui.diagramming"
987             schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
988             sequence="M1+M2+M">
989       </key>
990       <key
991             commandId="org.simantics.modeling.ui.contextualHelp"
992             contextId="org.simantics.modeling.ui.diagramming"
993             schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
994             sequence="F1">
995       </key>
996    </extension>
997    <extension
998          point="org.eclipse.ui.menus">
999       <menuContribution
1000             locationURI="menu:sFile?after=new.ext">
1001          <menu
1002                label="New"
1003                id="#FileNewMenu">
1004             <dynamic
1005                   class="org.simantics.modeling.ui.actions.ModelingProjectOperationsContribution"
1006                   id="org.simantics.modeling.ui.actions">
1007             </dynamic>
1008          </menu>
1009       </menuContribution>
1010       <menuContribution
1011             locationURI="popup:#GraphExplorerPopup?after=wbStart">
1012          <separator
1013                name="new.begin"
1014                visible="false">
1015          </separator>
1016          <separator
1017                name="new.ext"
1018                visible="false">
1019          </separator>
1020          <separator
1021                name="new.end"
1022                visible="true">
1023          </separator>
1024          <separator
1025                name="open.begin"
1026                visible="false">
1027          </separator>
1028          <dynamic
1029                class="org.simantics.ui.contribution.OpenWithMenuContribution"
1030                id="openWith">
1031          </dynamic>
1032          <separator
1033                name="open.ext"
1034                visible="false">
1035          </separator>
1036          <separator
1037                name="open.end"
1038                visible="true">
1039          </separator>
1040          <separator
1041                name="edit.begin"
1042                visible="false">
1043          </separator>
1044          <command
1045                commandId="org.eclipse.ui.file.refresh"
1046                label="Refresh"
1047                style="push">
1048             <visibleWhen
1049                   checkEnabled="true">
1050             </visibleWhen>
1051          </command>
1052          <command
1053                commandId="org.simantics.modeling.ui.open"
1054                label="Open"
1055                style="push">
1056             <visibleWhen
1057                   checkEnabled="true">
1058             </visibleWhen>
1059          </command>
1060          <command
1061                commandId="org.eclipse.ui.edit.delete"
1062                label="Delete"
1063                style="push">
1064             <visibleWhen
1065                   checkEnabled="false">
1066             </visibleWhen>
1067          </command>
1068          <command
1069                commandId="org.eclipse.ui.edit.rename"
1070                label="Rename"
1071                style="push">
1072             <visibleWhen
1073                   checkEnabled="false">
1074             </visibleWhen>
1075          </command>
1076          <separator
1077                name="edit.ext"
1078                visible="false">
1079          </separator>
1080          <separator
1081                name="edit.end"
1082                visible="true">
1083          </separator>
1084          <separator
1085                name="import.begin"
1086                visible="false">
1087          </separator>
1088          <separator
1089                name="import.ext"
1090                visible="false">
1091          </separator>
1092          <separator
1093                name="import.end"
1094                visible="true">
1095          </separator>
1096          <separator
1097                name="modelling.begin"
1098                visible="false">
1099          </separator>
1100          <dynamic
1101                class="org.simantics.modeling.ui.actions.SetInitialState"
1102                id="org.simantics.modeling.ui.setInitialState">
1103             <visibleWhen
1104                   checkEnabled="false">
1105                <with
1106                      variable="selection">
1107                   <test
1108                         args="http://www.simantics.org/Simulation-0.0/Experiment"
1109                         property="org.simantics.graph.resourceType">
1110                   </test>
1111                </with>
1112             </visibleWhen>
1113          </dynamic>
1114          <dynamic
1115                class="org.simantics.modeling.ui.actions.ModelingOperationsContribution"
1116                id="org.simantics.modeling.ui.actions">
1117          </dynamic>
1118          <separator
1119                name="modelling.ext"
1120                visible="false">
1121          </separator>
1122          <separator
1123                name="modelling.end"
1124                visible="true">
1125          </separator>
1126          <separator
1127                name="additions"
1128                visible="false">
1129          </separator>
1130          <separator
1131                name="wbEnd"
1132                visible="false">
1133          </separator>
1134       </menuContribution>
1135       <menuContribution
1136             locationURI="popup:#GraphExplorerPopup?after=modelling.ext">
1137          <dynamic
1138                id="org.simantics.modeling.ui.disableSubscription">
1139             <class
1140                   class="org.simantics.modeling.ui.modelBrowser2.contributions.SetSubscriptionEnabledContribution">
1141                <parameter
1142                      name="name"
1143                      value="Disable">
1144                </parameter>
1145                <parameter
1146                      name="image"
1147                      value="stop">
1148                </parameter>
1149                <parameter
1150                      name="include"
1151                      value="false">
1152                </parameter>
1153             </class>
1154          </dynamic>
1155          <dynamic
1156                id="org.simantics.modeling.ui.enableSubscription">
1157             <class
1158                   class="org.simantics.modeling.ui.modelBrowser2.contributions.SetSubscriptionEnabledContribution">
1159                <parameter
1160                      name="name"
1161                      value="Enable">
1162                </parameter>
1163                <parameter
1164                      name="image"
1165                      value="tick">
1166                </parameter>
1167                <parameter
1168                      name="include"
1169                      value="true">
1170                </parameter>
1171             </class>
1172          </dynamic>
1173       </menuContribution>
1174       <menuContribution
1175             locationURI="popup:#GraphExplorerPopup?after=import.ext">
1176          <command
1177                commandId="org.eclipse.ui.file.import"
1178                label="Import..."
1179                style="push"
1180                mnemonic="I">
1181             <visibleWhen
1182                   checkEnabled="true">
1183             </visibleWhen>
1184          </command>
1185          <command
1186                commandId="org.eclipse.ui.file.export"
1187                label="Export..."
1188                style="push"
1189                mnemonic="E">
1190             <visibleWhen
1191                   checkEnabled="true">
1192             </visibleWhen>
1193          </command>
1194       </menuContribution>
1195       <menuContribution
1196             locationURI="popup:org.simantics.new?after=begin">
1197          <command
1198                commandId="org.simantics.modeling.ui.newSpreadsheet"
1199                label="New Spreadsheet"
1200                icon="icons/table_add.png"
1201                style="push">
1202             <visibleWhen
1203                   checkEnabled="true">
1204                <with
1205                      variable="selection">
1206                   <and>
1207                      <test
1208                            args="org.simantics.modeling.ui.modelBrowser2.model.SheetsNode"
1209                            property="org.simantics.modeling.ui.nodeClass">
1210                      </test>
1211                   </and>
1212                </with>
1213             </visibleWhen>
1214          </command>
1215       </menuContribution>
1216       <menuContribution
1217             locationURI="popup:#GraphExplorerPopup?after=new.ext">
1218          <dynamic
1219                class="org.simantics.modeling.ui.actions.ModeledActions"
1220                id="org.simantics.modeling.ui.modeledActions">
1221          </dynamic>
1222       </menuContribution>
1223       <menuContribution
1224             locationURI="popup:#GraphExplorerPopup?after=modelling.ext">
1225       </menuContribution>
1226       <menuContribution
1227             locationURI="popup:#ModelingDiagramPopup">
1228          <dynamic
1229                class="org.simantics.modeling.ui.actions.DiagramOperationsContribution"
1230                id="org.simantics.modeling.ui.diagramOperations">
1231          </dynamic>
1232          <dynamic
1233                class="org.simantics.ui.contribution.OpenWithMenuContribution"
1234                id="openWith">
1235          </dynamic>
1236          <dynamic
1237                class="org.simantics.diagram.handler.ConnectionRoutingMenuContribution"
1238                id="connectionRouting">
1239          </dynamic>
1240       </menuContribution>
1241       <menuContribution
1242             locationURI="toolbar:org.simantics.browsing.ui.graph.propertyView">
1243          <command
1244                commandId="org.simantics.modeling.ui.pinSelection"
1245                label="Pin Selection"
1246                icon="icons/etool16/pin_editor.gif"
1247                style="toggle"
1248                tooltip="Pin Current Selection"
1249                disabledIcon="icons/dtool16/pin_editor.gif">
1250             <visibleWhen
1251                   checkEnabled="true">
1252             </visibleWhen>
1253          </command>
1254          <command
1255                commandId="org.simantics.modeling.ui.duplicatePinnedView"
1256                label="Duplicate View and Pin Selection"
1257                icon="icons/etool16/open_pinned_view.gif"
1258                style="push"
1259                tooltip="Open New Pinned View">
1260             <visibleWhen
1261                   checkEnabled="true">
1262             </visibleWhen>
1263          </command>
1264       </menuContribution>
1265       <menuContribution
1266             locationURI="popup:#SymbolViewerPopup">
1267          <separator
1268                name="wbStart"
1269                visible="false">
1270          </separator>
1271          <separator
1272                name="new.begin"
1273                visible="false">
1274          </separator>
1275          <command
1276                commandId="org.simantics.modeling.ui.importSVG"
1277                label="Add Image"
1278                icon="icons/photo.png"
1279                style="push"
1280                id="Import SVG">
1281          </command>
1282          <command
1283                commandId="org.simantics.modeling.ui.createRectangle"
1284                label="Add Rectangle"
1285                icon="icons/shape_square.png"
1286                style="push"
1287                id="Add Rectangle">
1288          </command>
1289          <command
1290                commandId="org.simantics.modeling.ui.createEllipse"
1291                label="Add Ellipse"
1292                icon="icons/stop.png"
1293                style="push"
1294                id="Add Ellipse">
1295          </command>
1296          <command
1297                commandId="org.simantics.modeling.ui.createPath"
1298                label="Add Path"
1299                icon="icons/chart_line.png"
1300                style="push"
1301                id="Add Path">
1302          </command>
1303          <command
1304                commandId="org.simantics.modeling.ui.createText"
1305                label="Add Text"
1306                icon="icons/style.png"
1307                style="push"
1308                id="Add Text">
1309          </command>
1310          <separator
1311                name="new.end"
1312                visible="true">
1313          </separator>
1314          <separator
1315                name="edit.begin"
1316                visible="false">
1317          </separator>
1318          <command
1319                commandId="org.eclipse.ui.edit.delete"
1320                label="Delete"
1321                style="push">
1322             <visibleWhen
1323                   checkEnabled="false">
1324             </visibleWhen>
1325          </command>
1326          <separator
1327                name="edit.end"
1328                visible="true">
1329          </separator>
1330          <dynamic
1331                class="org.simantics.diagram.handler.TerminalConnectionDirectionsMenuContribution"
1332                id="org.simantics.modeling.ui.setTerminalConnectionDirections">
1333          </dynamic>
1334       </menuContribution>
1335       <menuContribution
1336             locationURI="popup:#ModelingDiagramPopup?after=import.ext">
1337          <command
1338                commandId="org.simantics.modeling.ui.editStyle"
1339                label="Edit Style"
1340                icon="icons/silk/palette.png"
1341                style="push">
1342             <visibleWhen
1343                   checkEnabled="true">
1344             </visibleWhen>
1345          </command>
1346          <command
1347                commandId="org.simantics.modeling.ui.createIssue"
1348                label="Create Issue"
1349                icon="platform:/plugin/com.famfamfam.silk/icons/error.png"
1350                style="toggle">
1351             <visibleWhen
1352                   checkEnabled="true">
1353             </visibleWhen>
1354          </command>
1355          <command
1356                commandId="org.simantics.modeling.ui.contextualHelp"
1357                label="Help"
1358                icon="platform:/plugin/com.famfamfam.silk/icons/help.png"
1359                style="toggle">
1360             <visibleWhen
1361                   checkEnabled="true">
1362             </visibleWhen>
1363          </command>
1364          <command
1365                commandId="org.simantics.modeling.ui.toggleExternalFlag"
1366                label="External"
1367                icon="icons/tick.png"
1368                style="toggle">
1369             <visibleWhen
1370                   checkEnabled="true">
1371             </visibleWhen>
1372          </command>
1373          <command
1374                commandId="org.simantics.modeling.ui.createConnectionPoint"
1375                label="Create Terminal"
1376                icon="icons/tick.png"
1377                style="push">
1378             <visibleWhen
1379                   checkEnabled="true">
1380             </visibleWhen>
1381          </command>
1382       </menuContribution>
1383       <menuContribution
1384             locationURI="popup:#PropertiesPopup">
1385          <command
1386                commandId="org.simantics.modeling.ui.properties.restoreDefaultValue"
1387                label="Restore Default Values"
1388                icon="icons/elcl16/defaults_ps.gif"
1389                style="push"
1390                disabledIcon="icons/dlcl16/defaults_ps.gif">
1391             <visibleWhen
1392                   checkEnabled="true">
1393             </visibleWhen>
1394          </command>
1395       </menuContribution>
1396       <menuContribution
1397             locationURI="toolbar:org.simantics.browsing.ui.graph.propertyView">
1398          <command
1399                commandId="org.simantics.modeling.ui.properties.restoreDefaultValue"
1400                label="Restore Default Values"
1401                icon="icons/elcl16/defaults_ps.gif"
1402                style="push"
1403                tooltip="Restore Default Values for Selection"
1404                disabledIcon="icons/dlcl16/defaults_ps.gif">
1405             <visibleWhen
1406                   checkEnabled="true">
1407             </visibleWhen>
1408          </command>
1409       </menuContribution>
1410       <menuContribution
1411             locationURI="toolbar:org.eclipse.ui.main.toolbar">
1412          <toolbar
1413                label="Diagram Toolbar"
1414                id="org.simantics.modeling.ui.diagramtoolbar">
1415             <separator
1416                   name="tool.begin"
1417                   visible="true">
1418             </separator>
1419             <separator
1420                   name="tool.additions">
1421             </separator>
1422             <separator
1423                   name="tool.end">
1424             </separator>
1425          </toolbar>
1426       </menuContribution>
1427       <!--<menuContribution
1428             locationURI="toolbar:org.eclipse.ui.main.toolbar">
1429          <toolbar
1430                label="Element Toolbar"
1431                id="org.simantics.modeling.ui.elementtoolbar">
1432          </toolbar>
1433       </menuContribution>-->
1434    </extension>
1435    <extension
1436          point="org.eclipse.ui.contexts">
1437       <context
1438             name="In Modelling Perspective"
1439             id="org.simantics.modeling.ui.context"
1440             parentId="org.eclipse.ui.contexts.window">
1441       </context>
1442       <context
1443             name="In Model Browser"
1444             id="org.simantics.modeling.ui.modelBrowser"
1445             parentId="org.eclipse.ui.contexts.window">
1446       </context>
1447       <context
1448             name="In Property View"
1449             id="org.simantics.modeling.ui.properties"
1450             parentId="org.eclipse.ui.contexts.window">
1451       </context>
1452       <context
1453             name="Undo Context"
1454             id="org.simantics.ui.undoContext"
1455             parentId="org.eclipse.ui.contexts.window">
1456       </context>
1457    </extension>
1458    <extension
1459          point="org.simantics.ui.perspectiveContextBinding">
1460       <binding
1461             contextIds="org.simantics.modeling.ui.context"
1462             perspectiveId="org.simantics.modeling.ui.perspective">
1463       </binding>
1464    </extension>
1465    <extension
1466          point="org.simantics.ui.resourceEditorAdapter">
1467       <group
1468             id="org.simantics.diagramEditor.group">
1469       </group>
1470       <group
1471             id="org.simantics.componentTypeEditor.group">
1472       </group>
1473       <adapterClass
1474             groupId="org.simantics.diagramEditor.group"
1475             priority="50"
1476             class="org.simantics.modeling.ui.diagramEditor.OpenDiagramFromConfigurationAdapter">
1477          <!--<inContext
1478                id="org.simantics.modeling.ui.context">
1479          </inContext>-->
1480       </adapterClass>
1481       <adapterClass
1482             priority="150"
1483             class="org.simantics.modeling.ui.diagramEditor.OpenSheetAdapter">
1484          <!--<inContext
1485                id="org.simantics.modeling.ui.context">
1486          </inContext>-->
1487       </adapterClass>
1488       <adapterClass
1489             priority="50"
1490             class="org.simantics.modeling.ui.diagramEditor.OpenDiagramFromSymbolAdapter">
1491          <inContext
1492                id="org.simantics.modeling.ui.context">
1493          </inContext>
1494       </adapterClass>
1495       <adapter
1496             label="User Component Editor"
1497             priority="10"
1498             groupId="org.simantics.componentTypeEditor.group"
1499             editorId="org.simantics.modeling.ui.componentTypeEditor"
1500             type_uris="http://www.simantics.org/Structural-0.0/ComponentType">
1501       </adapter>
1502       <adapter
1503             label="User Component Editor"
1504             priority="11"
1505             groupId="org.simantics.componentTypeEditor.group"
1506             editorId="org.simantics.modeling.ui.componentTypeEditor"
1507             type_uris="http://www.simantics.org/Structural-0.0/ProceduralComponentType">
1508       </adapter>
1509       <adapter
1510             label="Ontology Definition File Editor"
1511             priority="11"
1512             editorId="org.simantics.modeling.ui.pgraphEditor"
1513             type_uris="http://www.simantics.org/Layer0-0.0/PGraph">
1514       </adapter>
1515       <adapter
1516             label="SCL Query Editor"
1517             priority="11"
1518             editorId="org.simantics.modeling.ui.sclQueryEditor"
1519             type_uris="http://www.simantics.org/Modeling-1.2/SCLQueryType,http://www.simantics.org/Modeling-1.2/SCLQuery">
1520       </adapter>
1521       <adapter
1522             label="Procedural User Component Code Editor"
1523             priority="11"
1524             editorId="org.simantics.modeling.ui.proceduralComponentTypeCodeEditor"
1525             type_uris="http://www.simantics.org/Structural-0.0/ProceduralComponentTypeCode">
1526       </adapter>
1527       <adapter
1528             editorId="org.simantics.modeling.ui.symbolCodeEditor"
1529             label="Symbol Code Editor"
1530             priority="11"
1531             type_uris="http://www.simantics.org/Diagram-0.0/ElementClass">
1532       </adapter>
1533       <adapter
1534             editorId="org.simantics.modeling.ui.symbolDropHandlerEditor"
1535             label="Symbol Drop Handler Editor"
1536             priority="11"
1537             type_uris="http://www.simantics.org/Diagram-0.0/ElementClass">
1538       </adapter>
1539       <adapter
1540             label="User Component Script Editor"
1541             priority="11"
1542             editorId="org.simantics.modeling.ui.componentTypeScriptEditor"
1543             type_uris="http://www.simantics.org/Structural-0.0/ComponentTypeScript">
1544       </adapter>
1545       <adapterClass
1546             priority="-10"
1547             class="org.simantics.modeling.ui.componentTypeEditor.ProceduralComponentInstanceViewerEditorAdapter">
1548       </adapterClass>
1549       <adapterClass
1550             class="org.simantics.modeling.ui.componentTypeEditor.SCLModuleEditorAdapter"
1551             id="org.simantics.modeling.ui.sclModuleEditor2"
1552             priority="10">
1553       </adapterClass>
1554    </extension>
1555    <extension
1556          point="org.eclipse.core.runtime.preferences">
1557       <initializer
1558             class="org.simantics.modeling.ui.preferences.PreferenceInitializer">
1559       </initializer>
1560    </extension>
1561    <extension
1562          point="org.eclipse.ui.preferencePages">
1563       <page
1564             name="Diagram"
1565             class="org.simantics.modeling.ui.preferences.DiagramPreferencePage"
1566             id="org.simantics.modeling.diagram.preferences">
1567       </page>
1568       <page
1569             name="Connection Flags"
1570             category="org.simantics.modeling.diagram.preferences"
1571             class="org.simantics.modeling.ui.preferences.DiagramFlagPreferencePage"
1572             id="org.simantics.modeling.diagram.flag.preferences">
1573       </page>
1574       <page
1575             name="Subscription"
1576             class="org.simantics.modeling.ui.preferences.SubscriptionPreferencePage"
1577             id="org.simantics.modeling.ui.subscription.preferences">
1578       </page>
1579       <page
1580             name="CSV (Comma separated value)"
1581             class="org.simantics.modeling.ui.preferences.CSVPreferencePage"
1582             id="org.simantics.modeling.csv.preferences">
1583       </page>
1584    </extension>
1585    <extension
1586          point="org.eclipse.ui.exportWizards">
1587       <category
1588             name="Generic Modeling"
1589             id="org.simantics.export.export">
1590       </category>
1591       <wizard
1592             name="Diagrams to PDF"
1593             icon="icons/page_white_acrobat.png"
1594             category="org.simantics.export.export"
1595             class="org.simantics.modeling.ui.pdf.PDFDiagramExportWizard"
1596             id="org.simantics.modeling.ui.pdf.wizard">
1597          <description>
1598          </description>
1599       </wizard>
1600       <wizard
1601             name="Shared Library"
1602             icon="platform:/plugin/com.famfamfam.silk/icons/folder.png"
1603             category="org.simantics.export.export"
1604             class="org.simantics.modeling.ui.sharedontology.wizard.WizardExtensionFactory:sharedOntologyExportWizard"
1605             id="org.simantics.modeling.ui.sharedOntologyExportWizard">
1606          <description>
1607          </description>
1608       </wizard>
1609       <wizard
1610             name="Model"
1611             icon="platform:/plugin/com.famfamfam.silk/icons/folder.png"
1612             category="org.simantics.export.export"
1613             class="org.simantics.modeling.ui.sharedontology.wizard.WizardExtensionFactory:modelExportWizard"
1614             id="org.simantics.modeling.ui.modelExportWizard">
1615          <description>
1616          </description>
1617       </wizard>
1618    </extension>
1619    <extension
1620          point="org.eclipse.ui.importWizards">
1621       <category
1622             name="Generic Modeling"
1623             id="org.simantics.modeling.import">
1624       </category>
1625       <wizard
1626             name="Shared Library"
1627             icon="platform:/plugin/com.famfamfam.silk/icons/folder.png"
1628             category="org.simantics.modeling.import"
1629             class="org.simantics.modeling.ui.sharedontology.wizard.WizardExtensionFactory:sharedOntologyImportWizard"
1630             id="org.simantics.modeling.ui.sharedOntologyImportWizard">
1631          <description>
1632          </description>
1633       </wizard>
1634       <wizard
1635             name="Model"
1636             icon="platform:/plugin/com.famfamfam.silk/icons/folder.png"
1637             category="org.simantics.modeling.import"
1638             class="org.simantics.modeling.ui.sharedontology.wizard.WizardExtensionFactory:modelImportWizard"
1639             id="org.simantics.modeling.ui.modelImportWizard">
1640          <description>
1641          </description>
1642       </wizard>
1643    </extension>
1644    <extension
1645          point="org.simantics.ui.doubleClick">
1646       <doubleClickAction
1647             name="Expand Browser Node"
1648             priority="0.5"
1649             class="org.simantics.modeling.ui.ExpandNodeHandler">
1650       </doubleClickAction>
1651    </extension>
1652    <extension
1653          point="org.simantics.scl.reflection.binding">
1654       <namespace
1655             path="http://www.simantics.org/Modeling-0.0/Functions">
1656          <externalClass
1657                className="org.simantics.db.Resource">
1658          </externalClass>
1659          <externalClass
1660                className="org.simantics.db.ReadGraph">
1661          </externalClass>
1662          <externalClass
1663                className="org.simantics.db.layer0.variable.Variable">
1664          </externalClass>
1665          <externalClass
1666                className="org.simantics.browsing.ui.StatePersistor">
1667          </externalClass>
1668          <class
1669                className="org.simantics.modeling.ui.function.All">
1670          </class>
1671       </namespace>
1672    </extension>
1673    <extension
1674          point="org.eclipse.core.runtime.adapters">
1675       <factory
1676             class="org.simantics.diagram.adapter.CanvasAdapterFactory"
1677             adaptableType="org.simantics.modeling.ui.diagramEditor.DiagramEditor">
1678          <adapter
1679                type="org.simantics.g2d.canvas.ICanvasContext">
1680          </adapter>
1681       </factory>
1682    </extension>
1683    <extension
1684          id="org.simantics.modeling.ui.fragment"
1685          point="org.eclipse.e4.workbench.model">
1686       <fragment
1687             uri="fragment.e4xmi">
1688       </fragment>
1689    </extension>
1690
1691 </plugin>