Home » Modeling » Epsilon » [Eugenia] Subdiagrams(Is it possible or (planned feature) to do subdiagrams?)
[Eugenia] Subdiagrams [message #494369] |
Fri, 30 October 2009 08:51  |
Eclipse User |
|
|
|
Hello all,
I just started with Eugenia and I am really impressed how quickly I was able to create a DSL, after having spent days before with "raw" GMF.
Now I was wondering whether it was possible to do subdiagrams with Eugenia. For example, I'm thinking about state machines where you can expand a composite state into a second diagram with its details. Or think of a network topology with routers, connections, etc. in a top-level diagram, and routing tables, NAT settings in subdiagrams for each router.
I once was able to get subdiagrams of the same type as the parent diagram working (it was a couple of settings in the gmfmap), but never got subdiagrams of different types working. It required a really ugly workaround with two sets of gmfmap, gmftool, and gmfgen.
http://wiki.eclipse.org/Diagram_Partitioning
If you ever got the different subdiagram type working (I didn't), you could never use the generators again if you made changes to your DSL So I figured, Eugenia would be predestined for subdiagram support because all the GMF artifacts are completely regenerated after changes to the DSL.
I didn't see any annotations in the Eugenia reference that would support that feature. Has anybody done that before (maybe with a couple of those generated code overrides, forgot the name)? Or is this maybe a planned feature?
Thanks a lot, Christoph
|
|
|
Re: [Eugenia] Subdiagrams [message #494371 is a reply to message #494369] |
Fri, 30 October 2009 08:59   |
Eclipse User |
|
|
|
Hi Christoph,
Unfortunately this isn't supported by Eugenia at the moment but it is
definitely something we want to look into in the (hopefully not too
distant) future. The first step would be to put together a concrete
implementation for a small exemplar metamodel. Based on this we can then
generalize and provide it as a built-in feature in Eugenia. Do you think
you could put together such a small example so that we can kick-start this?
Cheers,
Dimitris
Christoph Wienands wrote:
> Hello all,
>
> I just started with Eugenia and I am really impressed how quickly I was
> able to create a DSL, after having spent days before with "raw" GMF.
>
> Now I was wondering whether it was possible to do subdiagrams with
> Eugenia. For example, I'm thinking about state machines where you can
> expand a composite state into a second diagram with its details. Or
> think of a network topology with routers, connections, etc. in a
> top-level diagram, and routing tables, NAT settings in subdiagrams for
> each router.
>
> I once was able to get subdiagrams of the same type as the parent
> diagram working (it was a couple of settings in the gmfmap), but never
> got subdiagrams of different types working. It required a really ugly
> workaround with two sets of gmfmap, gmftool, and gmfgen.
> http://wiki.eclipse.org/Diagram_Partitioning
> If you ever got the different subdiagram type working (I didn't), you
> could never use the generators again if you made changes to your DSL :(
> So I figured, Eugenia would be predestined for subdiagram support
> because all the GMF artifacts are completely regenerated after changes
> to the DSL.
>
> I didn't see any annotations in the Eugenia reference that would support
> that feature. Has anybody done that before (maybe with a couple of those
> generated code overrides, forgot the name)? Or is this maybe a planned
> feature?
>
> Thanks a lot, Christoph
>
--
Spread the word: http://www.eclipse.org/gmt/epsilon/spreadtheword
Follow Epsilon on Twitter: http://twitter.com/epsilonews
|
|
| | | |
Re: [Eugenia] Subdiagrams [message #582443 is a reply to message #494369] |
Fri, 30 October 2009 08:59   |
Eclipse User |
|
|
|
Hi Christoph,
Unfortunately this isn't supported by Eugenia at the moment but it is
definitely something we want to look into in the (hopefully not too
distant) future. The first step would be to put together a concrete
implementation for a small exemplar metamodel. Based on this we can then
generalize and provide it as a built-in feature in Eugenia. Do you think
you could put together such a small example so that we can kick-start this?
Cheers,
Dimitris
Christoph Wienands wrote:
> Hello all,
>
> I just started with Eugenia and I am really impressed how quickly I was
> able to create a DSL, after having spent days before with "raw" GMF.
>
> Now I was wondering whether it was possible to do subdiagrams with
> Eugenia. For example, I'm thinking about state machines where you can
> expand a composite state into a second diagram with its details. Or
> think of a network topology with routers, connections, etc. in a
> top-level diagram, and routing tables, NAT settings in subdiagrams for
> each router.
>
> I once was able to get subdiagrams of the same type as the parent
> diagram working (it was a couple of settings in the gmfmap), but never
> got subdiagrams of different types working. It required a really ugly
> workaround with two sets of gmfmap, gmftool, and gmfgen.
> http://wiki.eclipse.org/Diagram_Partitioning
> If you ever got the different subdiagram type working (I didn't), you
> could never use the generators again if you made changes to your DSL :(
> So I figured, Eugenia would be predestined for subdiagram support
> because all the GMF artifacts are completely regenerated after changes
> to the DSL.
>
> I didn't see any annotations in the Eugenia reference that would support
> that feature. Has anybody done that before (maybe with a couple of those
> generated code overrides, forgot the name)? Or is this maybe a planned
> feature?
>
> Thanks a lot, Christoph
>
--
Spread the word: http://www.eclipse.org/gmt/epsilon/spreadtheword
Follow Epsilon on Twitter: http://twitter.com/epsilonews
|
|
| | |
Re: [Eugenia] Subdiagrams [message #583087 is a reply to message #494913] |
Thu, 19 November 2009 22:13  |
Eclipse User |
|
|
|
As I just got a question from someone regarding subdiagrams:
I recently submitted an enhancement request for subdiagrams of same type to Eugenia at https://bugs.eclipse.org/bugs/show_bug.cgi?id=295271 I attached a ZIP file that contains a simple state machine language that features composite states (states are contained in compartments) and partitioning states, which open subdiagrams through double-click on the border (if you click inside the rectangle, you edit the label). This example was derived from the Eugenia state machine example.
The key were two things: First of all, the @diagram class needs to get a @node annotation as well. That enables this class to have a diagram pane representation as well as a node representation inside diagrams. Then you'll need to make one manual configuration to gmfmap. The exact element, property and value is described in the enhancement request. I also provided three lines of code for an Ecore2GMF.eol file to make such a change automatically. Basically, all you have to do is figure out which class has to have both the diagram representation and the node representation inside a diagram.
|
|
|
Goto Forum:
Current Time: Tue Jul 22 17:42:47 EDT 2025
Powered by FUDForum. Page generated in 0.10555 seconds
|