source: trunk/modelicaml/org.openmodelica.modelicaml.profile/plugin.xml @ 1014

Last change on this file since 1014 was 1014, checked in by wschamai, 13 years ago
  • actions renamed
File size: 131.9 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<?eclipse version="3.2"?>
3<plugin>
4   <extension
5         id="org.openmodelica.modelicaml.modelicamlMarker"
6         name="ModelicaML Simulation"
7         point="org.eclipse.core.resources.markers">
8      <persistent
9            value="false">
10      </persistent>
11   </extension>
12   <extension
13         point="org.eclipse.emf.ecore.uri_mapping">
14      <mapping
15            source="pathmap://PALETTE_PROFILE/"
16            target="platform:/plugin/org.openmodelica.modelicaml.profile/profiles/"/>
17   </extension>
18   <extension
19         point="org.eclipse.papyrus.extensionpoints.uml2.UMLProfile">
20      <profile
21            description="ModelicaML - A UML Profile for Modelica"
22            iconpath="resources/icons/icons16/modelicaml_logo_16x16_v02.png"
23            name="ModelicaML (1.2.0)"
24            path="pathmap://PALETTE_PROFILE/ModelicaML.profile.uml"
25            provider="OpenModelica Project">
26      </profile>
27   </extension>
28   <extension
29         point="org.eclipse.ui.menus">
30      <menuContribution
31            allPopups="false"
32            locationURI="popup:org.eclipse.papyrus.modelexplorer.modelexplorer.popup">
33         <menu
34               icon="resources/icons/timeline_marker.png"
35               label="ModelicaML: Simulation">
36            <command
37                  commandId="org.openmodelica.modelicaml.simulation.commands.CGAndSimulateThisClassWithOMCSimCenter"
38                  icon="resources/icons/timeline_marker.png"
39                  label="Simulate with OMSim Center"
40                  style="push"
41                  tooltip="Open in OMC Simulation Center">
42               <visibleWhen
43                     checkEnabled="true">
44                  <with
45                        variable="selection">
46                     <count
47                           value="1">
48                     </count>
49                     <iterate>
50                        <adapt
51                              type="org.eclipse.emf.ecore.EObject">
52                           <or>
53                              <instanceof
54                                    value="org.eclipse.uml2.uml.Package">
55                              </instanceof>
56                              <instanceof
57                                    value="org.eclipse.uml2.uml.Class">
58                              </instanceof>
59                           </or>
60                        </adapt>
61                     </iterate>
62                  </with>
63               </visibleWhen>
64            </command>
65            <visibleWhen
66                  checkEnabled="false">
67               <with
68                     variable="activeWorkbenchWindow.activePerspective">
69                  <equals
70                        value="org.openmodelica.modelicaml.perspective">
71                  </equals>
72               </with>
73            </visibleWhen>
74         </menu>
75      </menuContribution>
76   </extension>
77   <extension
78         point="org.eclipse.ui.menus">
79      <menuContribution
80            allPopups="false"
81            locationURI="popup:org.eclipse.papyrus.modelexplorer.modelexplorer.popup">
82         <menu
83               icon="resources/icons/icons16/launcher.gif"
84               label="ModelicaML: Validation and Code Generation">
85            <command
86                  commandId="org.openmodelica.modelicaml.gen.modelica.commands.ValidateModelicaMLModel"
87                  icon="resources/icons/icons16/validate.gif"
88                  label="Validate ModelicaML model (entire model)"
89                  style="push"
90                  tooltip="Validate ModelicaML model (entire model)">
91               <visibleWhen
92                     checkEnabled="true">
93                  <with
94                        variable="selection">
95                     <count
96                           value="1">
97                     </count>
98                     <iterate>
99                        <adapt
100                              type="org.eclipse.emf.ecore.EObject">
101                           <or>
102                              <instanceof
103                                    value="org.eclipse.uml2.uml.Package">
104                              </instanceof>
105                              <instanceof
106                                    value="org.eclipse.uml2.uml.Class">
107                              </instanceof>
108                           </or>
109                        </adapt>
110                     </iterate>
111                  </with>
112               </visibleWhen>
113            </command>
114            <command
115                  commandId="org.eclipse.papyrus.modelexplorer.ValidateDelMarkersFromSubtreeCommand"
116                  icon="resources/icons/list-remove.png"
117                  id="org.eclipse.papyrus.modelexplorer.DelMarkersFromSubtree"
118                  label="Remove markers from sub-tree"
119                  tooltip="Remove markers from sub-tree">
120               <visibleWhen
121                     checkEnabled="true">
122                  <with
123                        variable="selection">
124                     <count
125                           value="1">
126                     </count>
127                     <iterate>
128                        <adapt
129                              type="org.eclipse.emf.ecore.EObject">
130                        </adapt>
131                     </iterate>
132                  </with>
133               </visibleWhen>
134            </command>
135            <command
136                  commandId="org.openmodelica.modelicaml.gen.modelica.commands.GenerateModelicaCodeFromThisElement"
137                  icon="resources/icons/icons16/launcher.gif"
138                  label="Generate Modelica code (from sub-tree)"
139                  style="push"
140                  tooltip="Generate Modelica code (from sub-tree)">
141               <visibleWhen
142                     checkEnabled="true">
143                  <with
144                        variable="selection">
145                     <count
146                           value="1">
147                     </count>
148                     <iterate>
149                        <adapt
150                              type="org.eclipse.emf.ecore.EObject">
151                           <or>
152                              <instanceof
153                                    value="org.eclipse.uml2.uml.Package">
154                              </instanceof>
155                              <instanceof
156                                    value="org.eclipse.uml2.uml.Class">
157                              </instanceof>
158                           </or>
159                        </adapt>
160                     </iterate>
161                  </with>
162               </visibleWhen>
163            </command>
164            <visibleWhen
165                  checkEnabled="false">
166               <with
167                     variable="activeWorkbenchWindow.activePerspective">
168                  <equals
169                        value="org.openmodelica.modelicaml.perspective">
170                  </equals>
171               </with>
172            </visibleWhen>
173         </menu>
174      </menuContribution>
175      <menuContribution
176            allPopups="false"
177            locationURI="toolbar:org.eclipse.ui.main.toolbar">
178         <toolbar
179               id="org.openmodelica.modelicaml.toolbar"
180               label="ModelicaML">
181            <command
182                  commandId="org.openmodelica.modelicaml.gen.modelica.commands.GenerateModelicaCode"
183                  icon="resources/icons/icons16/launcher.gif"
184                  label="Generate Modelica code (from entire ModelicaML model)"
185                  style="push"
186                  tooltip="Generate Modelica code (from entire ModelicaML model)">
187               <visibleWhen>
188                  <with
189                        variable="activeEditorId">
190                     <equals
191                           value="org.eclipse.papyrus.core.papyrusEditor">
192                     </equals>
193                  </with>
194               </visibleWhen>
195            </command>
196            <command
197                  commandId="org.openmodelica.modelicaml.gen.modelica.commands.ValidateModelicaMLModel"
198                  icon="resources/icons/icons16/validate.gif"
199                  label="Validate ModelicaML model (entire model)"
200                  style="push"
201                  tooltip="Validate ModelicaML model (entire model)">
202               <visibleWhen>
203                  <with
204                        variable="activeEditorId">
205                     <equals
206                           value="org.eclipse.papyrus.core.papyrusEditor">
207                     </equals>
208                  </with>
209               </visibleWhen>
210            </command>
211            <visibleWhen
212                  checkEnabled="false">
213               <with
214                     variable="activeWorkbenchWindow.activePerspective">
215                  <equals
216                        value="org.openmodelica.modelicaml.perspective">
217                  </equals>
218               </with>
219            </visibleWhen>
220            <command
221                  commandId="org.openmodelica.modelicaml.helper.commands.runtests"
222                  icon="resources/icons/icons16/execute.png"
223                  label="Run Design Verification Models"
224                  style="push"
225                  tooltip="Run Design Verification Tests">
226               <visibleWhen>
227                  <with
228                        variable="activeEditorId">
229                     <equals
230                           value="org.eclipse.papyrus.core.papyrusEditor">
231                     </equals>
232                  </with>
233               </visibleWhen>
234            </command>
235         </toolbar>
236      </menuContribution>
237   </extension>
238   <extension
239         point="org.eclipse.ui.menus">
240      <menuContribution
241            allPopups="false"
242            locationURI="popup:org.eclipse.papyrus.modelexplorer.modelexplorer.popup">
243         <menu
244               icon="resources/icons/plugin_go.png"
245               label="ModelicaML: Helper">
246            <!--
247            <command
248                  commandId="org.openmodelica.modelicaml.helper.commands.instantiaterequirements"
249                  icon="resources/icons/list-accept.png"
250                  label="Instantiate Requirements"
251                  style="push">
252               <visibleWhen
253                     checkEnabled="true">
254               </visibleWhen>
255            </command>
256            <command
257                  commandId="org.openmodelica.modelicaml.helper.commands.updateTestOracleElements"
258                  icon="resources/icons/icons16/update.png"
259                  label="Update Requirements Test Oracle Elements"
260                  style="push">
261               <visibleWhen
262                     checkEnabled="true">
263               </visibleWhen>
264            </command>
265            -->
266            <visibleWhen
267                  checkEnabled="false">
268               <with
269                     variable="activeWorkbenchWindow.activePerspective">
270                  <equals
271                        value="org.openmodelica.modelicaml.perspective">
272                  </equals>
273               </with>
274            </visibleWhen>
275            <separator
276                  name="org.openmodelica.modelicaml.helper.separator1"
277                  visible="true">
278            </separator>
279            <command
280                  commandId="org.openmodelica.modelicaml.helper.commands.generatesimmodels"
281                  icon="resources/icons/icons16/generateSimMopdels.png"
282                  label="Generate Design Verification Models"
283                  style="push"
284                  tooltip="Generate Design Verification Models">
285               <visibleWhen
286                     checkEnabled="true">
287               </visibleWhen>
288            </command>
289            <separator
290                  name="org.openmodelica.modelicaml.helper.separator2"
291                  visible="true">
292            </separator>
293            <command
294                  commandId="org.openmodelica.modelicaml.helper.commands.runtests"
295                  icon="resources/icons/icons16/execute.png"
296                  label="Run Design Verification Models"
297                  style="push"
298                  tooltip="Run Design Verification Models">
299               <visibleWhen
300                     checkEnabled="true">
301               </visibleWhen>
302            </command>
303         </menu>
304      </menuContribution>
305   </extension>
306
307   <extension
308         point="org.eclipse.ui.menus">
309      <menuContribution
310            allPopups="false"
311            locationURI="popup:org.eclipse.papyrus.modelexplorer.modelexplorer.popup">
312         <menu
313               icon="resources/icons/icons16/Add.png"
314               label="ModelicaML: New Element">
315            <command
316                  commandId="org.openmodelica.modelicaml.commands.CreatePackageCommand"
317                  icon="resources/icons/papyrus/Package.gif"
318                  label="Package(s)"
319                  style="push">
320               <visibleWhen
321                     checkEnabled="true">
322               </visibleWhen>
323            </command>
324            <command
325                  commandId="org.openmodelica.modelicaml.commands.CreateClassDiagram"
326                  icon="resources/icons/papyrus/Diagram_Class.gif"
327                  label="Class Diagram"
328                  style="push">
329               <visibleWhen
330                     checkEnabled="true">
331               </visibleWhen>
332            </command>
333            <separator
334                  name="org.openmodelica.modelicaml.profile.separator1"
335                  visible="true">
336            </separator>
337            <command
338                  commandId="org.openmodelica.modelicaml.commands.CreateModelicaRequirementCommand"
339                  icon="resources/icons/icons16/requirement.gif"
340                  label="Requirement(s)"
341                  style="push">
342               <visibleWhen
343                     checkEnabled="true">
344                  <with
345                        variable="selection">
346                     <iterate
347                           ifEmpty="false"
348                           operator="or">
349                        <adapt
350                              type="org.eclipse.emf.ecore.EObject">
351                           <instanceof
352                                 value="org.eclipse.uml2.uml.Package">
353                           </instanceof>
354                        </adapt>
355                     </iterate>
356                     <count
357                           value="1">
358                     </count>
359                  </with>
360               </visibleWhen>
361            </command>
362            <command
363                  commandId="org.openmodelica.modelicaml.commands.CreateModelicaClassCommand"
364                  icon="resources/icons/icons16/model.gif"
365                  label="System Model(s)"
366                  style="push">
367               <visibleWhen
368                     checkEnabled="true">
369                  <with
370                        variable="selection">
371                     <iterate
372                           ifEmpty="false"
373                           operator="or">
374                        <adapt
375                              type="org.eclipse.emf.ecore.EObject">
376                           <instanceof
377                                 value="org.eclipse.uml2.uml.Package">
378                           </instanceof>
379                        </adapt>
380                     </iterate>
381                     <count
382                           value="1">
383                     </count>
384                  </with>
385               </visibleWhen>
386            </command>
387            <command
388                  commandId="org.openmodelica.modelicaml.commands.CreateModelicaConnectorCommand"
389                  icon="resources/icons/icons16/connector.gif"
390                  label="Interface Defintion(s)"
391                  style="push">
392               <visibleWhen
393                     checkEnabled="true">
394                  <with
395                        variable="selection">
396                     <iterate
397                           ifEmpty="false"
398                           operator="or">
399                        <adapt
400                              type="org.eclipse.emf.ecore.EObject">
401                           <instanceof
402                                 value="org.eclipse.uml2.uml.Package">
403                           </instanceof>
404                        </adapt>
405                     </iterate>
406                     <count
407                           value="1">
408                     </count>
409                  </with>
410               </visibleWhen>
411            </command>
412            <command
413                  commandId="org.openmodelica.modelicaml.commands.CreateModelicaCalculationModelCommand"
414                  icon="resources/icons/icons16/calculationModel.gif"
415                  label="Calculation Model(s)"
416                  style="push">
417               <visibleWhen
418                     checkEnabled="true">
419                  <with
420                        variable="selection">
421                     <iterate
422                           ifEmpty="false"
423                           operator="or">
424                        <adapt
425                              type="org.eclipse.emf.ecore.EObject">
426                           <instanceof
427                                 value="org.eclipse.uml2.uml.Package">
428                           </instanceof>
429                        </adapt>
430                     </iterate>
431                     <count
432                           value="1">
433                     </count>
434                  </with>
435               </visibleWhen>
436            </command>
437            <command
438                  commandId="org.openmodelica.modelicaml.commands.CreateTestScenarioCommand"
439                  icon="resources/icons/icons16/calculationModel.gif"
440                  label="Test Scenario(s)"
441                  style="push">
442               <visibleWhen
443                     checkEnabled="true">
444                  <with
445                        variable="selection">
446                     <iterate
447                           ifEmpty="false"
448                           operator="or">
449                        <adapt
450                              type="org.eclipse.emf.ecore.EObject">
451                           <instanceof
452                                 value="org.eclipse.uml2.uml.Package">
453                           </instanceof>
454                        </adapt>
455                     </iterate>
456                     <count
457                           value="1">
458                     </count>
459                  </with>
460               </visibleWhen>
461            </command>
462            <command
463                  commandId="org.openmodelica.modelicaml.commands.CreateModelicaSimulationModelCommand"
464                  icon="resources/icons/icons16/model.gif"
465                  label="Simulation Model(s)"
466                  style="push">
467               <visibleWhen
468                     checkEnabled="true">
469                  <with
470                        variable="selection">
471                     <iterate
472                           ifEmpty="false"
473                           operator="or">
474                        <adapt
475                              type="org.eclipse.emf.ecore.EObject">
476                           <instanceof
477                                 value="org.eclipse.uml2.uml.Package">
478                           </instanceof>
479                        </adapt>
480                     </iterate>
481                     <count
482                           value="1">
483                     </count>
484                  </with>
485               </visibleWhen>
486            </command>
487            <separator
488                  name="org.openmodelica.modelicaml.profile.separator2"
489                  visible="true">
490            </separator>
491            <command
492                  commandId="org.openmodelica.modelicaml.commands.CreateValueMediatorsContainerCommand"
493                  icon="resources/icons/icons16/valueMediatorsContainer.png"
494                  label="Value Mediator Container"
495                  style="push"
496                  tooltip="Value Mediator Container">
497               <visibleWhen
498                     checkEnabled="true">
499                  <with
500                        variable="selection">
501                     <iterate
502                           ifEmpty="false"
503                           operator="or">
504                        <adapt
505                              type="org.eclipse.emf.ecore.EObject">
506                           <instanceof
507                                 value="org.eclipse.uml2.uml.Package">
508                           </instanceof>
509                        </adapt>
510                     </iterate>
511                     <count
512                           value="1">
513                     </count>
514                  </with>
515               </visibleWhen>
516            </command>
517            <command
518                  commandId="org.openmodelica.modelicaml.commands.CreateValueMediatorCommand"
519                  icon="resources/icons/icons16/valueMediator.png"
520                  label="Value Mediator"
521                  style="push">
522               <visibleWhen
523                     checkEnabled="true">
524                  <with
525                        variable="selection">
526                     <iterate
527                           ifEmpty="false"
528                           operator="or">
529                        <adapt
530                              type="org.eclipse.emf.ecore.EObject">
531                           <and>
532                              <test
533                                    args="ModelicaML::ValueBinding::ValueMediatorsContainer"
534                                    forcePluginActivation="true"
535                                    property="org.openmodelica.modelicaml.testers.hasStereotype">
536                              </test>
537                           </and>
538                        </adapt>
539                     </iterate>
540                     <count
541                           value="1">
542                     </count>
543                  </with>
544               </visibleWhen>
545            </command>
546            <separator
547                  name="org.openmodelica.modelicaml.profile.separator3"
548                  visible="true">
549            </separator>
550            <command
551                  commandId="org.openmodelica.modelicaml.commands.CreateModelicaRequirementInstanceCommand"
552                  icon="resources/icons/icons16/requirementInstance.png"
553                  label="Requirement Instance"
554                  style="push">
555               <visibleWhen
556                     checkEnabled="true">
557                  <with
558                        variable="selection">
559                     <iterate
560                           ifEmpty="false"
561                           operator="or">
562                        <adapt
563                              type="org.eclipse.emf.ecore.EObject">
564                           <test
565                                 args="ModelicaML::ModelicaSimulationConstructs::Simulation"
566                                 forcePluginActivation="true"
567                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
568                           </test>
569                        </adapt>
570                     </iterate>
571                     <count
572                           value="1">
573                     </count>
574                  </with>
575               </visibleWhen>
576            </command>
577            <command
578                  commandId="org.openmodelica.modelicaml.commands.CreateModelicaFunctionArgumentCommand"
579                  icon="resources\icons\icons16\Parameter.gif"
580                  label="Function Argument"
581                  style="push">
582               <visibleWhen
583                     checkEnabled="true">
584               </visibleWhen>
585            </command>
586            <command
587                  commandId="org.openmodelica.modelicaml.commands.CreateModelicaVariableCommand"
588                  icon="resources/icons/icons16/variable.png"
589                  label="Variables (Primitive)"
590                  style="push">
591               <visibleWhen
592                     checkEnabled="true">
593               </visibleWhen>
594            </command>
595            <command
596                  commandId="org.openmodelica.modelicaml.commands.CreateModelicaEnumerationLiteralCommand"
597                  icon="resources/icons/icons16/EnumerationLiteral.gif"
598                  label="Enumeration Literal"
599                  style="push">
600               <visibleWhen
601                     checkEnabled="true">
602               </visibleWhen>
603            </command>
604            <separator
605                  name="org.openmodelica.modelicaml.profile.separator4"
606                  visible="true">
607            </separator>
608            <command
609                  commandId="org.openmodelica.modelicaml.commands.CreateModelicaComponentCommand"
610                  icon="resources/icons/icons16/component.png"
611                  label="Component (Model Usage)"
612                  style="push">
613               <visibleWhen
614                     checkEnabled="true">
615                  <with
616                        variable="selection">
617                     <iterate
618                           ifEmpty="false"
619                           operator="or">
620                        <adapt
621                              type="org.eclipse.emf.ecore.EObject">
622                           <or>
623                              <test
624                                    args="ModelicaML::ModelicaClassConstructs::ModelicaClass"
625                                    forcePluginActivation="true"
626                                    property="org.openmodelica.modelicaml.testers.hasStereotype">
627                              </test>
628                              <test
629                                    args="ModelicaML::ModelicaClassConstructs::Model"
630                                    forcePluginActivation="true"
631                                    property="org.openmodelica.modelicaml.testers.hasStereotype">
632                              </test>
633                              <test
634                                    args="ModelicaML::ModelicaClassConstructs::Block"
635                                    forcePluginActivation="true"
636                                    property="org.openmodelica.modelicaml.testers.hasStereotype">
637                              </test>
638                           </or>
639                        </adapt>
640                     </iterate>
641                     <count
642                           value="1">
643                     </count>
644                  </with>
645               </visibleWhen>
646            </command>
647            <command
648                  commandId="org.openmodelica.modelicaml.commands.CreateModelicaPortCommand"
649                  icon="resources/icons/papyrus/Port.gif"
650                  label="Port (Interface Usage)"
651                  style="push">
652               <visibleWhen
653                     checkEnabled="true">
654               </visibleWhen>
655            </command>
656            <command
657                  commandId="org.openmodelica.modelicaml.commands.CreateConnectionDiagram"
658                  icon="resources/icons/papyrus/Diagram_CompositeStructure.gif"
659                  label="Connection Diagram"
660                  style="push">
661               <visibleWhen
662                     checkEnabled="true">
663               </visibleWhen>
664            </command>
665            <separator
666                  name="org.openmodelica.modelicaml.profile.separator5"
667                  visible="true">
668            </separator>
669            <command
670                  commandId="org.openmodelica.modelicaml.commands.CreateModelicaCalculatedPropertyCommand"
671                  icon="resources/icons/icons16/calculatedProperty.png"
672                  label="Calculated Property (Calculation Model Usage)"
673                  style="push">
674               <visibleWhen
675                     checkEnabled="true">
676                  <with
677                        variable="selection">
678                     <iterate
679                           ifEmpty="false"
680                           operator="or">
681                        <adapt
682                              type="org.eclipse.emf.ecore.EObject">
683                           <not>
684                              <test
685                                    args="ModelicaML::ValueBinding::ValueMediatorsContainer"
686                                    forcePluginActivation="true"
687                                    property="org.openmodelica.modelicaml.testers.hasStereotype">
688                              </test>
689                           </not>
690                        </adapt>
691                     </iterate>
692                     <count
693                           value="1">
694                     </count>
695                  </with>
696               </visibleWhen>
697            </command>
698            <separator
699                  name="org.openmodelica.modelicaml.profile.separator6"
700                  visible="true">
701            </separator>
702            <menu
703                  label="Modelica Classes">
704               <command
705                     commandId="org.openmodelica.modelicaml.commands.CreateModelicaPackageCommand"
706                     icon="resources/icons/icons16/package.gif"
707                     label="Modelica Package"
708                     style="push">
709                  <visibleWhen
710                        checkEnabled="true">
711                  </visibleWhen>
712               </command>
713               <command
714                     commandId="org.openmodelica.modelicaml.commands.CreateModelicaOperatorCommand"
715                     icon="resources/icons/icons16/operator.gif"
716                     label="Operator"
717                     style="push">
718                  <visibleWhen
719                        checkEnabled="true">
720                  </visibleWhen>
721               </command>
722               <command
723                     commandId="org.openmodelica.modelicaml.commands.CreateModelicaModelCommand"
724                     icon="resources/icons/icons16/model.gif"
725                     label="Model"
726                     style="push">
727                  <visibleWhen
728                        checkEnabled="true">
729                  </visibleWhen>
730               </command>
731               <command
732                     commandId="org.openmodelica.modelicaml.commands.CreateModelicaBlockCommand"
733                     icon="resources/icons/icons16/block.gif"
734                     label="Block"
735                     style="push">
736                  <visibleWhen
737                        checkEnabled="true">
738                  </visibleWhen>
739               </command>
740               <command
741                     commandId="org.openmodelica.modelicaml.commands.CreateModelicaConnectorCommand"
742                     icon="resources/icons/icons16/connector.gif"
743                     label="Connector"
744                     style="push">
745                  <visibleWhen
746                        checkEnabled="true">
747                  </visibleWhen>
748               </command>
749               <command
750                     commandId="org.openmodelica.modelicaml.commands.CreateModelicaRecordCommand"
751                     icon="resources/icons/icons16/record.gif"
752                     label="Record"
753                     style="push">
754                  <visibleWhen
755                        checkEnabled="true">
756                  </visibleWhen>
757               </command>
758               <command
759                     commandId="org.openmodelica.modelicaml.commands.CreateModelicaFunctionCommand"
760                     icon="resources/icons/papyrus/FunctionBehavior.gif"
761                     label="Function"
762                     style="push">
763                  <visibleWhen
764                        checkEnabled="true">
765                  </visibleWhen>
766               </command>
767               <command
768                     commandId="org.openmodelica.modelicaml.commands.CreateModelicaTypeCommand"
769                     icon="resources/icons/icons16/type.gif"
770                     label="Type"
771                     style="push">
772                  <visibleWhen
773                        checkEnabled="true">
774                  </visibleWhen>
775               </command>
776               <command
777                     commandId="org.openmodelica.modelicaml.commands.CreateModelicaEnumerationCommand"
778                     icon="resources/icons/papyrus/Enumeration.gif"
779                     label="Enumeration"
780                     style="push">
781                  <visibleWhen
782                        checkEnabled="true">
783                  </visibleWhen>
784               </command>
785               <visibleWhen
786                     checkEnabled="false">
787                  <with
788                        variable="selection">
789                     <iterate
790                           ifEmpty="false"
791                           operator="or">
792                        <adapt
793                              type="org.eclipse.emf.ecore.EObject">
794                           <instanceof
795                                 value="org.eclipse.uml2.uml.Package">
796                           </instanceof>
797                        </adapt>
798                     </iterate>
799                     <count
800                           value="1">
801                     </count>
802                  </with>
803               </visibleWhen>
804            </menu>
805            <separator
806                  name="org.openmodelica.modelicaml.profile.separator7"
807                  visible="true">
808            </separator>
809            <command
810                  commandId="org.openmodelica.modelicaml.commands.CreateModelicaAlgorithmCommand"
811                  icon="resources/icons/papyrus/OpaqueBehavior.gif"
812                  label="Algorithm Section"
813                  style="push"
814                  tooltip="Algorithm Section">
815               <visibleWhen
816                     checkEnabled="true">
817                  <with
818                        variable="selection">
819                     <iterate
820                           ifEmpty="false"
821                           operator="or">
822                        <adapt
823                              type="org.eclipse.emf.ecore.EObject">
824                           <not>
825                              <test
826                                    args="ModelicaML::ValueBinding::ValueMediatorsContainer"
827                                    forcePluginActivation="true"
828                                    property="org.openmodelica.modelicaml.testers.hasStereotype">
829                              </test>
830                           </not>
831                        </adapt>
832                     </iterate>
833                     <count
834                           value="1">
835                     </count>
836                  </with>
837               </visibleWhen>
838            </command>
839            <command
840                  commandId="org.openmodelica.modelicaml.commands.CreateModelicaEquationsCodeCommand"
841                  icon="resources/icons/papyrus/OpaqueBehavior.gif"
842                  label="Equation Section"
843                  style="push"
844                  tooltip="Equation Section">
845               <visibleWhen
846                     checkEnabled="true">
847                  <with
848                        variable="selection">
849                     <iterate
850                           ifEmpty="false"
851                           operator="or">
852                        <adapt
853                              type="org.eclipse.emf.ecore.EObject">
854                           <not>
855                              <test
856                                    args="ModelicaML::ValueBinding::ValueMediatorsContainer"
857                                    forcePluginActivation="true"
858                                    property="org.openmodelica.modelicaml.testers.hasStereotype">
859                              </test>
860                           </not>
861                        </adapt>
862                     </iterate>
863                     <count
864                           value="1">
865                     </count>
866                  </with>
867               </visibleWhen>
868            </command>
869            <command
870                  commandId="org.openmodelica.modelicaml.commands.CreateStateMachineDiagram"
871                  icon="resources/icons/papyrus/Diagram_StateMachine.gif"
872                  label="State Machine"
873                  style="push">
874               <visibleWhen
875                     checkEnabled="true">
876               </visibleWhen>
877            </command>
878            <separator
879                  name="org.openmodelica.modelicaml.profile.separator8"
880                  visible="true">
881            </separator>
882            <command
883                  commandId="org.openmodelica.modelicaml.commands.CreateModelicaAssertCommand"
884                  icon="resources/icons/papyrus/Constraint.gif"
885                  label="Assert"
886                  style="push">
887               <visibleWhen
888                     checkEnabled="true">
889               </visibleWhen>
890            </command>
891            <separator
892                  name="org.openmodelica.modelicaml.profile.separator9"
893                  visible="true">
894            </separator>
895            <command
896                  commandId="org.openmodelica.modelicaml.commands.CreateModelicaAnnotationCommand"
897                  icon="resources/icons/papyrus/Comment.gif"
898                  label="Annotation"
899                  style="push">
900               <visibleWhen
901                     checkEnabled="true">
902               </visibleWhen>
903            </command>
904            <separator
905                  name="org.openmodelica.modelicaml.profile.separator10"
906                  visible="true">
907            </separator>
908            <menu
909                  label="Nested Classes">
910               <command
911                     commandId="org.openmodelica.modelicaml.commands.CreateModelicaRequirementCommand"
912                     icon="resources/icons/icons16/requirement.gif"
913                     label="Requirement(s)"
914                     style="push">
915                  <visibleWhen
916                        checkEnabled="true">
917                  </visibleWhen>
918               </command>
919               <command
920                     commandId="org.openmodelica.modelicaml.commands.CreateModelicaClassCommand"
921                     icon="resources/icons/icons16/model.gif"
922                     label="System Model(s)"
923                     style="push">
924                  <visibleWhen
925                        checkEnabled="true">
926                     <with
927                           variable="selection">
928                        <iterate
929                              ifEmpty="false"
930                              operator="or">
931                           <adapt
932                                 type="org.eclipse.emf.ecore.EObject">
933                              <or>
934                                 <test
935                                       args="ModelicaML::ModelicaClassConstructs::ModelicaClass"
936                                       forcePluginActivation="true"
937                                       property="org.openmodelica.modelicaml.testers.hasStereotype">
938                                 </test>
939                                 <test
940                                       args="ModelicaML::ModelicaClassConstructs::ModelicaClass"
941                                       forcePluginActivation="true"
942                                       property="org.openmodelica.modelicaml.testers.hasStereotype">
943                                 </test>
944                                 <test
945                                       args="ModelicaML::ModelicaClassConstructs::Model"
946                                       forcePluginActivation="true"
947                                       property="org.openmodelica.modelicaml.testers.hasStereotype">
948                                 </test>
949                                 <test
950                                       args="ModelicaML::ModelicaClassConstructs::Block"
951                                       forcePluginActivation="true"
952                                       property="org.openmodelica.modelicaml.testers.hasStereotype">
953                                 </test>
954                              </or>
955                           </adapt>
956                        </iterate>
957                        <count
958                              value="1">
959                        </count>
960                     </with>
961                  </visibleWhen>
962               </command>
963               <command
964                     commandId="org.openmodelica.modelicaml.commands.CreateModelicaConnectorCommand"
965                     icon="resources/icons/icons16/connector.gif"
966                     label="Interface Defintion(s)"
967                     style="push">
968                  <visibleWhen
969                        checkEnabled="true">
970                     <with
971                           variable="selection">
972                        <iterate
973                              ifEmpty="false"
974                              operator="or">
975                           <adapt
976                                 type="org.eclipse.emf.ecore.EObject">
977                              <or>
978                                 <test
979                                       args="ModelicaML::ModelicaClassConstructs::ModelicaClass"
980                                       forcePluginActivation="true"
981                                       property="org.openmodelica.modelicaml.testers.hasStereotype">
982                                 </test>
983                                 <test
984                                       args="ModelicaML::ModelicaClassConstructs::ModelicaClass"
985                                       forcePluginActivation="true"
986                                       property="org.openmodelica.modelicaml.testers.hasStereotype">
987                                 </test>
988                                 <test
989                                       args="ModelicaML::ModelicaClassConstructs::Model"
990                                       forcePluginActivation="true"
991                                       property="org.openmodelica.modelicaml.testers.hasStereotype">
992                                 </test>
993                                 <test
994                                       args="ModelicaML::ModelicaClassConstructs::Block"
995                                       forcePluginActivation="true"
996                                       property="org.openmodelica.modelicaml.testers.hasStereotype">
997                                 </test>
998                              </or>
999                           </adapt>
1000                        </iterate>
1001                        <count
1002                              value="1">
1003                        </count>
1004                     </with>
1005                  </visibleWhen>
1006               </command>
1007               <command
1008                     commandId="org.openmodelica.modelicaml.commands.CreateModelicaCalculationModelCommand"
1009                     icon="resources/icons/icons16/calculationModel.gif"
1010                     label="Calculation Model(s)"
1011                     style="push">
1012                  <visibleWhen
1013                        checkEnabled="true">
1014                  </visibleWhen>
1015               </command>
1016               <command
1017                     commandId="org.openmodelica.modelicaml.commands.CreateModelicaSimulationModelCommand"
1018                     icon="resources/icons/icons16/model.gif"
1019                     label="Simulation Model(s)"
1020                     style="push">
1021                  <visibleWhen
1022                        checkEnabled="true">
1023                     <with
1024                           variable="selection">
1025                        <iterate
1026                              ifEmpty="false"
1027                              operator="or">
1028                           <adapt
1029                                 type="org.eclipse.emf.ecore.EObject">
1030                              <or>
1031                                 <test
1032                                       args="ModelicaML::ModelicaClassConstructs::ModelicaClass"
1033                                       forcePluginActivation="true"
1034                                       property="org.openmodelica.modelicaml.testers.hasStereotype">
1035                                 </test>
1036                                 <test
1037                                       args="ModelicaML::ModelicaClassConstructs::ModelicaClass"
1038                                       forcePluginActivation="true"
1039                                       property="org.openmodelica.modelicaml.testers.hasStereotype">
1040                                 </test>
1041                                 <test
1042                                       args="ModelicaML::ModelicaClassConstructs::Model"
1043                                       forcePluginActivation="true"
1044                                       property="org.openmodelica.modelicaml.testers.hasStereotype">
1045                                 </test>
1046                                 <test
1047                                       args="ModelicaML::ModelicaClassConstructs::Block"
1048                                       forcePluginActivation="true"
1049                                       property="org.openmodelica.modelicaml.testers.hasStereotype">
1050                                 </test>
1051                              </or>
1052                           </adapt>
1053                        </iterate>
1054                        <count
1055                              value="1">
1056                        </count>
1057                     </with>
1058                  </visibleWhen>
1059               </command>
1060               <menu
1061                     label="Modelica Classes">
1062                  <command
1063                        commandId="org.openmodelica.modelicaml.commands.CreateModelicaPackageCommand"
1064                        icon="resources/icons/icons16/package.gif"
1065                        label="Modelica Package"
1066                        style="push">
1067                     <visibleWhen
1068                           checkEnabled="true">
1069                     </visibleWhen>
1070                  </command>
1071                  <command
1072                        commandId="org.openmodelica.modelicaml.commands.CreateModelicaOperatorCommand"
1073                        icon="resources/icons/icons16/operator.gif"
1074                        label="Operator"
1075                        style="push">
1076                     <visibleWhen
1077                           checkEnabled="true">
1078                     </visibleWhen>
1079                  </command>
1080                  <command
1081                        commandId="org.openmodelica.modelicaml.commands.CreateModelicaModelCommand"
1082                        icon="resources/icons/icons16/model.gif"
1083                        label="Model"
1084                        style="push">
1085                     <visibleWhen
1086                           checkEnabled="true">
1087                     </visibleWhen>
1088                  </command>
1089                  <command
1090                        commandId="org.openmodelica.modelicaml.commands.CreateModelicaBlockCommand"
1091                        icon="resources/icons/icons16/block.gif"
1092                        label="Block"
1093                        style="push">
1094                     <visibleWhen
1095                           checkEnabled="true">
1096                     </visibleWhen>
1097                  </command>
1098                  <command
1099                        commandId="org.openmodelica.modelicaml.commands.CreateModelicaConnectorCommand"
1100                        icon="resources/icons/icons16/connector.gif"
1101                        label="Connector"
1102                        style="push">
1103                     <visibleWhen
1104                           checkEnabled="true">
1105                     </visibleWhen>
1106                  </command>
1107                  <command
1108                        commandId="org.openmodelica.modelicaml.commands.CreateModelicaRecordCommand"
1109                        icon="resources/icons/icons16/record.gif"
1110                        label="Record"
1111                        style="push">
1112                     <visibleWhen
1113                           checkEnabled="true">
1114                     </visibleWhen>
1115                  </command>
1116                  <command
1117                        commandId="org.openmodelica.modelicaml.commands.CreateModelicaFunctionCommand"
1118                        icon="resources/icons/papyrus/FunctionBehavior.gif"
1119                        label="Function"
1120                        style="push">
1121                     <visibleWhen
1122                           checkEnabled="true">
1123                     </visibleWhen>
1124                  </command>
1125                  <command
1126                        commandId="org.openmodelica.modelicaml.commands.CreateModelicaTypeCommand"
1127                        icon="resources/icons/icons16/type.gif"
1128                        label="Type"
1129                        style="push">
1130                     <visibleWhen
1131                           checkEnabled="true">
1132                     </visibleWhen>
1133                  </command>
1134                  <command
1135                        commandId="org.openmodelica.modelicaml.commands.CreateModelicaEnumerationCommand"
1136                        icon="resources/icons/papyrus/Enumeration.gif"
1137                        label="Enumeration"
1138                        style="push">
1139                     <visibleWhen
1140                           checkEnabled="true">
1141                     </visibleWhen>
1142                  </command>
1143               </menu>
1144               <visibleWhen
1145                     checkEnabled="false">
1146                  <with
1147                        variable="selection">
1148                     <iterate
1149                           ifEmpty="false"
1150                           operator="or">
1151                        <adapt
1152                              type="org.eclipse.emf.ecore.EObject">
1153                           <not>
1154                              <test
1155                                    args="ModelicaML::ModelicaClassConstructs::Function"
1156                                    forcePluginActivation="true"
1157                                    property="org.openmodelica.modelicaml.testers.hasStereotype">
1158                              </test>
1159                           </not>
1160                           <and>
1161                              <or>
1162                                 <instanceof
1163                                       value="org.eclipse.uml2.uml.Class">
1164                                 </instanceof>
1165                              </or>
1166                           </and>
1167                           <not>
1168                              <instanceof
1169                                    value="org.eclipse.uml2.uml.Behavior">
1170                              </instanceof>
1171                           </not>
1172                           <not>
1173                              <instanceof
1174                                    value="org.eclipse.uml2.uml.Package">
1175                              </instanceof>
1176                           </not>
1177                           <not>
1178                              <test
1179                                    args="ModelicaML::ValueBinding::ValueMediatorsContainer"
1180                                    forcePluginActivation="true"
1181                                    property="org.openmodelica.modelicaml.testers.hasStereotype">
1182                              </test>
1183                           </not>
1184                        </adapt>
1185                     </iterate>
1186                     <count
1187                           value="1">
1188                     </count>
1189                  </with>
1190               </visibleWhen>
1191            </menu>
1192           
1193            <visibleWhen
1194                  checkEnabled="false">
1195               <with
1196                     variable="activeWorkbenchWindow.activePerspective">
1197                  <equals
1198                        value="org.openmodelica.modelicaml.perspective">
1199                  </equals>
1200               </with>
1201            </visibleWhen>
1202         </menu>
1203         <menu
1204               icon="resources/icons/icons16/Window_new.png"
1205               label="ModelicaML: New Diagram">
1206            <command
1207                  commandId="org.openmodelica.modelicaml.commands.CreateClassDiagram"
1208                  icon="resources/icons/papyrus/Diagram_Class.gif"
1209                  label="Class Diagram"
1210                  style="push">
1211               <visibleWhen
1212                     checkEnabled="true">
1213               </visibleWhen>
1214            </command>
1215            <command
1216                  commandId="org.openmodelica.modelicaml.commands.CreateConnectionDiagram"
1217                  icon="resources/icons/papyrus/Diagram_CompositeStructure.gif"
1218                  label="Connection Diagram"
1219                  style="push">
1220               <visibleWhen
1221                     checkEnabled="true">
1222               </visibleWhen>
1223            </command>
1224            <command
1225                  commandId="org.openmodelica.modelicaml.commands.CreateStateMachineDiagram"
1226                  icon="resources/icons/papyrus/Diagram_StateMachine.gif"
1227                  label="State Machine Diagram"
1228                  style="push">
1229               <visibleWhen
1230                     checkEnabled="true">
1231               </visibleWhen>
1232            </command>
1233            <command
1234                  commandId="org.openmodelica.modelicaml.commands.CreateConditionalEquationDiagram"
1235                  icon="resources/icons/papyrus/Diagram_Activity.gif"
1236                  label="Conditional Equations Diagram"
1237                  style="push">
1238               <visibleWhen
1239                     checkEnabled="true">
1240               </visibleWhen>
1241            </command>
1242            <command
1243                  commandId="org.openmodelica.modelicaml.commands.CreateConditionalAlgorithmDiagram"
1244                  icon="resources/icons/papyrus/Diagram_Activity.gif"
1245                  label="Conditional Algorithm Diagram"
1246                  style="push">
1247               <visibleWhen
1248                     checkEnabled="true">
1249               </visibleWhen>
1250            </command>
1251            <visibleWhen
1252                  checkEnabled="false">
1253               <with
1254                     variable="activeWorkbenchWindow.activePerspective">
1255                  <equals
1256                        value="org.openmodelica.modelicaml.perspective">
1257                  </equals>
1258               </with>
1259            </visibleWhen>
1260         </menu>
1261      </menuContribution>
1262   </extension>
1263   <extension
1264         point="org.eclipse.ui.commands">
1265      <command
1266            id="org.openmodelica.modelicaml.commands.CreateModelicaOperatorCommand"
1267            name="Create new Modelica Operator">
1268      </command>
1269      <command
1270            id="org.openmodelica.modelicaml.commands.CreateModelicaPackageCommand"
1271            name="Create new Modelica Package">
1272      </command>
1273      <command
1274            id="org.openmodelica.modelicaml.commands.CreateModelicaClassCommand"
1275            name="Create new Modelica Class">
1276      </command>
1277      <command
1278            id="org.openmodelica.modelicaml.commands.CreateModelicaModelCommand"
1279            name="Create new Modelica Model">
1280      </command>
1281      <command
1282            id="org.openmodelica.modelicaml.commands.CreateModelicaBlockCommand"
1283            name="Create new Modelica Block">
1284      </command>
1285      <command
1286            id="org.openmodelica.modelicaml.commands.CreateModelicaConnectorCommand"
1287            name="Create new Modelica Connector">
1288      </command>
1289      <command
1290            id="org.openmodelica.modelicaml.commands.CreateModelicaTypeCommand"
1291            name="Create new Modelica Type">
1292      </command>
1293      <command
1294            id="org.openmodelica.modelicaml.commands.CreateModelicaEnumerationCommand"
1295            name="Create new Modelica Enumeration">
1296      </command>
1297      <command
1298            id="org.openmodelica.modelicaml.commands.CreateModelicaFunctionCommand"
1299            name="Create new Modelica Function">
1300      </command>
1301      <command
1302            id="org.openmodelica.modelicaml.commands.CreateModelicaRecordCommand"
1303            name="Create new Modelica Record">
1304      </command>
1305      <command
1306            id="org.openmodelica.modelicaml.commands.CreateModelicaCalculationModelCommand"
1307            name="Create new Modelica Calculation Model">
1308      </command>
1309      <command
1310            id="org.openmodelica.modelicaml.commands.CreateTestScenarioCommand"
1311            name="Create new Test Scenario">
1312      </command>
1313      <command
1314            id="org.openmodelica.modelicaml.commands.CreateModelicaRequirementCommand"
1315            name="Create new Modelica Requirement">
1316      </command>
1317      <command
1318            id="org.openmodelica.modelicaml.commands.CreateModelicaEnumerationLiteralCommand"
1319            name="Create new Enumeration Literal">
1320      </command>
1321      <command
1322            id="org.openmodelica.modelicaml.commands.CreateModelicaFunctionArgumentCommand"
1323            name="Create new Function Argument">
1324      </command>
1325      <command
1326            id="org.openmodelica.modelicaml.commands.CreateModelicaVariableCommand"
1327            name="Create new Modelica Variable">
1328      </command>
1329      <command
1330            id="org.openmodelica.modelicaml.commands.CreateModelicaComponentCommand"
1331            name="Create new Component">
1332      </command>
1333      <command
1334            id="org.openmodelica.modelicaml.commands.CreateModelicaCalculatedPropertyCommand"
1335            name="Create new Calculated Property">
1336      </command>
1337      <command
1338            id="org.openmodelica.modelicaml.commands.CreateModelicaRequirementInstanceCommand"
1339            name="Create new Requirement Instance">
1340      </command>
1341      <command
1342            id="org.openmodelica.modelicaml.commands.CreateModelicaPortCommand"
1343            name="Create new Port">
1344      </command>
1345      <command
1346            id="org.openmodelica.modelicaml.commands.CreateModelicaAlgorithmCommand"
1347            name="Create new Algorithm">
1348      </command>
1349      <command
1350            id="org.openmodelica.modelicaml.commands.CreateModelicaEquationsCodeCommand"
1351            name="Create new Equations">
1352      </command>
1353      <command
1354            id="org.openmodelica.modelicaml.commands.CreateModelicaAssertCommand"
1355            name="Create new Assert">
1356      </command>
1357      <command
1358            id="org.openmodelica.modelicaml.commands.CreateModelicaAnnotationCommand"
1359            name="Create new Annotation">
1360      </command>
1361       <command
1362            id="org.openmodelica.modelicaml.commands.GenerateModelicaCode"
1363            name="Generate Modelica Code">
1364      </command>
1365      <command
1366            id="org.openmodelica.modelicaml.commands.ValidateModelicaMLModel"
1367            name="Validate ModelicaML Model">
1368      </command>
1369      <command
1370            id="org.openmodelica.modelicaml.commands.CreatePackageCommand"
1371            name="Create new Package">
1372      </command>
1373      <command
1374            id="org.openmodelica.modelicaml.commands.CreateSignalCommand"
1375            name="Create Signal">
1376      </command>
1377      <command
1378            id="org.openmodelica.modelicaml.commands.CreateModelicaRetrictedClassCommand"
1379            name="Menu Restricted Class">
1380      </command>
1381      <command
1382            id="org.openmodelica.modelicaml.commands.ModelicaDiagram"
1383            name="New ModelicaML Diagram">
1384      </command>
1385      <command
1386            id="org.openmodelica.modelicaml.commands.CreateClassDiagram"
1387            name="Create Class Diagram">
1388      </command>
1389      <command
1390            id="org.openmodelica.modelicaml.commands.CreateConnectionDiagram"
1391            name="Create Connection Diagram">
1392      </command>
1393      <command
1394            id="org.openmodelica.modelicaml.commands.CreateStateMachineDiagram"
1395            name="Create State Machine Diagram">
1396      </command>
1397      <command
1398            id="org.openmodelica.modelicaml.commands.CreateConditionalAlgorithmDiagram"
1399            name="Create Conditional Algorithm Diagram">
1400      </command>
1401      <command
1402            id="org.openmodelica.modelicaml.commands.CreateConditionalEquationDiagram"
1403            name="Create Conditional Equations Diagram">
1404      </command>
1405      <command
1406            id="org.openmodelica.modelicaml.commands.CreateModelicaSimulationModelCommand"
1407            name="Create new Modelica Simulation Model">
1408      </command>
1409      <command
1410            id="org.openmodelica.modelicaml.commands.CreateValueMediatorCommand"
1411            name="Create new Value Mediator">
1412      </command>
1413      <command
1414            id="org.openmodelica.modelicaml.commands.CreateValueMediatorsContainerCommand"
1415            name="Create new Value Mediators Container">
1416      </command>
1417   </extension>
1418   <extension
1419         point="org.eclipse.ui.handlers">
1420      <handler
1421            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaOperatorHandler"
1422            commandId="org.openmodelica.modelicaml.commands.CreateModelicaOperatorCommand">
1423         <activeWhen>
1424            <with
1425                  variable="selection">
1426               <count
1427                     value="1">
1428               </count>
1429               <iterate>
1430                  <adapt
1431                        type="org.eclipse.emf.ecore.EObject">
1432                     <and>
1433                        <not>
1434                           <test
1435                                 args="ModelicaML::ModelicaClassConstructs::Function"
1436                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
1437                           </test>
1438                        </not>
1439                        <or>
1440                           <instanceof
1441                                 value="org.eclipse.uml2.uml.Class">
1442                           </instanceof>
1443                           <instanceof
1444                                 value="org.eclipse.uml2.uml.Package">
1445                           </instanceof>
1446                        </or>
1447                        <and>
1448                           <not>
1449                              <instanceof
1450                                    value="org.eclipse.uml2.uml.Behavior">
1451                              </instanceof>
1452                           </not>
1453                        </and>
1454                     </and>
1455                  </adapt>
1456               </iterate>
1457            </with>
1458         </activeWhen>
1459      </handler>
1460      <handler
1461            class="org.openmodelica.modelicaml.profile.handlers.CreatePackageHandler"
1462            commandId="org.openmodelica.modelicaml.commands.CreatePackageCommand">
1463         <activeWhen>
1464            <with
1465                  variable="selection">
1466               <count
1467                     value="1">
1468               </count>
1469               <iterate>
1470                  <adapt
1471                        type="org.eclipse.emf.ecore.EObject">
1472                     <instanceof
1473                           value="org.eclipse.uml2.uml.Package">
1474                     </instanceof>
1475                  </adapt>
1476               </iterate>
1477            </with>
1478         </activeWhen>
1479      </handler>
1480      <handler
1481            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaPackageHandler"
1482            commandId="org.openmodelica.modelicaml.commands.CreateModelicaPackageCommand">
1483         <activeWhen>
1484            <with
1485                  variable="selection">
1486               <count
1487                     value="1">
1488               </count>
1489               <iterate>
1490                  <adapt
1491                        type="org.eclipse.emf.ecore.EObject">
1492                     <and>
1493                        <or>
1494                           <instanceof
1495                                 value="org.eclipse.uml2.uml.Class">
1496                           </instanceof>
1497                           <instanceof
1498                                 value="org.eclipse.uml2.uml.Package">
1499                           </instanceof>
1500                        </or>
1501                        <not>
1502                           <test
1503                                 args="ModelicaML::ModelicaClassConstructs::Function"
1504                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
1505                           </test>
1506                        </not>
1507                        <and>
1508                           <not>
1509                              <instanceof
1510                                    value="org.eclipse.uml2.uml.Behavior">
1511                              </instanceof>
1512                           </not>
1513                        </and>
1514                     </and>
1515                  </adapt>
1516               </iterate>
1517            </with>
1518         </activeWhen>
1519      </handler>
1520      <handler
1521            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaClassHandler"
1522            commandId="org.openmodelica.modelicaml.commands.CreateModelicaClassCommand">
1523         <activeWhen>
1524            <with
1525                  variable="selection">
1526               <count
1527                     value="1">
1528               </count>
1529               <iterate>
1530                  <adapt
1531                        type="org.eclipse.emf.ecore.EObject">
1532                     <and>
1533                        <not>
1534                           <test
1535                                 args="ModelicaML::ModelicaClassConstructs::Function"
1536                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
1537                           </test>
1538                        </not>
1539                        <or>
1540                           <instanceof
1541                                 value="org.eclipse.uml2.uml.Class">
1542                           </instanceof>
1543                           <instanceof
1544                                 value="org.eclipse.uml2.uml.Package">
1545                           </instanceof>
1546                        </or>
1547                        <and>
1548                           <not>
1549                              <instanceof
1550                                    value="org.eclipse.uml2.uml.Behavior">
1551                              </instanceof>
1552                           </not>
1553                        </and>
1554                     </and>
1555                  </adapt>
1556               </iterate>
1557            </with>
1558         </activeWhen>
1559      </handler>
1560      <handler
1561            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaModelHandler"
1562            commandId="org.openmodelica.modelicaml.commands.CreateModelicaModelCommand">
1563            <activeWhen>
1564            <with
1565                  variable="selection">
1566               <iterate
1567                     ifEmpty="false"
1568                     operator="or">
1569                  <adapt
1570                        type="org.eclipse.emf.ecore.EObject">
1571                     <not>
1572                        <test
1573                              args="ModelicaML::ModelicaClassConstructs::Function"
1574                              forcePluginActivation="true"
1575                              property="org.openmodelica.modelicaml.testers.hasStereotype">
1576                        </test></not>
1577                     <and>
1578                        <or>
1579                           <instanceof
1580                                 value="org.eclipse.uml2.uml.Package">
1581                           </instanceof>
1582                           <instanceof
1583                                 value="org.eclipse.uml2.uml.Class">
1584                           </instanceof></or>
1585                     </and>
1586                     <not>
1587                        <instanceof
1588                              value="org.eclipse.uml2.uml.Behavior">
1589                        </instanceof>
1590                     </not>
1591                  </adapt>
1592                 </iterate>
1593               <count
1594                     value="1">
1595               </count>
1596            </with>
1597         </activeWhen>
1598      </handler>
1599      <handler
1600            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaBlockHandler"
1601            commandId="org.openmodelica.modelicaml.commands.CreateModelicaBlockCommand">
1602         <activeWhen>
1603            <with
1604                  variable="selection">
1605               <count
1606                     value="1">
1607               </count>
1608               <iterate>
1609                  <adapt
1610                        type="org.eclipse.emf.ecore.EObject">
1611                     <and>
1612                        <not>
1613                           <test
1614                                 args="ModelicaML::ModelicaClassConstructs::Function"
1615                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
1616                           </test>
1617                        </not>
1618                        <or>
1619                           <instanceof
1620                                 value="org.eclipse.uml2.uml.Class">
1621                           </instanceof>
1622                           <instanceof
1623                                 value="org.eclipse.uml2.uml.Package">
1624                           </instanceof>
1625                        </or>
1626                        <and>
1627                           <not>
1628                              <instanceof
1629                                    value="org.eclipse.uml2.uml.Behavior">
1630                              </instanceof>
1631                           </not>
1632                        </and>
1633                     </and>
1634                  </adapt>
1635               </iterate>
1636            </with>
1637         </activeWhen>
1638      </handler>
1639      <handler
1640            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaConnectorHandler"
1641            commandId="org.openmodelica.modelicaml.commands.CreateModelicaConnectorCommand">
1642         <activeWhen>
1643            <with
1644                  variable="selection">
1645               <count
1646                     value="1">
1647               </count>
1648               <iterate>
1649                  <adapt
1650                        type="org.eclipse.emf.ecore.EObject">
1651                     <and>
1652                        <not>
1653                           <test
1654                                 args="ModelicaML::ModelicaClassConstructs::Function"
1655                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
1656                           </test>
1657                        </not>
1658                        <or>
1659                           <instanceof
1660                                 value="org.eclipse.uml2.uml.Class">
1661                           </instanceof>
1662                           <instanceof
1663                                 value="org.eclipse.uml2.uml.Package">
1664                           </instanceof>
1665                        </or>
1666                        <and>
1667                           <not>
1668                              <instanceof
1669                                    value="org.eclipse.uml2.uml.Behavior">
1670                              </instanceof>
1671                           </not>
1672                        </and>
1673                     </and>
1674                  </adapt>
1675               </iterate>
1676            </with>
1677         </activeWhen>
1678      </handler>
1679      <handler
1680            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaTypeHandler"
1681            commandId="org.openmodelica.modelicaml.commands.CreateModelicaTypeCommand">
1682         <activeWhen>
1683            <with
1684                  variable="selection">
1685               <count
1686                     value="1">
1687               </count>
1688               <iterate>
1689                  <adapt
1690                        type="org.eclipse.emf.ecore.EObject">
1691                     <and>
1692                        <not>
1693                           <test
1694                                 args="ModelicaML::ModelicaClassConstructs::Function"
1695                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
1696                           </test>
1697                        </not>
1698                        <or>
1699                           <instanceof
1700                                 value="org.eclipse.uml2.uml.Class">
1701                           </instanceof>
1702                           <instanceof
1703                                 value="org.eclipse.uml2.uml.Package">
1704                           </instanceof>
1705                        </or>
1706                        <and>
1707                           <not>
1708                              <instanceof
1709                                    value="org.eclipse.uml2.uml.Behavior">
1710                              </instanceof>
1711                           </not>
1712                        </and>
1713                     </and>
1714                  </adapt>
1715               </iterate>
1716            </with>
1717         </activeWhen>
1718      </handler>
1719      <handler
1720            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaEnumerationHandler"
1721            commandId="org.openmodelica.modelicaml.commands.CreateModelicaEnumerationCommand">
1722         <activeWhen>
1723            <with
1724                  variable="selection">
1725               <count
1726                     value="1">
1727               </count>
1728               <iterate>
1729                  <adapt
1730                        type="org.eclipse.emf.ecore.EObject">
1731                     <and>
1732                        <not>
1733                           <test
1734                                 args="ModelicaML::ModelicaClassConstructs::Function"
1735                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
1736                           </test>
1737                        </not>
1738                        <or>
1739                           <instanceof
1740                                 value="org.eclipse.uml2.uml.Class">
1741                           </instanceof>
1742                           <instanceof
1743                                 value="org.eclipse.uml2.uml.Package">
1744                           </instanceof>
1745                        </or>
1746                        <and>
1747                           <not>
1748                              <instanceof
1749                                    value="org.eclipse.uml2.uml.Behavior">
1750                              </instanceof>
1751                           </not>
1752                        </and>
1753                     </and>
1754                  </adapt>
1755               </iterate>
1756            </with>
1757         </activeWhen>
1758      </handler>
1759      <handler
1760            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaFunctionHandler"
1761            commandId="org.openmodelica.modelicaml.commands.CreateModelicaFunctionCommand">
1762         <activeWhen>
1763            <with
1764                  variable="selection">
1765               <count
1766                     value="1">
1767               </count>
1768               <iterate>
1769                  <adapt
1770                        type="org.eclipse.emf.ecore.EObject">
1771                     <or>
1772                        <instanceof
1773                              value="org.eclipse.uml2.uml.Package">
1774                        </instanceof>
1775                        <instanceof
1776                              value="org.eclipse.uml2.uml.Class">
1777                        </instanceof>
1778                     </or>
1779                     <and>
1780                        <not>
1781                           <instanceof
1782                                 value="org.eclipse.uml2.uml.Behavior">
1783                           </instanceof>
1784                        </not>
1785                     </and>
1786                  </adapt>
1787               </iterate>
1788            </with>
1789         </activeWhen>
1790      </handler>
1791      <handler
1792            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaRecordHandler"
1793            commandId="org.openmodelica.modelicaml.commands.CreateModelicaRecordCommand">
1794         <activeWhen>
1795            <with
1796                  variable="selection">
1797               <count
1798                     value="1">
1799               </count>
1800               <iterate>
1801                  <adapt
1802                        type="org.eclipse.emf.ecore.EObject">
1803                     <and>
1804                        <or>
1805                           <instanceof
1806                                 value="org.eclipse.uml2.uml.Package">
1807                           </instanceof>
1808                           <instanceof
1809                                 value="org.eclipse.uml2.uml.Class">
1810                           </instanceof>
1811                        </or>
1812                        <not>
1813                           <test
1814                                 args="ModelicaML::ModelicaClassConstructs::Function"
1815                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
1816                           </test>
1817                        </not>
1818                        <and>
1819                           <not>
1820                              <instanceof
1821                                    value="org.eclipse.uml2.uml.Behavior">
1822                              </instanceof>
1823                           </not>
1824                        </and>
1825                     </and>
1826                  </adapt>
1827               </iterate>
1828            </with>
1829         </activeWhen>
1830      </handler>
1831      <handler
1832            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaCalculationModelHandler"
1833            commandId="org.openmodelica.modelicaml.commands.CreateModelicaCalculationModelCommand">
1834         <activeWhen>
1835            <with
1836                  variable="selection">
1837               <count
1838                     value="1">
1839               </count>
1840               <iterate>
1841                  <adapt
1842                        type="org.eclipse.emf.ecore.EObject">
1843                     <and>
1844                        <not>
1845                           <test
1846                                 args="ModelicaML::ModelicaClassConstructs::Function"
1847                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
1848                           </test>
1849                        </not>
1850                        <or>
1851                           <instanceof
1852                                 value="org.eclipse.uml2.uml.Class">
1853                           </instanceof>
1854                           <instanceof
1855                                 value="org.eclipse.uml2.uml.Package">
1856                           </instanceof>
1857                        </or>
1858                        <and>
1859                           <not>
1860                              <instanceof
1861                                    value="org.eclipse.uml2.uml.Behavior">
1862                              </instanceof>
1863                           </not>
1864                        </and>
1865                     </and>
1866                  </adapt>
1867               </iterate>
1868            </with>
1869         </activeWhen>
1870      </handler>
1871      <handler
1872            class="org.openmodelica.modelicaml.profile.handlers.CreateTestScenarioHandler"
1873            commandId="org.openmodelica.modelicaml.commands.CreateTestScenarioCommand">
1874         <activeWhen>
1875            <with
1876                  variable="selection">
1877               <count
1878                     value="1">
1879               </count>
1880               <iterate>
1881                  <adapt
1882                        type="org.eclipse.emf.ecore.EObject">
1883                     <and>
1884                        <not>
1885                           <test
1886                                 args="ModelicaML::ModelicaClassConstructs::Function"
1887                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
1888                           </test>
1889                        </not>
1890                        <or>
1891                           <instanceof
1892                                 value="org.eclipse.uml2.uml.Class">
1893                           </instanceof>
1894                           <instanceof
1895                                 value="org.eclipse.uml2.uml.Package">
1896                           </instanceof>
1897                        </or>
1898                        <and>
1899                           <not>
1900                              <instanceof
1901                                    value="org.eclipse.uml2.uml.Behavior">
1902                              </instanceof>
1903                           </not>
1904                        </and>
1905                     </and>
1906                  </adapt>
1907               </iterate>
1908            </with>
1909         </activeWhen>
1910      </handler>
1911      <handler
1912            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaRequirementHandler"
1913            commandId="org.openmodelica.modelicaml.commands.CreateModelicaRequirementCommand">
1914         <activeWhen>
1915            <with
1916                  variable="selection">
1917               <count
1918                     value="1">
1919               </count>
1920               <iterate>
1921                  <adapt
1922                        type="org.eclipse.emf.ecore.EObject">
1923                     <and>
1924                        <not>
1925                           <test
1926                                 args="ModelicaML::ModelicaClassConstructs::Function"
1927                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
1928                           </test>
1929                        </not>
1930                        <or>
1931                           <instanceof
1932                                 value="org.eclipse.uml2.uml.Package">
1933                           </instanceof>
1934                           <instanceof
1935                                 value="org.eclipse.uml2.uml.Class">
1936                           </instanceof>
1937                        </or>
1938                        <and>
1939                           <not>
1940                              <instanceof
1941                                    value="org.eclipse.uml2.uml.Behavior">
1942                              </instanceof>
1943                           </not>
1944                        </and>
1945                     </and>
1946                  </adapt>
1947               </iterate>
1948            </with>
1949         </activeWhen>
1950      </handler>
1951      <handler
1952            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaEnumerationLiteralHandler"
1953            commandId="org.openmodelica.modelicaml.commands.CreateModelicaEnumerationLiteralCommand">
1954         <activeWhen>
1955            <with
1956                  variable="selection">
1957               <count
1958                     value="1">
1959               </count>
1960               <iterate>
1961                  <adapt
1962                        type="org.eclipse.emf.ecore.EObject">
1963                     <instanceof
1964                           value="org.eclipse.uml2.uml.Enumeration">
1965                     </instanceof>
1966                  </adapt>
1967               </iterate>
1968            </with>
1969         </activeWhen>
1970      </handler>
1971      <handler
1972            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaFunctionArgumentHandler"
1973            commandId="org.openmodelica.modelicaml.commands.CreateModelicaFunctionArgumentCommand">
1974         <activeWhen>
1975            <with
1976                  variable="selection">
1977               <count
1978                     value="1">
1979               </count>
1980               <iterate>
1981                  <adapt
1982                        type="org.eclipse.emf.ecore.EObject">
1983                     <and>
1984                        <instanceof
1985                              value="org.eclipse.uml2.uml.FunctionBehavior">
1986                        </instanceof>
1987                        <test
1988                              args="ModelicaML::ModelicaClassConstructs::Function"
1989                              property="org.openmodelica.modelicaml.testers.hasStereotype">
1990                        </test>
1991                     </and>
1992                  </adapt>
1993               </iterate>
1994            </with>
1995         </activeWhen>
1996      </handler>
1997      <handler
1998            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaVariableHandler"
1999            commandId="org.openmodelica.modelicaml.commands.CreateModelicaVariableCommand">
2000         <activeWhen>
2001            <with
2002                  variable="selection">
2003               <count
2004                     value="1">
2005               </count>
2006               <iterate>
2007                  <adapt
2008                        type="org.eclipse.emf.ecore.EObject">
2009                     <or>
2010                        <test
2011                              args="ModelicaML::ModelicaClassConstructs::Function"
2012                              property="org.openmodelica.modelicaml.testers.hasStereotype">
2013                        </test>
2014                        <test
2015                              args="ModelicaML::ModelicaClassConstructs::Model"
2016                              property="org.openmodelica.modelicaml.testers.hasStereotype">
2017                        </test>
2018                        <test
2019                              args="ModelicaML::ModelicaClassConstructs::Block"
2020                              property="org.openmodelica.modelicaml.testers.hasStereotype">
2021                        </test>
2022                        <test
2023                              args="ModelicaML::ModelicaClassConstructs::ModelicaClass"
2024                              property="org.openmodelica.modelicaml.testers.hasStereotype">
2025                        </test>
2026                        <test
2027                              args="ModelicaML::ModelicaClassConstructs::ModelicaPackage"
2028                              property="org.openmodelica.modelicaml.testers.hasStereotype">
2029                        </test>
2030                        <test
2031                              args="ModelicaML::ModelicaClassConstructs::Record"
2032                              property="org.openmodelica.modelicaml.testers.hasStereotype">
2033                        </test>
2034                        <test
2035                              args="ModelicaML::ModelicaClassConstructs::Connector"
2036                              property="org.openmodelica.modelicaml.testers.hasStereotype">
2037                        </test>
2038                        <test
2039                              args="ModelicaML::ModelicaClassConstructs::ModelicaClass"
2040                              property="org.openmodelica.modelicaml.testers.hasStereotype">
2041                        </test>
2042                        <test
2043                              args="ModelicaML::ModelicaClassConstructs::Operator"
2044                              property="org.openmodelica.modelicaml.testers.hasStereotype">
2045                        </test>
2046                        <test
2047                              args="ModelicaML::ModelicaClassConstructs::ModelicaModelReference"
2048                              property="org.openmodelica.modelicaml.testers.hasStereotype">
2049                        </test>
2050                        <test
2051                              args="ModelicaML::ModelicaClassConstructs::CalculationModel"
2052                              property="org.openmodelica.modelicaml.testers.hasStereotype">
2053                        </test>
2054                        <test
2055                              args="ModelicaML::ModelicaRequirementConstructs::Requirement"
2056                              property="org.openmodelica.modelicaml.testers.hasStereotype">
2057                        </test>
2058                        <test
2059                              args="ModelicaML::ModelicaRequirementConstructs::RequirementRepresentative"
2060                              property="org.openmodelica.modelicaml.testers.hasStereotype">
2061                        </test>
2062                        <test
2063                              args="ModelicaML::ModelicaRequirementConstructs::MeasureOfEffectiveness"
2064                              property="org.openmodelica.modelicaml.testers.hasStereotype">
2065                        </test>
2066                     </or>
2067                  </adapt>
2068               </iterate>
2069            </with>
2070         </activeWhen>
2071      </handler>
2072      <handler
2073            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaComponentHandler"
2074            commandId="org.openmodelica.modelicaml.commands.CreateModelicaComponentCommand">
2075         <activeWhen>
2076            <with
2077                  variable="selection">
2078               <count
2079                     value="1">
2080               </count>
2081               <iterate>
2082                  <adapt
2083                        type="org.eclipse.emf.ecore.EObject">
2084                     <and>
2085                        <instanceof
2086                              value="org.eclipse.uml2.uml.Class">
2087                        </instanceof>
2088                        <not>
2089                           <test
2090                                 args="ModelicaML::ModelicaClassConstructs::Function"
2091                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2092                           </test>
2093                        </not>
2094                        <not>
2095                           <test
2096                                 args="ModelicaML::ModelicaClassConstructs::ModelicaPackage"
2097                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2098                           </test>
2099                        </not>
2100                        <and>
2101                           <not>
2102                              <instanceof
2103                                    value="org.eclipse.uml2.uml.Behavior">
2104                              </instanceof>
2105                           </not>
2106                        </and>
2107                     </and>
2108                  </adapt>
2109               </iterate>
2110            </with>
2111         </activeWhen>
2112      </handler>
2113      <handler
2114            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaCalculatedPropertyHandler"
2115            commandId="org.openmodelica.modelicaml.commands.CreateModelicaCalculatedPropertyCommand">
2116         <activeWhen>
2117            <with
2118                  variable="selection">
2119               <count
2120                     value="1">
2121               </count>
2122               <iterate>
2123                  <adapt
2124                        type="org.eclipse.emf.ecore.EObject">
2125                     <and>
2126                        <instanceof
2127                              value="org.eclipse.uml2.uml.Class">
2128                        </instanceof>
2129                        <not>
2130                           <test
2131                                 args="ModelicaML::ModelicaClassConstructs::ModelicaPackage"
2132                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2133                           </test>
2134                        </not>
2135                        <not>
2136                           <test
2137                                 args="ModelicaML::ModelicaClassConstructs::Function"
2138                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2139                           </test>
2140                        </not>
2141                        <and>
2142                           <not>
2143                              <instanceof
2144                                    value="org.eclipse.uml2.uml.Behavior">
2145                              </instanceof>
2146                           </not>
2147                        </and>
2148                     </and>
2149                  </adapt>
2150               </iterate>
2151            </with>
2152         </activeWhen>
2153      </handler>
2154      <handler
2155            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaRequirementInstanceHandler"
2156            commandId="org.openmodelica.modelicaml.commands.CreateModelicaRequirementInstanceCommand">
2157         <activeWhen>
2158            <with
2159                  variable="selection">
2160               <count
2161                     value="1">
2162               </count>
2163               <iterate>
2164                  <adapt
2165                        type="org.eclipse.emf.ecore.EObject">
2166                     <and>
2167                        <instanceof
2168                              value="org.eclipse.uml2.uml.Class">
2169                        </instanceof>
2170                        <or>
2171                           <test
2172                                 args="ModelicaML::ModelicaClassConstructs::Block"
2173                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2174                           </test>
2175                           <test
2176                                 args="ModelicaML::ModelicaClassConstructs::Model"
2177                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2178                           </test>
2179                           <test
2180                                 args="ModelicaML::ModelicaClassConstructs::ModelicaClass"
2181                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2182                           </test>
2183                        </or>
2184                        <and>
2185                           <not>
2186                              <instanceof
2187                                    value="org.eclipse.uml2.uml.Behavior">
2188                              </instanceof>
2189                           </not>
2190                        </and>
2191                     </and>
2192                  </adapt>
2193               </iterate>
2194            </with>
2195         </activeWhen>
2196      </handler>
2197      <handler
2198            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaPortHandler"
2199            commandId="org.openmodelica.modelicaml.commands.CreateModelicaPortCommand">
2200         <activeWhen>
2201            <with
2202                  variable="selection">
2203               <count
2204                     value="1">
2205               </count>
2206               <iterate>
2207                  <adapt
2208                        type="org.eclipse.emf.ecore.EObject">
2209                     <and>
2210                        <instanceof
2211                              value="org.eclipse.uml2.uml.Class">
2212                        </instanceof>
2213                        <or>
2214                           <test
2215                                 args="ModelicaML::ModelicaClassConstructs::Block"
2216                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2217                           </test>
2218                           <test
2219                                 args="ModelicaML::ModelicaClassConstructs::Model"
2220                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2221                           </test>
2222                           <test
2223                                 args="ModelicaML::ModelicaClassConstructs::CalculationModel"
2224                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2225                           </test>
2226                           <test
2227                                 args="ModelicaML::ModelicaClassConstructs::ModelicaClass"
2228                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2229                           </test>
2230                        </or>
2231                        <and>
2232                           <not>
2233                              <instanceof
2234                                    value="org.eclipse.uml2.uml.Behavior">
2235                              </instanceof>
2236                           </not>
2237                        </and>
2238                     </and>
2239                  </adapt>
2240               </iterate>
2241            </with>
2242         </activeWhen>
2243      </handler>
2244      <handler
2245            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaAlgorithmHandler"
2246            commandId="org.openmodelica.modelicaml.commands.CreateModelicaAlgorithmCommand">
2247         <activeWhen>
2248            <with
2249                  variable="selection">
2250               <count
2251                     value="1">
2252               </count>
2253               <iterate>
2254                  <adapt
2255                        type="org.eclipse.emf.ecore.EObject">
2256                     <and>
2257                        <or>
2258                           <instanceof
2259                                 value="org.eclipse.uml2.uml.Class">
2260                           </instanceof>
2261                           <instanceof
2262                                 value="org.eclipse.uml2.uml.FunctionBehavior">
2263                           </instanceof>
2264                        </or>
2265                        <not>
2266                           <test
2267                                 args="ModelicaML::ModelicaClassConstructs::ModelicaPackage"
2268                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2269                           </test>
2270                        </not>
2271                        <not>
2272                           <test
2273                                 args="ModelicaML::ModelicaClassConstructs::Record"
2274                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2275                           </test>
2276                        </not>
2277                        <not>
2278                           <test
2279                                 args="ModelicaML::ModelicaClassConstructs::Connector"
2280                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2281                           </test>
2282                        </not>
2283                        <not>
2284                           <test
2285                                 args="ModelicaML::ModelicaClassConstructs::Operator"
2286                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2287                           </test>
2288                        </not>
2289                        <not>
2290                           <test
2291                                 args="ModelicaML::ModelicaClassConstructs::Function"
2292                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2293                           </test>
2294                        </not>
2295                        <and>
2296                           <not>
2297                              <instanceof
2298                                    value="org.eclipse.uml2.uml.Behavior">
2299                              </instanceof>
2300                           </not>
2301                        </and>
2302                     </and>
2303                  </adapt>
2304               </iterate>
2305            </with>
2306         </activeWhen>
2307      </handler>
2308      <handler
2309            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaEquationHandler"
2310            commandId="org.openmodelica.modelicaml.commands.CreateModelicaEquationsCodeCommand">
2311         <activeWhen>
2312            <with
2313                  variable="selection">
2314               <count
2315                     value="1">
2316               </count>
2317               <iterate>
2318                  <adapt
2319                        type="org.eclipse.emf.ecore.EObject">
2320                     <and>
2321                        <instanceof
2322                              value="org.eclipse.uml2.uml.Class">
2323                        </instanceof>
2324                        <not>
2325                           <test
2326                                 args="ModelicaML::ModelicaClassConstructs::ModelicaPackage"
2327                                 forcePluginActivation="true"
2328                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2329                           </test>
2330                        </not>
2331                        <not>
2332                           <test
2333                                 args="ModelicaML::ModelicaClassConstructs::Record"
2334                                 forcePluginActivation="true"
2335                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2336                           </test>
2337                        </not>
2338                        <not>
2339                           <test
2340                                 args="ModelicaML::ModelicaClassConstructs::Connector"
2341                                 forcePluginActivation="true"
2342                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2343                           </test>
2344                        </not>
2345                        <not>
2346                           <test
2347                                 args="ModelicaML::ModelicaClassConstructs::Operator"
2348                                 forcePluginActivation="true"
2349                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2350                           </test>
2351                        </not>
2352                        <not>
2353                           <test
2354                                 args="ModelicaML::ModelicaClassConstructs::Function"
2355                                 forcePluginActivation="true"
2356                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2357                           </test>
2358                        </not>
2359                        <and>
2360                           <not>
2361                              <instanceof
2362                                    value="org.eclipse.uml2.uml.Behavior">
2363                              </instanceof>
2364                           </not>
2365                        </and></and>
2366                  </adapt></iterate>
2367            </with>
2368         </activeWhen>
2369      </handler>
2370      <handler
2371            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaAssertHandler"
2372            commandId="org.openmodelica.modelicaml.commands.CreateModelicaAssertCommand">
2373         <activeWhen>
2374            <with
2375                  variable="selection">
2376               <count
2377                     value="1">
2378               </count>
2379               <iterate>
2380                  <adapt
2381                        type="org.eclipse.emf.ecore.EObject">
2382                     <or>
2383                        <test
2384                              args="ModelicaML::ModelicaClassConstructs::Block"
2385                              property="org.openmodelica.modelicaml.testers.hasStereotype">
2386                        </test>
2387                        <test
2388                              args="ModelicaML::ModelicaClassConstructs::Model"
2389                              property="org.openmodelica.modelicaml.testers.hasStereotype">
2390                        </test>
2391                        <test
2392                              args="ModelicaML::ModelicaClassConstructs::ModelicaClass"
2393                              property="org.openmodelica.modelicaml.testers.hasStereotype">
2394                        </test>
2395                        <test
2396                              args="ModelicaML::ModelicaRequirementConstructs::Requirement"
2397                              property="org.openmodelica.modelicaml.testers.hasStereotype">
2398                        </test>
2399                        <instanceof
2400                              value="org.eclipse.uml2.uml.StateMachine">
2401                        </instanceof>
2402                        <instanceof
2403                              value="org.eclipse.uml2.uml.State">
2404                        </instanceof>
2405                     </or>
2406                  </adapt>
2407               </iterate>
2408            </with>
2409         </activeWhen>
2410      </handler>
2411      <handler
2412            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaAnnotationHandler"
2413            commandId="org.openmodelica.modelicaml.commands.CreateModelicaAnnotationCommand">
2414         <activeWhen>
2415            <with
2416                  variable="selection">
2417               <count
2418                     value="1">
2419               </count>
2420               <iterate>
2421                  <adapt
2422                        type="org.eclipse.emf.ecore.EObject">
2423                     <not>
2424                        <instanceof
2425                              value="org.eclipse.uml2.uml.Enumeration">
2426                        </instanceof>
2427                     </not>
2428                     <or>
2429                        <instanceof
2430                              value="org.eclipse.uml2.uml.Classifier">
2431                        </instanceof>
2432                        <instanceof
2433                              value="org.eclipse.uml2.uml.Package">
2434                        </instanceof>
2435                     </or>
2436                     <and>
2437                        <not>
2438                           <instanceof
2439                                 value="org.eclipse.uml2.uml.Behavior">
2440                           </instanceof>
2441                        </not>
2442                        <or>
2443                           <test
2444                                 args="ModelicaML::ModelicaClassConstructs::ModelicaClass"
2445                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2446                           </test>
2447                           <test
2448                                 args="ModelicaML::ModelicaClassConstructs::ModelicaPackage"
2449                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2450                           </test>
2451                           <test
2452                                 args="ModelicaML::ModelicaClassConstructs::Operator"
2453                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2454                           </test>
2455                           <test
2456                                 args="ModelicaML::ModelicaClassConstructs::Model"
2457                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2458                           </test>
2459                           <test
2460                                 args="ModelicaML::ModelicaClassConstructs::Connector"
2461                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2462                           </test>
2463                           <test
2464                                 args="ModelicaML::ModelicaClassConstructs::Block"
2465                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2466                           </test>
2467                           <test
2468                                 args="ModelicaML::ModelicaClassConstructs::Record"
2469                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2470                           </test>
2471                           <test
2472                                 args="ModelicaML::ModelicaClassConstructs::Type"
2473                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2474                           </test>
2475                           <test
2476                                 args="ModelicaML::ModelicaClassConstructs::Function"
2477                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2478                           </test>
2479                           <test
2480                                 args="ModelicaML::ModelicaClassConstructs::CalculationModel"
2481                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2482                           </test>
2483                           <test
2484                                 args="ModelicaML::ModelicaRequirementConstructs::Requirement"
2485                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2486                           </test>
2487                           <test
2488                                 args="ModelicaML::ModelicaSimulationConstructs::Simulation"
2489                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2490                           </test>
2491                        </or>
2492                     </and>
2493                  </adapt>
2494               </iterate>
2495            </with>
2496         </activeWhen>
2497      </handler>
2498      <handler
2499            class="org.openmodelica.modelicaml.profile.handlers.CreateSignalHandler"
2500            commandId="org.openmodelica.modelicaml.commands.CreateSignalCommand">
2501         <activeWhen>
2502            <with
2503                  variable="selection">
2504               <count
2505                     value="1">
2506               </count>
2507               <iterate>
2508                  <adapt
2509                        type="org.eclipse.emf.ecore.EObject">
2510                     <and>
2511                        <not>
2512                           <test
2513                                 args="ModelicaML::ModelicaClassConstructs::ModelicaPackage"
2514                                 forcePluginActivation="true"
2515                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2516                           </test>
2517                        </not>
2518                        <not>
2519                           <test
2520                                 args="ModelicaML::ModelicaClassConstructs::Record"
2521                                 forcePluginActivation="true"
2522                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2523                           </test>
2524                        </not>
2525                        <not>
2526                           <test
2527                                 args="ModelicaML::ModelicaClassConstructs::Connector"
2528                                 forcePluginActivation="true"
2529                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2530                           </test>
2531                        </not>
2532                        <instanceof
2533                              value="org.eclipse.uml2.uml.Class">
2534                        </instanceof>
2535                        <not>
2536                           <test
2537                                 args="ModelicaML::ModelicaClassConstructs::Operator"
2538                                 forcePluginActivation="true"
2539                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2540                           </test>
2541                        </not>
2542                        <not>
2543                           <test
2544                                 args="ModelicaML::ModelicaClassConstructs::Function"
2545                                 forcePluginActivation="true"
2546                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2547                           </test>
2548                        </not>
2549                        <and>
2550                           <not>
2551                              <instanceof
2552                                    value="org.eclipse.uml2.uml.Behavior">
2553                              </instanceof>
2554                           </not>
2555                        </and>
2556                     </and>
2557                  </adapt>
2558               </iterate>
2559            </with>
2560         </activeWhen>
2561      </handler>
2562      <handler
2563            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaMLClassDiagramHandler"
2564            commandId="org.openmodelica.modelicaml.commands.CreateClassDiagram">
2565         <activeWhen>
2566            <with
2567                  variable="selection">
2568               <count
2569                     value="1">
2570               </count>
2571               <iterate>
2572                  <adapt
2573                        type="org.eclipse.emf.ecore.EObject">
2574
2575                     <or>
2576                        <instanceof
2577                              value="org.eclipse.uml2.uml.Package">
2578                        </instanceof>
2579                        <instanceof
2580                              value="org.eclipse.uml2.uml.Model">
2581                        </instanceof>
2582                     </or>
2583                  </adapt>
2584               </iterate>
2585            </with>
2586         </activeWhen>
2587      </handler>
2588      <handler
2589            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaMLConnectionDiagramHandler"
2590            commandId="org.openmodelica.modelicaml.commands.CreateConnectionDiagram">
2591         <activeWhen>
2592            <with
2593                  variable="selection">
2594               <count
2595                     value="1">
2596               </count>
2597               <iterate>
2598                  <adapt
2599                        type="org.eclipse.emf.ecore.EObject">
2600                     <and>
2601                        <or>
2602                           <test
2603                                 args="ModelicaML::ModelicaClassConstructs::ModelicaClass"
2604                                 forcePluginActivation="true"
2605                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2606                           </test>
2607                           <test
2608                                 args="ModelicaML::ModelicaClassConstructs::Model"
2609                                 forcePluginActivation="true"
2610                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2611                           </test>
2612                           <test
2613                                 args="ModelicaML::ModelicaClassConstructs::Block"
2614                                 forcePluginActivation="true"
2615                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2616                           </test>
2617                           <test
2618                                 args="ModelicaML::ModelicaClassConstructs::CalculationModel"
2619                                 forcePluginActivation="true"
2620                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2621                           </test>
2622                        </or>
2623                     </and>
2624                     <instanceof
2625                           value="org.eclipse.uml2.uml.Class">
2626                     </instanceof>
2627                  </adapt>
2628               </iterate>
2629            </with>
2630         </activeWhen>
2631      </handler>
2632      <handler
2633            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaMLStateMachineDiagramHandler"
2634            commandId="org.openmodelica.modelicaml.commands.CreateStateMachineDiagram">
2635         <activeWhen>
2636            <with
2637                  variable="selection">
2638               <count
2639                     value="1">
2640               </count>
2641               <iterate>
2642                  <adapt
2643                        type="org.eclipse.emf.ecore.EObject">
2644                     <and>
2645                        <or>
2646                           <test
2647                                 args="ModelicaML::ModelicaClassConstructs::ModelicaClass"
2648                                 forcePluginActivation="true"
2649                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2650                           </test>
2651                           <test
2652                                 args="ModelicaML::ModelicaClassConstructs::Model"
2653                                 forcePluginActivation="true"
2654                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2655                           </test>
2656                           <test
2657                                 args="ModelicaML::ModelicaClassConstructs::Block"
2658                                 forcePluginActivation="true"
2659                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2660                           </test>
2661                           <test
2662                                 args="ModelicaML::ModelicaClassConstructs::CalculationModel"
2663                                 forcePluginActivation="true"
2664                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2665                           </test>
2666                           <test
2667                                 args="ModelicaML::ModelicaRequirementConstructs::Requirement"
2668                                 forcePluginActivation="true"
2669                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2670                           </test>
2671                        </or>
2672                     </and>
2673                     <instanceof
2674                           value="org.eclipse.uml2.uml.Class">
2675                     </instanceof>
2676                  </adapt>
2677               </iterate>
2678            </with>
2679         </activeWhen>
2680      </handler>
2681      <handler
2682            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaMLConditionalEquationsDiagramHandler"
2683            commandId="org.openmodelica.modelicaml.commands.CreateConditionalEquationDiagram">
2684         <activeWhen>
2685            <with
2686                  variable="selection">
2687               <count
2688                     value="1">
2689               </count>
2690               <iterate>
2691                  <adapt
2692                        type="org.eclipse.emf.ecore.EObject">
2693                     <and>
2694                        <or>
2695                           <test
2696                                 args="ModelicaML::ModelicaClassConstructs::ModelicaClass"
2697                                 forcePluginActivation="true"
2698                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2699                           </test>
2700                           <test
2701                                 args="ModelicaML::ModelicaClassConstructs::Model"
2702                                 forcePluginActivation="true"
2703                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2704                           </test>
2705                           <test
2706                                 args="ModelicaML::ModelicaClassConstructs::Block"
2707                                 forcePluginActivation="true"
2708                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2709                           </test>
2710                           <test
2711                                 args="ModelicaML::ModelicaClassConstructs::CalculationModel"
2712                                 forcePluginActivation="true"
2713                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2714                           </test>
2715                           <test
2716                                 args="ModelicaML::ModelicaRequirementConstructs::Requirement"
2717                                 forcePluginActivation="true"
2718                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2719                           </test>
2720                        </or>
2721                     </and>
2722                     <instanceof
2723                           value="org.eclipse.uml2.uml.Class">
2724                     </instanceof>
2725                  </adapt>
2726               </iterate>
2727            </with>
2728         </activeWhen>
2729      </handler>
2730      <handler
2731            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaMLConditionalAlgorithmDiagramHandler"
2732            commandId="org.openmodelica.modelicaml.commands.CreateConditionalAlgorithmDiagram">
2733         <activeWhen>
2734            <with
2735                  variable="selection">
2736               <count
2737                     value="1">
2738               </count>
2739               <iterate>
2740                  <adapt
2741                        type="org.eclipse.emf.ecore.EObject">
2742                     <and>
2743                        <or>
2744                           <test
2745                                 args="ModelicaML::ModelicaClassConstructs::ModelicaClass"
2746                                 forcePluginActivation="true"
2747                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2748                           </test>
2749                           <test
2750                                 args="ModelicaML::ModelicaClassConstructs::Model"
2751                                 forcePluginActivation="true"
2752                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2753                           </test>
2754                           <test
2755                                 args="ModelicaML::ModelicaClassConstructs::Block"
2756                                 forcePluginActivation="true"
2757                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2758                           </test>
2759                           <test
2760                                 args="ModelicaML::ModelicaClassConstructs::CalculationModel"
2761                                 forcePluginActivation="true"
2762                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2763                           </test>
2764                           <test
2765                                 args="ModelicaML::ModelicaRequirementConstructs::Requirement"
2766                                 forcePluginActivation="true"
2767                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2768                           </test>
2769                        </or>
2770                     </and>
2771                     <instanceof
2772                           value="org.eclipse.uml2.uml.Class">
2773                     </instanceof>
2774                  </adapt>
2775               </iterate>
2776            </with>
2777         </activeWhen>
2778      </handler>
2779      <handler
2780            class="org.openmodelica.modelicaml.profile.handlers.CreateModelicaSimulationModelHandler"
2781            commandId="org.openmodelica.modelicaml.commands.CreateModelicaSimulationModelCommand">
2782         <activeWhen>
2783            <with
2784                  variable="selection">
2785               <iterate
2786                     ifEmpty="false"
2787                     operator="or">
2788                  <adapt
2789                        type="org.eclipse.emf.ecore.EObject">
2790                     <not>
2791                        <test
2792                              args="ModelicaML::ModelicaClassConstructs::Function"
2793                              forcePluginActivation="true"
2794                              property="org.openmodelica.modelicaml.testers.hasStereotype">
2795                        </test>
2796                     </not>
2797                     <and>
2798                        <or>
2799                           <instanceof
2800                                 value="org.eclipse.uml2.uml.Package">
2801                           </instanceof>
2802                           <instanceof
2803                                 value="org.eclipse.uml2.uml.Class">
2804                           </instanceof>
2805                        </or>
2806                     </and>
2807                     <not>
2808                        <instanceof
2809                              value="org.eclipse.uml2.uml.Behavior">
2810                        </instanceof>
2811                     </not>
2812                  </adapt>
2813               </iterate>
2814               <count
2815                     value="1">
2816               </count>
2817            </with>
2818         </activeWhen>
2819      </handler>
2820      <handler
2821            class="org.openmodelica.modelicaml.profile.handlers.CreateValueMediatorHandler"
2822            commandId="org.openmodelica.modelicaml.commands.CreateValueMediatorCommand">
2823         <activeWhen>
2824            <with
2825                  variable="selection">
2826               <count
2827                     value="1">
2828               </count>
2829               <iterate>
2830                  <adapt
2831                        type="org.eclipse.emf.ecore.EObject">
2832                     <or>
2833                        <test
2834                              args="ModelicaML::ValueBinding::ValueMediatorsContainer"
2835                              property="org.openmodelica.modelicaml.testers.hasStereotype">
2836                        </test>
2837                     </or>
2838                  </adapt>
2839               </iterate>
2840            </with>
2841         </activeWhen>
2842      </handler>
2843      <handler
2844            class="org.openmodelica.modelicaml.profile.handlers.CreateValueMediatorsContainerHandler"
2845            commandId="org.openmodelica.modelicaml.commands.CreateValueMediatorsContainerCommand">
2846         <activeWhen>
2847            <with
2848                  variable="selection">
2849               <count
2850                     value="1">
2851               </count>
2852               <iterate>
2853                  <adapt
2854                        type="org.eclipse.emf.ecore.EObject">
2855                     <and>
2856                        <not>
2857                           <test
2858                                 args="ModelicaML::ModelicaClassConstructs::Function"
2859                                 property="org.openmodelica.modelicaml.testers.hasStereotype">
2860                           </test>
2861                        </not>
2862                        <or>
2863                           <instanceof
2864                                 value="org.eclipse.uml2.uml.Class">
2865                           </instanceof>
2866                           <instanceof
2867                                 value="org.eclipse.uml2.uml.Package">
2868                           </instanceof>
2869                        </or>
2870                        <and>
2871                           <not>
2872                              <instanceof
2873                                    value="org.eclipse.uml2.uml.Behavior">
2874                              </instanceof>
2875                           </not>
2876                        </and>
2877                     </and>
2878                  </adapt>
2879               </iterate>
2880            </with>
2881         </activeWhen>
2882      </handler>
2883   </extension>
2884   <extension
2885         point="org.eclipse.core.expressions.propertyTesters">
2886      <propertyTester
2887            class="org.openmodelica.modelicaml.profile.handlers.HasStereotypePropertyTester"
2888            id="org.openmodelica.modelicaml.hasStereotypeTester"
2889            namespace="org.openmodelica.modelicaml.testers"
2890            properties="hasStereotype"
2891            type="org.eclipse.emf.ecore.EObject">
2892      </propertyTester>
2893   </extension>
2894   <extension
2895         point="org.eclipse.papyrus.diagram.common.paletteDefinition">
2896      <paletteDefinition
2897            ID="org.openmodelica.modelicaml.ModelicaMLClassDiagramPaletteDefinition"
2898            class="org.eclipse.papyrus.diagram.common.service.PluginPaletteProvider"
2899            icon="resources/icons/icons16/ModelicaML_logo.gif"
2900            name="ModelicaML Class Diagram Palette "
2901            path="/palettes/ModelicaMLClassDiagram.Palette.xml"
2902            provider="OpenModelica Project">
2903         <Priority
2904               name="Highest">
2905         </Priority>
2906         <editor
2907               id="org.eclipse.papyrus.diagram.clazz">
2908         </editor>
2909      </paletteDefinition>
2910   </extension>
2911   <extension
2912         point="org.eclipse.papyrus.diagram.common.paletteDefinition">
2913      <paletteDefinition
2914            ID="org.openmodelica.modelicaml.ModelicaMLConnectionDiagramPaletteDefinition"
2915            class="org.eclipse.papyrus.diagram.common.service.PluginPaletteProvider"
2916            icon="resources/icons/icons16/ModelicaML_logo.gif"
2917            name="ModelicaML Connection Diagram Palette "
2918            path="/palettes/ModelicaMLConnectionDiagram.Palette.xml"
2919            provider="OpenModelica Project">
2920         <Priority
2921               name="Highest">
2922         </Priority>
2923         <editor
2924               id="org.eclipse.papyrus.diagram.composite">
2925         </editor>
2926      </paletteDefinition>
2927   </extension>
2928   <extension
2929         point="org.eclipse.papyrus.diagram.common.paletteDefinition">
2930      <paletteDefinition
2931            ID="org.openmodelica.modelicaml.ModelicaMLStateMachineDiagramPaletteDefinition"
2932            class="org.eclipse.papyrus.diagram.common.service.PluginPaletteProvider"
2933            icon="resources/icons/icons16/ModelicaML_logo.gif"
2934            name="ModelicaML  SubSet of State Machine Diagram Palette "
2935            path="/palettes/ModelicaMLStateMachineDiagram.Palette.xml"
2936            provider="OpenModelica Project">
2937         <Priority
2938               name="Highest">
2939         </Priority>
2940         <editor
2941               id="org.eclipse.papyrus.diagram.statemachine">
2942         </editor>
2943      </paletteDefinition>
2944   </extension>
2945   <extension
2946         point="org.eclipse.papyrus.diagram.common.paletteDefinition">
2947      <paletteDefinition
2948            ID="org.openmodelica.modelicaml.ModelicaMLActivityDiagramPaletteDefinition"
2949            class="org.eclipse.papyrus.diagram.common.service.PluginPaletteProvider"
2950            icon="resources/icons/icons16/ModelicaML_logo.gif"
2951            name="ModelicaML SubSet of Activity Diagram Palette "
2952            path="/palettes/ModelicaMLActivityDiagram.Palette.xml"
2953            provider="OpenModelica Project">
2954         <Priority
2955               name="Highest">
2956         </Priority>
2957         <editor
2958               id="org.eclipse.papyrus.diagram.activity">
2959         </editor>
2960      </paletteDefinition>
2961   </extension>
2962   <extension
2963         point="org.eclipse.ui.menus">
2964      <menuContribution
2965            allPopups="false"
2966            locationURI="popup:org.eclipse.papyrus.modelexplorer.modelexplorer.popup">
2967         <menu
2968               icon="platform:/plugin/org.eclipse.papyrus.modelexplorer/icons/etool16/validate.gif"
2969               id="org.eclipse.papyrus.modelexplorer.popup.validation"
2970               label="Validation">
2971            <visibleWhen
2972                  checkEnabled="true">
2973                  <not>
2974                  <with
2975                        variable="activeWorkbenchWindow.activePerspective">
2976                     <equals
2977                           value="org.openmodelica.modelicaml.perspective">
2978                     </equals>
2979                  </with>
2980               </not>
2981            </visibleWhen>
2982         </menu>
2983         <menu
2984               id="org.eclipse.papyrus.modelexplorer.popupmenu.creatediagram"
2985               label="New Diagram">
2986            <visibleWhen
2987                  checkEnabled="false">
2988               <not>
2989                  <with
2990                        variable="activeWorkbenchWindow.activePerspective">
2991                     <equals
2992                           value="org.openmodelica.modelicaml.perspective">
2993                     </equals>
2994                  </with>
2995               </not>
2996            </visibleWhen>
2997         </menu>
2998         <menu
2999               id="org.eclipse.papyrus.modelexplorer.popupmenu.createchild"
3000               label="New Child">
3001            <visibleWhen
3002                  checkEnabled="false">
3003               <not>
3004                  <with
3005                        variable="activeWorkbenchWindow.activePerspective">
3006                     <equals
3007                           value="org.openmodelica.modelicaml.perspective">
3008                     </equals>
3009                  </with>
3010               </not>
3011            </visibleWhen>
3012         </menu>
3013      </menuContribution>
3014   </extension>
3015   <extension
3016         point="org.eclipse.papyrus.core.papyrusDiagram">
3017      <diagramCategory
3018            class="org.openmodelica.modelicaml.profile.commands.ModelicaMLModelCreationCommand"
3019            description="ModelicaML is a UM Profile that enables the modeling of hybrid system dydimics."
3020            icon="resources/icons/icons32/modelicaml_logo_v02.png"
3021            id="modelicaml"
3022            label="ModelicaML">
3023      </diagramCategory>
3024   </extension>
3025   <extension
3026         point="org.eclipse.core.expressions.definitions">
3027      <definition
3028            id="org.openmodelica.modelicaml.profile.IsPapyrusActiveWithModelicaML">
3029         <and>
3030            <with
3031                  variable="activeEditorId">
3032               <equals
3033                     value="org.eclipse.papyrus.core.papyrusEditor">
3034               </equals>
3035            </with>
3036            <with
3037                  variable="selection">
3038               <test
3039                     forcePluginActivation="true"
3040                     property="org.openmodelica.modelicaml.profile.propertyTester.isModelicaMLModel"
3041                     value="true">
3042               </test>
3043            </with>
3044         </and>
3045      </definition>
3046   </extension>
3047   <extension
3048         point="org.eclipse.core.expressions.propertyTesters">
3049      <propertyTester
3050            class="org.openmodelica.modelicaml.properties.ModelicaMLSectionTester"
3051            id="org.openmodelica.modelicaml.profile.ModelicaMLSectionTester"
3052            namespace="org.openmodelica.modelicaml.profile.propertyTester"
3053            properties="isModelicaMLModel"
3054            type="org.eclipse.jface.viewers.ISelection">
3055      </propertyTester>
3056   </extension>
3057   <extension
3058         point="org.eclipse.papyrus.wizards.templates">
3059      <template
3060            file="templateModels/model.uml"
3061            id="org.openmodelica.modelicaml.profile.basicTemplate"
3062            language="modelicaml"
3063            name="ModelicaML template incl. Requirements, Desing and Simulation Packages">
3064      </template>
3065   </extension>
3066
3067</plugin>
Note: See TracBrowser for help on using the repository browser.