[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Newsgroup Home]
|
[news.eclipse.tools.emf] Re: Referencing model elements (generated editor vs. editor on the fly)
|
- From: Michael Gebhart <lists@xxxxxxxxxxxx>
- Date: Tue, 5 Feb 2008 14:29:14 +0000 (UTC)
- Newsgroups: eclipse.tools.emf
- Organization: EclipseCorner
- User-agent: Pan/0.129 (Benson & Hedges Moscow Gold)
Hi,
thanks for you help. Very interesting. When I use a containment reference
everything is working. But if I don't set containment to true I doesn't.
In the properties view the reference is listed, but I can't select the
element.
If I generate an editor for the second model it is working.
Any idea how I can make it working with a reference and no containment?
Greetings
Mike
On Mon, 04 Feb 2008 23:49:48 -0500, Marcelo Paternostro wrote:
> Hi Michael,
>
> I gave this a try and everything worked fine on my machine. This is
> what I've done:
>
> 1. Defined a model A with a package A and a class CA in it 2. Generated
> the code (model, edit, and editor) for A 3. Launched a runtime workspace
>
> -- from now on, everything is happening on the runtime workspace ---
>
> 4. Defined a model B with a package B and a class CB that has a
> containment reference that can hold instances of CA (to do that I did a
> "Load Resource" in the Ecore editor and pressed the button "Browse
> Registered Packages..." and selected A. 5. Created an instance of CB
> (ob) from the Ecore editor (by right clicking on the class B and using
> the "Creating Dynamic Instance..." menu item)
>
> 6. Created an instance of CA (oa) using the generated wizard (which end
> up opening the generated editor)
>
> 7. Loaded the resource containing ob in the oa's editor
>
> 8. Set ob as the container of oa by right-clicking ob and going through
> the "New Child" menu
>
> I am not a specialist on EMF.Edit but if I had to point you to a
> direction, I would suggest checking if the constructor of the generated
> editor (or the method initializeEditingDomain() ) executes this line:
>
> adapterFactory.addAdapterFactory(new
> ReflectiveItemProviderAdapterFactory());
>
> It "enables" the editor to manipulate instances of EObject through
> reflection.
>
> Cheers,
> Marcelo
>
> Michael Gebhart wrote:
>> Hi,
>>
>> I have the following problem: I have two meta models (ecore models) A
>> and B. The metamodel B references elements of the metamodel A.
>>
>> Now I wanna create instances. For metamodel A I generate the EMF
>> editor. For metamodel no editor is needed (the instance of the
>> metamodel is created in another way).
>>
>> Ok, now I create an instance of the metamodel A with the generated EMF
>> editor. After that I load the created instance of the metamodel B in
>> the resource set. So now both, an instance of metamodel A (A_I) and
>> metamodel B (B_I) are visible within the editor. As I mentioned the
>> metamodel B references elements of the metamodel A. I wanna set some
>> elements in B_I to use elements of A_I, but this is not possible. The
>> elements of A_I are not available in B_I.
>>
>> Is it because A_I is used with a generated EMF editor and B_I isn't?
>> Because if I generate an EMF editor for B too I can choose the
>> elements.
>>
>> And if I use no generated editor for both it is working too. Obviously
>> there is a mismatch of the metamodel package if I use a generated
>> editor and a editor on the fly.
>>
>> Any idea how I can fix this issue?
>>
>> Greetings
>>
>> Michael