Home » Modeling » Epsilon » [EuGENia] Compartment gets list layout for not annotated elements.(Compartment List Layout Bug?)
[EuGENia] Compartment gets list layout for not annotated elements. [message #517054] |
Thu, 25 February 2010 17:28  |
Eclipse User |
|
|
|
Hi,
I've noticed strange eugenia behaviour for compartment element. If you'll create a diagram from below code, SomeProcess figure will have list Layout in its body, is it correct behaviour? the problem is not solved even if I'll add @compartment(layout="free") for that element.
@namespace(uri="http://a.b.c/x/y/Z", prefix="p")
package process;
@gmf.node(label="name")
abstract interface Nameable {
attr String name;
}
@gmf.diagram(foo="bar")
class ProccessesHolder {
val SomeProcess[*] processes;
}
class SomeProcess extends Nameable {
@gmf.compartment(foo="bar")
val Stepable[*] participants;
}
abstract class Stepable extends Nameable {
@gmf.link(target.decoration="arrow", style="dash")
val Reference target;
}
class StepParticipant extends Stepable {
attr String additionalInfo;
}
class Step extends Stepable {
}
@gmf.link(source="source", target="target", style="dot", width="2", label="stepValue")
class Reference {
attr String stepValue;
ref Stepable source;
ref Stepable target;
}
I was playing with the code and all started to work correctly with following code:
@namespace(uri="http://a.b.c/x/y/Z", prefix="p")
package process;
class Nameable {
attr String name;
}
@gmf.diagram(foo="bar")
class ProccessesHolder {
val SomeProcess[*] processes;
}
@gmf.node(label="name")
class SomeProcess extends Nameable {
@gmf.compartment(foo="bar")
val Stepable[*] participants;
}
class Stepable extends Nameable {
@gmf.link(target.decoration="arrow", style="dash")
val Reference target;
}
@gmf.node(label="name")
class StepParticipant extends Stepable {
attr String additionalInfo;
}
@gmf.node(label="name")
class Step extends Stepable {
}
@gmf.link(source="source", target="target", style="dot", width="2", label="stepValue")
class Reference {
attr String stepValue;
ref Stepable source;
ref Stepable target;
}
I've looked throught the bugzilla but i didn't find and bug for that.
Cheers,
Piotr
|
|
|
Re: [EuGENia] Compartment gets list layout for not annotated elements. [message #517057 is a reply to message #517054] |
Thu, 25 February 2010 13:00   |
Eclipse User |
|
|
|
Hi Piotr,
I can't seem to be able to reproduce this. I've used the first version
of your metamodel as-is and it worked fine for me. My guess is that you
either forgot to do the .gmfgen -> Synchronize GMF gen model step
(that's where the compartment layout information is added to the
..gmfgen), or you're running an older version of EuGENia. Could you
please give it another go and let me know if the problem persists?
Cheers,
Dimitris
Piotr Jaworowski wrote:
> Hi,
>
> I've noticed strange eugenia behaviour for compartment element. If
> you'll create a diagram from below code, SomeProcess figure will have
> list Layout in its body, is it correct behaviour? the problem is not
> solved even if I'll add @compartment(layout="free") for that element.
>
> @namespace(uri="http://a.b.c/x/y/Z", prefix="p")
> package process;
>
> @gmf.node(label="name")
> abstract interface Nameable {
> attr String name;
> }
>
> @gmf.diagram(foo="bar")
> class ProccessesHolder {
> val SomeProcess[*] processes;
> }
>
> class SomeProcess extends Nameable {
> @gmf.compartment(foo="bar")
> val Stepable[*] participants;
> }
>
> abstract class Stepable extends Nameable {
> @gmf.link(target.decoration="arrow", style="dash")
> val Reference target;
> }
>
> class StepParticipant extends Stepable {
> attr String additionalInfo;
> }
>
> class Step extends Stepable {
> }
>
> @gmf.link(source="source", target="target", style="dot", width="2",
> label="stepValue")
> class Reference {
> attr String stepValue;
> ref Stepable source;
> ref Stepable target;
> }
> I was playing with the code and all started to work correctly with
> following code:
>
> @namespace(uri="http://a.b.c/x/y/Z", prefix="p")
> package process;
>
> class Nameable {
> attr String name;
> }
>
> @gmf.diagram(foo="bar")
> class ProccessesHolder {
> val SomeProcess[*] processes;
> }
>
> @gmf.node(label="name")
> class SomeProcess extends Nameable {
> @gmf.compartment(foo="bar")
> val Stepable[*] participants;
> }
>
> class Stepable extends Nameable {
> @gmf.link(target.decoration="arrow", style="dash")
> val Reference target;
> }
>
> @gmf.node(label="name")
> class StepParticipant extends Stepable {
> attr String additionalInfo;
> }
>
> @gmf.node(label="name")
> class Step extends Stepable {
> }
>
> @gmf.link(source="source", target="target", style="dot", width="2",
> label="stepValue")
> class Reference {
> attr String stepValue;
> ref Stepable source;
> ref Stepable target;
> }
>
> I've looked throught the bugzilla but i didn't find and bug for that.
>
> Cheers,
> Piotr
--
Spread the word: http://www.eclipse.org/gmt/epsilon/spreadtheword
Follow Epsilon on Twitter: http://twitter.com/epsilonews
|
|
| |
Re: [EuGENia] Compartment gets list layout for not annotated elements. [message #517333 is a reply to message #517312] |
Fri, 26 February 2010 18:13  |
Eclipse User |
|
|
|
Hi Piotr,
"Synchronize EMF gen model" does something unrelated to the core
functionality of EuGENia at the moment - it looks for a copyright.txt
file next to the .genmodel puts its contents in the copyright field of
the .genmodel - so unless you want to do this, there's really no reason
to use it at all.
Cheers,
Dimitris
Piotr Jaworowski wrote:
> Hello Dimitrios,
> Thank you for such quick answer (and for great tool EuGENia). I've
> checked it and you're right, that was the problem. I was performing
> "Synchronize EMF gen model" instead of "Synchronize GMF gen model".
>
> Could you please tell when I should use "Synchronize EMF gen model"?
> Thank you,
> Piotr
|
|
|
Re: [EuGENia] Compartment gets list layout for not annotated elements. [message #586839 is a reply to message #517054] |
Thu, 25 February 2010 17:40  |
Eclipse User |
|
|
|
Hi Piotr,
I can't seem to be able to reproduce this. I've used the first version
of your metamodel as-is and it worked fine for me. My guess is that you
either forgot to do the .gmfgen -> Synchronize GMF gen model step
(that's where the compartment layout information is added to the
..gmfgen), or you're running an older version of EuGENia. Could you
please give it another go and let me know if the problem persists?
Cheers,
Dimitris
Piotr Jaworowski wrote:
> Hi,
>
> I've noticed strange eugenia behaviour for compartment element. If
> you'll create a diagram from below code, SomeProcess figure will have
> list Layout in its body, is it correct behaviour? the problem is not
> solved even if I'll add @compartment(layout="free") for that element.
>
> @namespace(uri="http://a.b.c/x/y/Z", prefix="p")
> package process;
>
> @gmf.node(label="name")
> abstract interface Nameable {
> attr String name;
> }
>
> @gmf.diagram(foo="bar")
> class ProccessesHolder {
> val SomeProcess[*] processes;
> }
>
> class SomeProcess extends Nameable {
> @gmf.compartment(foo="bar")
> val Stepable[*] participants;
> }
>
> abstract class Stepable extends Nameable {
> @gmf.link(target.decoration="arrow", style="dash")
> val Reference target;
> }
>
> class StepParticipant extends Stepable {
> attr String additionalInfo;
> }
>
> class Step extends Stepable {
> }
>
> @gmf.link(source="source", target="target", style="dot", width="2",
> label="stepValue")
> class Reference {
> attr String stepValue;
> ref Stepable source;
> ref Stepable target;
> }
> I was playing with the code and all started to work correctly with
> following code:
>
> @namespace(uri="http://a.b.c/x/y/Z", prefix="p")
> package process;
>
> class Nameable {
> attr String name;
> }
>
> @gmf.diagram(foo="bar")
> class ProccessesHolder {
> val SomeProcess[*] processes;
> }
>
> @gmf.node(label="name")
> class SomeProcess extends Nameable {
> @gmf.compartment(foo="bar")
> val Stepable[*] participants;
> }
>
> class Stepable extends Nameable {
> @gmf.link(target.decoration="arrow", style="dash")
> val Reference target;
> }
>
> @gmf.node(label="name")
> class StepParticipant extends Stepable {
> attr String additionalInfo;
> }
>
> @gmf.node(label="name")
> class Step extends Stepable {
> }
>
> @gmf.link(source="source", target="target", style="dot", width="2",
> label="stepValue")
> class Reference {
> attr String stepValue;
> ref Stepable source;
> ref Stepable target;
> }
>
> I've looked throught the bugzilla but i didn't find and bug for that.
>
> Cheers,
> Piotr
--
Spread the word: http://www.eclipse.org/gmt/epsilon/spreadtheword
Follow Epsilon on Twitter: http://twitter.com/epsilonews
|
|
| |
Re: [EuGENia] Compartment gets list layout for not annotated elements. [message #586900 is a reply to message #586888] |
Fri, 26 February 2010 18:13  |
Eclipse User |
|
|
|
Hi Piotr,
"Synchronize EMF gen model" does something unrelated to the core
functionality of EuGENia at the moment - it looks for a copyright.txt
file next to the .genmodel puts its contents in the copyright field of
the .genmodel - so unless you want to do this, there's really no reason
to use it at all.
Cheers,
Dimitris
Piotr Jaworowski wrote:
> Hello Dimitrios,
> Thank you for such quick answer (and for great tool EuGENia). I've
> checked it and you're right, that was the problem. I was performing
> "Synchronize EMF gen model" instead of "Synchronize GMF gen model".
>
> Could you please tell when I should use "Synchronize EMF gen model"?
> Thank you,
> Piotr
|
|
|
Goto Forum:
Current Time: Wed Jul 23 13:02:14 EDT 2025
Powered by FUDForum. Page generated in 0.07102 seconds
|