Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
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 Go to next message
Piotr Jaworowski is currently offline Piotr Jaworowski
Messages: 4
Registered: February 2010
Junior Member
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 Go to previous messageGo to next message
Dimitrios Kolovos is currently offline Dimitrios Kolovos
Messages: 1776
Registered: July 2009
Senior Member
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 #517312 is a reply to message #517057] Fri, 26 February 2010 17:05 Go to previous messageGo to next message
Piotr Jaworowski is currently offline Piotr Jaworowski
Messages: 4
Registered: February 2010
Junior Member
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 #517333 is a reply to message #517312] Fri, 26 February 2010 18:13 Go to previous message
Dimitrios Kolovos is currently offline Dimitrios Kolovos
Messages: 1776
Registered: July 2009
Senior Member
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 Go to previous message
Dimitrios Kolovos is currently offline Dimitrios Kolovos
Messages: 1776
Registered: July 2009
Senior Member
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 #586888 is a reply to message #586839] Fri, 26 February 2010 17:05 Go to previous message
Piotr Jaworowski is currently offline Piotr Jaworowski
Messages: 4
Registered: February 2010
Junior Member
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 #586900 is a reply to message #586888] Fri, 26 February 2010 18:13 Go to previous message
Dimitrios Kolovos is currently offline Dimitrios Kolovos
Messages: 1776
Registered: July 2009
Senior Member
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
Previous Topic:Mixing Other Frameworks
Next Topic:zoom in - out the evl based generated errors in graphical editor
Goto Forum:
  


Current Time: Fri Aug 22 07:52:09 EDT 2014

Powered by FUDForum. Page generated in 0.02381 seconds