Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » GMF (Graphical Modeling Framework) » Is it possible to display the diagram root element as node?
Is it possible to display the diagram root element as node? [message #208249] Fri, 10 October 2008 11:10 Go to next message
hagane is currently offline haganeFriend
Messages: 8
Registered: July 2009
Junior Member
I would like to have a TopNode Reference to my DiagramRoot. Since the
DiagramRoot is not contained anywhere I cannot specify any
ContainmentFeature.

Example with FunctionBloc as DiagramRoot:
http://hgn.ath.cx/example.JPG

A solution is to add a Class "Canvas" that contains FunctionBloc.
But I would like to avoid it since it is not part of the Domain I am
trying to represent.

Any help would be appreciated.

Thanks in advance.
Re: Is it possible to display the diagram root element as node? [message #208326 is a reply to message #208249] Fri, 10 October 2008 22:00 Go to previous messageGo to next message
Thomas Beyer is currently offline Thomas BeyerFriend
Messages: 47
Registered: July 2009
Member
Hello hagane,

would it be reasonable for your use-case to add another EClass
"FunctionBlocDiagram" to your Ecore-Model, and make this one consist of
FunctionsBloc(s) via aggregate?
This would allow you to have FunctionBloc as a Top-node-Reference.


regards
Thomas


hagane schrieb:
>
> I would like to have a TopNode Reference to my DiagramRoot. Since the
> DiagramRoot is not contained anywhere I cannot specify any
> ContainmentFeature.
>
> Example with FunctionBloc as DiagramRoot:
> http://hgn.ath.cx/example.JPG
>
> A solution is to add a Class "Canvas" that contains FunctionBloc.
> But I would like to avoid it since it is not part of the Domain I am
> trying to represent.
>
> Any help would be appreciated.
>
> Thanks in advance.
>
>
>
>
>
Re: Is it possible to display the diagram root element as node? [message #208361 is a reply to message #208326] Sat, 11 October 2008 12:31 Go to previous messageGo to next message
hagane is currently offline haganeFriend
Messages: 8
Registered: July 2009
Junior Member
Thomas Beyer wrote:

> Hello hagane,

> would it be reasonable for your use-case to add another EClass
> "FunctionBlocDiagram" to your Ecore-Model, and make this one consist of
> FunctionsBloc(s) via aggregate?
> This would allow you to have FunctionBloc as a Top-node-Reference.


> regards
> Thomas


Hi Thomas,

thanks for the reply. Another EClass "FunctionBlocDiagram" to contain
FunctionBloc is possible. The reason I would like to avoid this is:

The domain model is also used for a text based DSL. Since there is only
one(!) FunctionBloc allowed at the Top-Level it seems unnecessary to have
a construct "FunctionBlocDiagram". It would be rather inconvinient to
write:

FunctionBlocDiagram A {

FunctionBloc F {

//further definition

}

}

regards,
Robert
Re: Is it possible to display the diagram root element as node? [message #208468 is a reply to message #208361] Mon, 13 October 2008 18:29 Go to previous messageGo to next message
Tatiana Fesenko is currently offline Tatiana FesenkoFriend
Messages: 530
Registered: July 2009
Senior Member
Hello Robert,

It _is_ possible to display diagram root element as a node. There is a live
example of such mapping - StateMachine in StateMachine diagram editor provided
by MDT UML2Tools.
StateMachine is a both diagram element and the only possible top-level element,
so it's shown twice. In the attached screenshot of StateMachine diagram you
can find the only element in the resource - 'TopLevelStateMachine', the element
is shown both as diagram canvas and as rounded rectangle on the diagram.
In oreder to implement such mapping, DiagramUpdater, StateMachineCanonicalEditPolicy
and VisualIDProvider were modified. You can find more details in the UML2Tools-sources
or ask in uml2tools newsgroup.

It's also important to notice, that having canvas element displayed as top-level
element causes many problems. For instance, you have to correctly handle
delete of such nodes and there are problems with figures on its borders.

Best wishes,
Tatiana.

> Thomas Beyer wrote:
>
>> Hello hagane,
>>
>> would it be reasonable for your use-case to add another EClass
>> "FunctionBlocDiagram" to your Ecore-Model, and make this one consist
>> of
>> FunctionsBloc(s) via aggregate?
>> This would allow you to have FunctionBloc as a Top-node-Reference.
>> regards
>> Thomas
> Hi Thomas,
>
> thanks for the reply. Another EClass "FunctionBlocDiagram" to contain
> FunctionBloc is possible. The reason I would like to avoid this is:
>
> The domain model is also used for a text based DSL. Since there is
> only one(!) FunctionBloc allowed at the Top-Level it seems unnecessary
> to have a construct "FunctionBlocDiagram". It would be rather
> inconvinient to write:
>
> FunctionBlocDiagram A {
>
> FunctionBloc F {
>
> //further definition
>
> }
>
> }
>
> regards,
> Robert
Re: Is it possible to display the diagram root element as node? [message #208476 is a reply to message #208468] Mon, 13 October 2008 18:30 Go to previous messageGo to next message
Tatiana Fesenko is currently offline Tatiana FesenkoFriend
Messages: 530
Registered: July 2009
Senior Member
This is a multi-part message in MIME format.
----++Omea_Parts_Splitter.22896019892253
Content-Type: text/plain; charset=koi8-r
Content-Transfer-Encoding: quoted-printable

Please=20find=20attached=20screenshot=20of=20StateMachine=20 diagram=2e

>=20Hello=20Robert,
>=20
> =20It=20=5fis=5f=20possible=20to=20display=20diagram=20root= 20element=20as=20a=20node=2e=20There=20is=20a
>=20live
> =20example=20of=20such=20mapping=20-=20StateMachine=20in=20S tateMachine=20diagram=20editor
>=20provided
>=20by=20MDT=20UML2Tools=2e
> =20StateMachine=20is=20a=20both=20diagram=20element=20and=20 the=20only=20possible=20top-level
>=20element,
> =20so=20it's=20shown=20twice=2e=20In=20the=20attached=20scre enshot=20of=20StateMachine
>=20diagram=20you
> =20can=20find=20the=20only=20element=20in=20the=20resource=2 0-=20'TopLevelStateMachine',
>=20the=20element
> =20is=20shown=20both=20as=20diagram=20canvas=20and=20as=20ro unded=20rectangle=20on=20the
>=20diagram=2e
> =20In=20oreder=20to=20implement=20such=20mapping,=20DiagramU pdater,
>=20StateMachineCanonicalEditPolicy
> =20and=20VisualIDProvider=20were=20modified=2e=20You=20can=2 0find=20more=20details=20in=20the
>=20UML2Tools-sources
>=20or=20ask=20in=20uml2tools=20newsgroup=2e
> =20It's=20also=20important=20to=20notice,=20that=20having=20 canvas=20element=20displayed=20as
> =20top-level=20element=20causes=20many=20problems=2e=20For=2 0instance,=20you=20have=20to
> =20correctly=20handle=20delete=20of=20such=20nodes=20and=20t here=20are=20problems=20with
>=20figures=20on=20its=20borders=2e
>=20
>=20Best=20wishes,
>=20Tatiana=2e
>>=20Thomas=20Beyer=20wrote:
>>=20
>>>=20Hello=20hagane,
>>>=20
>>> =20would=20it=20be=20reasonable=20for=20your=20use-case=20to =20add=20another=20EClass
>>>=20"FunctionBlocDiagram" =20to=20your=20Ecore-Model,=20and=20make=20this=20one=20cons ist
>>>=20of
>>>=20FunctionsBloc(s)=20via=20aggregate?
>>> =20This=20would=20allow=20you=20to=20have=20FunctionBloc=20a s=20a=20Top-node-Reference=2e
>>>=20regards
>>>=20Thomas
>>=20Hi=20Thomas,
>>=20
>>=20thanks=20for=20the=20reply=2e=20Another=20EClass=20"FunctionBlocDiagram "=20to=20contain
>> =20FunctionBloc=20is=20possible=2e=20The=20reason=20I=20woul d=20like=20to=20avoid=20this=20is:
>>=20
>> =20The=20domain=20model=20is=20also=20used=20for=20a=20text= 20based=20DSL=2e=20Since=20there=20is
>> =20only=20one(!)=20FunctionBloc=20allowed=20at=20the=20Top-L evel=20it=20seems
>>=20unnecessary=20to=20have=20a=20construct=20"FunctionBlocDiagram "=2e=20It=20would=20be
>>=20rather=20inconvinient=20to=20write:
>>=20
>>=20FunctionBlocDiagram=20A=20{
>>=20
>>=20FunctionBloc=20F=20{
>>=20
>>=20//further=20definition
>>=20
>>=20}
>>=20
>>=20}
>>=20
>>=20regards,
>>=20Robert

----++Omea_Parts_Splitter.22896019892253
Content-Type: image/pjpeg; name="StateMachine.jpg"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="StateMachine.jpg"

/9j/4AAQSkZJRgABAQEAYABgAAD/4QzaRXhpZgAASUkqAAgAAAACADEBAgAL
AAAAJgAAAGmHBAABAAAAMgAAAMIAAABQaWNhc2EgMy4wAAAEAACQBwAEAAAA
MDIxMAOQAgAUAAAAaAAAAAWgBAABAAAAngAAACCkAgAhAAAAfAAAAAAAAAAy
MDA4OjEwOjEzIDIwOjIzOjQ2AGViMzI4Njg5ZTI2NTRjOWYzYzlmN2YwYjBm
NDgxZmYwAAACAAEAAgAFAAAAvAAAAAIABwAEAAAAMDEwMAAAAAAgICAgAAAG
AAMBAwABAAAABgAAABoBBQABAAAAEAEAABsBBQABAAAAGAEAACgBAwABAAAA
AgAAAAECBAABAAAAIAEAAAICBAABAAAAsgsAAAAAAABIAAAAAQAAAEgAAAAB
AAAA/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAUDBAQEAwUEBAQFBQUGBwwI
BwcHBw8LCwkMEQ8SEhEPERETFhwXExQaFRERGCEYGh0dHx8fExciJCIeJBwe
Hx7/2wBDAQUFBQcGBw4ICA4eFBEUHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4e
Hh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh7/wAARCACgAJgDASIAAhEBAxEB
/8QAGwABAAIDAQEAAAAAAAAAAAAAAAMFAgQGAQf/xABCEAABAwECCAkLAwQC
AwAAAAABAAIDBAURBhITFCExUtEWUVRzkZKTwdIiMjQ1QVNxdKGjsVVhgRUj
M0Ki4nKywv/EABcBAQEBAQAAAAAAAAAAAAAAAAABAgP/xAAgEQEBAAMAAwAC
AwAAAAAAAAAAAQIREgMxUSFBEzKh/9oADAMBAAIRAxEAPwD7va+EDqarbE6/
HLxe4+aBpvBGviAu47ytSfDCaO1JaVtg1UkDDcKhjjc7yC7QPiMXXoJH8dpg
5Yll11HLUVVIyWUzOBcSRoF3EVZ8F7B/Tous7eu+F8eNtu7vTlZnXyqXDy0M
pdBgpVujLZC1z3EXkG5ouuvF5BPwuOhWtk4UPrYHuqbNks97XhoxyXgtxiMY
aj7L7uIj+PoHBewv06LrO3pwXsL9Oi6zt66fyeL5U5z+uMp7Wo2SnGvfHjEH
zhov1gE6Pgugp46SoiEkIbIw6i1xPerPgvYX6dF1nb16zBqxWEllC1l+vFe4
d6555eO/123j3PavzWH3X1O9M1h919TvVnwfsnkv3X704P2TyX7r9657je6r
M1h919TvTNYfdfU71Z8H7J5L91+9OD9k8l+6/em4bqszWH3X1O9M1h919TvV
nwfsnkv3X704P2TyX7r96bhuqzNYfdfU70zWH3X1O9WfB+yeS/dfvTg/ZPJf
uv3puG6rM1h919TvTNYfdfU71Z8H7J5L91+9OD9k8l+6/em4bqszWH3X1O9M
1h919TvVnwfsnkv3X704P2TyX7r96bhuqzNYfdfU70Vnwfsnkv3X70TcN1Bg
b6rk+Yf3K7VJgb6rk+Yf3K7Uy9pBQ51D7Md37tjcR0gL2s0UkxGg4jvws4wA
xoGgXBZVHnUfFL2TtyZ1HxS9k7cpkQQ51HxS9k7cmcx7MvZO3KZcpa+CtdLN
US2RbT7NNRUNmeGRuuuvZjDyXjzg03+3ToLdJIdLnMfFL2TtyZzHsy9k/cuX
jwWt0RxRuwxrAIqZkIMcAaXFrcXGde43k33nV5Wm+7QtWiwHtSmYJOFVTJV/
3HGd0TvKe5rwCRlNTce8NvuvAJ0oOyzmPZl7J25M5j2ZeyduXGuwGtOadpqM
MLTdThjr4owWkvcCHPxi46w52i7ReLrrgo48BbbdJBJVYbV8kkVVHIXRxujx
oBIxzoCMoRcQwjGuxhjHSdFwdtnUfFL2TtyZ1HxS9k7cq7BGy7Qsex2Udp21
NbFS03uqpYwxztA9gJA1E6NF5NwA0K3QQ51HxS9k7cmdR8UvZO3KZEETKiN7
sUYwJ1BzS2/pClUFZrh51vepwgIiIKTA31XJ8w/uV2qTA31XJ8w/uV2tZe0i
Kt9Dm5t34UjPNHwUdb6HNzbvwpGeaPgsq9REQEREBERAREQEREBERBBWa4ed
b3qdQVmuHnW96nQEREFJgb6rk+Yf3K7VJgb6rk+Yf3K7WsvaRFW+hzc278KR
nmj4KOt9Dm5t34UjPNHwWVeoiICIiAiIgIiICIiAiIggrNcPOt71OoKzXDzr
e9ToCIiCkwN9VyfMP7ldqkwN9VyfMP7ldrWXtIirfQ5ubd+FIzzR8FHW+hzc
278KRnmj4LKvUREBERAREQEREBERAREQQVmuHnW96nUFZrh51vep0BERBSYG
+q5PmH9yu1SYG+q5PmH9yu1rL2kRVvoc3Nu/CkZ5o+CjrfQ5ubd+FIzzR8Fl
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
/pdFU14eNdOdWUT3/wDDP98/u94eNNfp7Ko+kRlv9v8AbLtTttVwV/G4ttK3
kspkuKtSlVkhZJK2JEWRyLNJGxd3eb9FHb2iqqNVGuVv6WqMvZCJzRpuyxjY
XW3T4TNR1qslzfsqkCsWCpKsVqyiJKruHE/d1arUkdvtVjH6O3eZw62nKbRV
sdexVOZsrpMpbdUgViIqNekEsyq7Ve4m7C5O5r3VTuaaqnqacsnnNq0nZYxv
L7FWDCZqw2tJwZZo0gRjZXXJ6cUf0pUcqyT13Naum6m+xXqxN5W+c4ek9Oyt
Wh2lt8RLcteavRq0cZpDHNzg+xfinh33vbHvotXd7sm4qx6MVyvbvczjP+9x
6o+yZfr2toOcdlcqtfH36dStwHVt90liKnu136z6LKklpdXJpHup/nVU7rf2
FrZrb2jm8lyBtHIUZnRzPi5SkekqwSNistbuPdosUrmxu3tEcq6xq9v0j1ER
MuT7LWVs8Si9FmWJrXNkevGdFq1rkc5qvb3WoqIqK5O8i6907VR7ORV7vVn8
asGz7bTrGTZDbayOnG9XwyUnSN1R070dq5W/5WtXTVyo128q76ZKaqqpinNe
YiIzHXGua5rtHNcio5qpqip/JU+1DZw0LmbF5Ftd7a08irAqokUjl1Vi/Y1y
/an8l/7L3dFXLiYU0e/2XoxLvZcJKgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAABpuTkWPFYRW99aCp/6Rp9LGdaGP/xavk4LU9187K0My7sK
xPdaWJ0T43Sa9zccjkVJNO6Q/UP06v1Fd1GUTlHvtlOf0y3ynzG2cTCKqZot
mf77f6fmMjyVapUoujjbXguOsq5bayL3Y5G7qNSJqd1ZNddTx6L9NxMCqm7L
KNpn7UzEe0/M5/Z2+mmmYp/vzLBtngYtq8e3GZK7ZbjH6pbpMjhdHbbq1Ua9
Xsc9uit7jo3McirqioqNVPr1YcVe0pxVMPBc2JxdqlaqSWbyR2amVqvVr26o
zITJNMqfR76OaiN/knf3u+cnBp/n5L5e/K4Ll75JudsnBaS8l6pYZIxzqUnA
SBUibI1zEarFk1a5rk1le5NF0VOzhxP3IqlLxuwuOpxTNdksnalnnrWJppnR
I58kF+W81yoxjWprLM9FRERN3RE0XunmMGI/vfN2cSR+w9VrMm2nmMnU503m
292OtM2SN09qd0atmie1Wq65Iioqa6NYmv8Am3nBj39/7/ZL5ZYNicXVibUo
Wb1PGpJSm5DG9rollqOgWGTee10mu5WijVN/dVqKum8quO8Gn7OXy9+J2ep4
zJ18hXmsulg5w3Ue5qtXllltiXXRE7z2Ijf5JrrqvdOxhxE5/wB9ya5lamlm
kRm7M6J7JGSsexEVWuY5HNXuoqd9E76CvDiqMpKappnN+TS25G3f8dYZLfjd
FclTdV1hrk0VHaoqd7uJoibqdxuidwnPpqJiIeoxqs82XlEn8y1sJ5vxbEio
qLoqKmioqaoqCaYl2JlZw20DqzW17iOfCncSRNXPYn8lTTVyefv/AOvfMOL6
eafen6NWHjRPtU2Wpaq241kq2Ip2p31jejtF8+neMrQzgAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAANPtwcqh2Zq7+5xq6R72mumvCTXQ0enqt
mZ7IY0ZxELnaF/Vv7f8A3HvW/inp+52hf1b+3/3DW/iafudoX9W/t/8AcNb+
Jp+52hf1b+3/ANw1v4mn7naF/Vv7f/cNb+Jp+52hf1b+3/3DW/iafudoX9W/
t/8AcNb+Jp+52hf1b+3/ANw1v4mn7naF/Vv7f/cNb+Jp+52hf1b+3/3DW/ia
fudoX9W/t/8AcNb+Jp+52hf1b+3/ANw1v4mn7naF/Vv7f/cNb+Jp+52hf1b+
3/3DW/iafu/O0HSRJW5ZWyN/yvbAqOT/AEVHaoeavU01fWl6pwqqfpUzdplz
yku+t/zk+Lh9Hy9219R2mXPKS763/OOLh9HyW19R2mXPKS763/OOLh9HyW19
R2mXPKS763/OOLh9HyW19R2mXPKS763/ADji4fR8ltfUdplzyku+t/zji4fR
8ltfUdplzyku+t/zji4fR8ltfUdplzyku+t/zji4fR8ltfUdplzyku+t/wA4
4uH0fJbX1HaZc8pLvrf844uH0fJbX1HaZc8pLvrf844uH0fJbX1HaZc8pLvr
f844uH0fJbX1HaZc8pLvrf8AOOLh9HyW19R2mXPKS763/OOLh9HyW19R2mXP
KS763/OOLh9HyW19R2mXPKS763/OOLh9HyW19R2mXPKS763/ADji4fR8ltfU
dplzyku+t/zji4fR8ltfUdplzyku+t/zji4fR8ltfUdplzyku+t/zji4fR8l
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
6UZlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAc0YiLY2RRU1RWM19cRqwebxKeL9vLa8lfjqwtfuo57+5HG1jdXL/JO4
Vpozn/6hVVk+nWHJC97mt0SJ7larG6oqNVfs/wBBNMFzLydPuJ6jl/d205On
3E9Qv7lpydPuJ6hf3LTk6fcT1C/uWnJ0+4nqF/ctOTp9xPUL+5acnT7ieoX9
y05On3E9Qv7lpydPuJ6hf3LTk6fcT1C/uWnJ0+4nqF/ctOTp9xPUL+5acnT7
ieoX9y05On3E9Qv7lpydPuJ6hf3LTk6fcT1C/uWnJ0+4nqF/ctOTp9xPUL+5
acnT7ieoX9y05On3E9Qv7lpydPuJ6hf3LTk6fcT1C/uWnJ0+4nqF/ctOTp9x
PUL+5acnT7ieoX9y05On3E9Qv7lpydPuJ6hf3LTk6fcT1C/uWnJ0+4nqF/ct
OTp9xPUL+5acnT7ieoX9y05On3E9Qv7lpydPuJ6hf3LTk6fcT1C/uWnJ0+4n
qF/ctOTp9xPUL+5acnT7ieoX9y05On3E9Qv7lpydPuJ6hf3LTk6fcT1C/uWn
J0+4nqF/ctOTp9xPUL+5acnT7ieoX9y05On3E9Qv7lpydPuJ6hf3LTk6fcT1
C/uWnJ0+4nqF/ctOTp9xPUL+5acnT7ieoX9y05On3E9Qv7lpydPuJ6hf3LWm
sVG2NkXOVERI2Kqr9ndiJ4Pvd4lbF+3lsd7HzTsZJHHLFaiT6EiMX1L/ADQ0
RXTn9WaaatmSaKwlWbfjen8CRFVWK1FVWKiaa/zVe8cmqmfpOxET94W9xPMY
7mrI3E8wuMjcTzC4yNxPMLjI3E8wuMjcTzC4yNxPMLjI3E8wuMjcTzC4yNxP
MLjI3E8wuMjcTzC4yNxPMLjI3E8wuMjcTzC4yNxPMLjI3E8wuMjcTzC4yNxP
MLjI3E8wuMjcTzC4yNxPMLjI3E8wuMjcTzC4yNxPMLjI3E8wuMjcTzC4yNxP
MLjI3E8wuMjcTzC4yNxPMLjI3E8wuMjcTzC4yNxPMLjI3E8wuMjcTzC4yNxP
MLjI3E8wuMjcTzC4yNxPMLjI3E8wuMjcTzC4yNxPMLjI3E8wuMjcTzC4yNxP
MLjI3E8wuMjcTzC4yNxPMLjI3E8wuMjcTzC4yaI3Ey5HEYaaG5yZ8FVui8NX
d9rF1TRU003T1h4k0TnD1XRFcZS8FjFQRzOjsbTUmSIv0mvaiOT/AF1kK6qr
aEtPS/IqVaF+/FtZRjd95qoi/wDqDU1bQaendl4SeWdbr/uDVVbQaenc4SeW
dbr/ALg1VW0Gnp3OEnlnW6/7g1VW0Gnp3OEnlnW6/wC4NVVtBp6dzhJ5Z1uv
+4NVVtBp6dzhJ5Z1uv8AuDVVbQaenc4SeWdbr/uDVVbQaenc4SeWdbr/ALg1
VW0Gnp3OEnlnW6/7g1VW0Gnp3OEnlnW6/wC4NVVtBp6dzhJ5Z1uv+4NVVtBp
6dzhJ5Z1uv8AuDVVbQaenc4SeWdbr/uDVVbQaenc4SeWdbr/ALg1VW0Gnp3O
EnlnW6/7g1VW0Gnp3OEnlnW6/wC4NVVtBp6dzhJ5Z1uv+4NVVtBp6dzhJ5Z1
uv8AuDVVbQaenc4SeWdbr/uDVVbQaenc4SeWdbr/ALg1VW0Gnp3OEnlnW6/7
g1VW0Gnp3OEnlnW6/wC4NVVtBp6dzhJ5Z1uv+4NVVtBp6dzhJ5Z1uv8AuDVV
bQaenc4SeWdbr/uDVVbQaenc4SeWdbr/ALg1VW0Gnp3OEnlnW6/7g1VW0Gnp
3OEnlnW6/wC4NVVtBp6dzhJ5Z1uv+4NVVtBp6dzhJ5Z1uv8AuDVVbQaenc4S
eWdbr/uDVVbQaenc4SeWdbr/ALg1VW0Gnp3OEnlnW6/7g1VW0Gnp3OEnlnW6
/wC4NVVtBp6dzhJ5Z1uv+4NVVtBp6dzhJ5Z1uv8AuDVVbQaenc4SeWdbr/uD
VVbQaenc4SeWdbr/ALg1VW0Gnp3OEnlnW6/7g1VW0Gnp3OEnlnW6/wC4NVVt
Bp6dzhJ5Z1uv+4NVVtBp6dzhJ5Z1uv8AuDVVbQaenc4SeWdbr/uDVVbQaenc
4SeWdbr/ALg1VW0Gnp3OEnlnW6/7g1VW0Gnp3OEnlnW6/wC4NVVtBp6dzhJ5
Z1uv+4NVVtBp6dzhJ5Z1uv8AuDVVbQaenc4SeWdbr/uDVVbQaenc4SeWdbr/
ALg1VW0Gnp3OEnlnW6/7g1VW0Gnp3WMNG63Sw2P31ZFJTSSdWuVrlja1ibqK
neVVc3/troqLoZpXVrOSlx2Rjw+Nx2NjiVjFiSa0tdr3u4rlZG1sbt5USJzl
07umq6d9TJXiY3EmjDpicoic5mY+ufadnuIoimJqn6/3eH3jdoOLl5cRkYIq
d5ujomsmWSOZu7qu65WtXeTu6t073dTXRdJ4Pq7sacDEjKqO+cT4nKP2e68H
KiMSn3ha4htyQOIMg4gyDiDIYWX6r70tFlmF1uGNkssCPRZGMerkY5W99GuW
N6IveVWO07yjIYsnlauOZE60s38aThRthgfK9zt1XaI1iKvea5e99gyE3MWt
m7E1Z1xI5pZ0iSGxBG9zmte/SNeLGmsbXOXRFVUR3d017oykYrdK3j9ZKrpL
tREVXRvdrNGmv/J3Pppp9irvdzvuVdDsS7m+oZY5omzQva+N6atc1dUVDrr7
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABL2aduy4b/pT
/wD2DkuOLdlulnH9kmdZq750ltuWu6LBvnR8a1PoNau8u8qbr00TTRWPk0RP
op970WNEYNMU1RGX19+8/wB+H4b9W9HNfq8SqrDmrP6TFOcf8Y/f6fT7T7/W
fbquzLshXwWw1XKuTljHNbKnDVitVKc+jVRVVd5E0RV17qoq6JronxP1CmKs
amqOqf4qfrf0yKqPS00VfWKYj+E/s37UZHZ/mjkue5urTcdZauPsVEzN6RvD
SOOlDajfFY7r3b8absiqse4qr/Dkm1tOy22W2dGjmctHtVck5PW2oy0NZ9Wr
wmJib3Agq9yJHrDIyROIquWRVY1WSR/S3g6JtltrVxuUxckWXhpYzH59aO0d
iw1I4KzHY6WaNJJXojWIsklPR6KiK57Wa6qrQOa43bzanOXMjkKG2ky46K7U
q1EpwVJIJorm0F/HpMj1icrnR144XRqjt1XMar0kRXI4Nr7D2XvZXshbUTZK
flFmtja+PWdWNa6ZtXK5muyR6NRG77mxNc7dRrd5V3WtTREDfNrblaCnWbNa
hpSy2EZWuTPRjKsm453EVV/k1rk3e8/XcX6LlU6PHfyWKjuU3clSjFNdR605
YmwvuSyPY2Oy1E/zq13dVjtHN1R7kRzWIrIbNxDmQj36z6kz7tKNz4nqrrFd
qaqq/a9ife/m3/m76d3/ADdh19wyxzRNmhe18b01a5q6oqHXX2AAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEbBO3XYVf6W7/2Q49WSwuNy
F5bs/LGWFjbEr4Ls0G81quVqKkb0RdFc7v8A8zxNEZ5/5mHXxUwGLrXYLjOX
STV3K6JZ8hPM1rlarVXde9U13XOTvfaOHGcTnP7yfRX4h7yDiDIOIMg4gyDi
DIOIMg4gyDiDIOIMhOsU3xyusY+RsMrlV0kb9VikVfNr9Fdf+ZP5qqoocfHL
p4V0uUJmJrpxIP4zF7n/AJU3/W1E8/eA/edK3i7vsU3ygOdK3i7vsU3ygOdK
3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygOdK
3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygOdK
3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygOdK
3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygOdK
3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygOdK
3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygOdK
3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygOdK
3i7vsU3ygOdK3i7vsU3ygOdK3i7vsU3ygeXZ5EWxgEVEVFxy6ov+sIG15Sar
j6a2ZKvF+myNrI2N3nOe9GNRNVRO6rk76ohymJqnJ5qqtjN4XZRsTouV7O3a
sUkrIuLJydzWue5Gt1Rsir31RO4inuzP6Vfz/p44k/eJ+P8AalffQo0Z71ts
UVevE6WV6s7jWNTVV/7IinimmquqKafrLuJiU4VE11zlERnP/Tm+z201bMb2
Nh2iyrMy1FiSOXGwxxSzthbI5GK6BO4mqpo5Ud9FV000VY1/pnrsP099WJN2
W9GWf7fTP/6z4H636HHx4wqI+s/eK4+nvP1++X2bzs1bdkaczbtCKvdqy8Cw
1qIrFfuNeit7/cVr2roveXVO7pqs/TYuJiUzxIyqj2n+f8t+LTTTP/jOcSq8
CDxMfVQ0ZppmyeUx20uyuJ2jo1XR1MrRhuwMmjakjY5WI9qORFVEdo5NdFVN
ftUZiYza7B2u1vmajZzHbFWS9T5NEyPdpfwt60/jOZoxvHh1amsi76brHaO0
ZjZuBB4mPqoMw4EHiY+qgzDgQeJj6qDMTNk8pjtpdlcTtHRqujqZWjDdgZNG
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
2Q==
----++Omea_Parts_Splitter.22896019892253--
Re: Is it possible to display the diagram root element as node? [message #208484 is a reply to message #208476] Tue, 14 October 2008 08:43 Go to previous message
hagane is currently offline haganeFriend
Messages: 8
Registered: July 2009
Junior Member
Hi Tatiana,

thanks for the reply. Just what I looked for.

regards,
Robert

Tatiana Fesenko wrote:

> Please find attached screenshot of StateMachine diagram.

>> Hello Robert,
>>
>> It _is_ possible to display diagram root element as a node. There is a
>> live
>> example of such mapping - StateMachine in StateMachine diagram editor
>> provided
>> by MDT UML2Tools.
>> StateMachine is a both diagram element and the only possible top-level
>> element,
>> so it's shown twice. In the attached screenshot of StateMachine
>> diagram you
>> can find the only element in the resource - 'TopLevelStateMachine',
>> the element
>> is shown both as diagram canvas and as rounded rectangle on the
>> diagram.
>> In oreder to implement such mapping, DiagramUpdater,
>> StateMachineCanonicalEditPolicy
>> and VisualIDProvider were modified. You can find more details in the
>> UML2Tools-sources
>> or ask in uml2tools newsgroup.
>> It's also important to notice, that having canvas element displayed as
>> top-level element causes many problems. For instance, you have to
>> correctly handle delete of such nodes and there are problems with
>> figures on its borders.
>>
>> Best wishes,
>> Tatiana.
>>> Thomas Beyer wrote:
>>>
>>>> Hello hagane,
>>>>
>>>> would it be reasonable for your use-case to add another EClass
>>>> "FunctionBlocDiagram" to your Ecore-Model, and make this one consist
>>>> of
>>>> FunctionsBloc(s) via aggregate?
>>>> This would allow you to have FunctionBloc as a Top-node-Reference.
>>>> regards
>>>> Thomas
>>> Hi Thomas,
>>>
>>> thanks for the reply. Another EClass "FunctionBlocDiagram" to contain
>>> FunctionBloc is possible. The reason I would like to avoid this is:
>>>
>>> The domain model is also used for a text based DSL. Since there is
>>> only one(!) FunctionBloc allowed at the Top-Level it seems
>>> unnecessary to have a construct "FunctionBlocDiagram". It would be
>>> rather inconvinient to write:
>>>
>>> FunctionBlocDiagram A {
>>>
>>> FunctionBloc F {
>>>
>>> //further definition
>>>
>>> }
>>>
>>> }
>>>
>>> regards,
>>> Robert
Previous Topic:Implement Delete from Diagram
Next Topic:Handle connection deletion outside of the editor
Goto Forum:
  


Current Time: Fri Mar 29 11:50:10 GMT 2024

Powered by FUDForum. Page generated in 0.02350 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top