EMF Delegates view
The actual behaviour of the view depends on the type of the selected EModelElement, as follows:
The buttons for adding a constraint or an invariant, will be enabled. If the Add constraint button is selected, you will be asked for the name and if the Add invariant is selected, you will be asked for the name of the implementing EOperation. In both cases, the appropriate EModelElements and annotations will be correctly configured.
Derived feature selection
EMF Invoke EOperation view
An EClass may contain zero or more EStructuralFeatures and zero or more EOperations. The standard EMF editors (reflective or generated) will allow you to edit the data, and now the EMF Invoke EOperation view allows you to invoke the EOperations on arguments from the model. Note that although this view is part of JS4EMF, it is completely generic and should support any modelled (and implemented) EOperation for any EClass. The figure below shows an example model with a selected EObject and an opened EMF Invoke EOperation view.
Example model and EMF Invoke EOperation view
The view populates a selector with the methods (EOperations) that the selected EObject supports and configures a property sheet so the user may enter arguments for the selected method (EOperation). In the figure, the user has selected the getLoansDueBefore(EDate) method and has entered a value for the EDate argument. The property sheet is based on the standard EMF property source providers and supports selecting EObjects from the model and entering EDataType values. The EOperation is invoked by selecting the Invoke! button, and the result will be shown in a separate EMF Result view (see below).
EMF Result view
The EMF Result view with the result of invoking an EOperation (see example above)