Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » GMF (Graphical Modeling Framework) » dragging element disappears with this line
dragging element disappears with this line [message #162250] Fri, 23 November 2007 10:36 Go to next message
paolo russian is currently offline paolo russianFriend
Messages: 81
Registered: July 2009
Member
Hello! Trying to port a drag&drop from the navigator view to an element on
the stage, unsuccessfully by now.

What happens is that I have this method to modify:

protected void initializeGraphicalViewer() {
super.initializeGraphicalViewer();

//This line destroy the dragged element
getGraphicalViewer().addDropTargetListener(new
textTransferDropTargetListener(getGraphicalViewer(),
FileTransfer.getInstance()));


}

and I add (as happening on some tutorials, and in my old gmf1 source) the
commented line: as I do that move, no matter what, the element I was
dragging around get killed and disposed as soon as I enter the stage view
(the designer view.. if you prefer.. where the nodes are displayed anyway).

I tried to adapt some of the code portions found here but none of them
helped me to obtain a working draggable function, the cursor always
remains to "denied" state when I try to dnd. Implementing carefully line
by line the old source I have to port... as I arrive to that
"addDropTargetListener" the icon of the dragged item is no longer
denied... it disappears and returns to a normal arrow-pointer as if you
never dragged anything!
What is the matter? I've placed debug print outputs in every method of the
listener class being involved, and none of them gets printed so the
listener class isn't called. Or gets disposed before construction.

I don't know what to do, If you have an idea on how I may implement a
drag&drop under gmf2...
Re: dragging element disappears with this line [message #162283 is a reply to message #162250] Fri, 23 November 2007 11:16 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: jan.herriger.gmx.de

I activated shortcut creation in gmfgen and got dnd support for free (as
far as I remember).

Paolo Russian schrieb:
> Hello! Trying to port a drag&drop from the navigator view to an element
> on the stage, unsuccessfully by now.
>
> What happens is that I have this method to modify:
>
> protected void initializeGraphicalViewer() {
> super.initializeGraphicalViewer();
>
> //This line destroy the dragged element
> getGraphicalViewer().addDropTargetListener(new
> textTransferDropTargetListener(getGraphicalViewer(),
> FileTransfer.getInstance()));
>
>
> }
>
> and I add (as happening on some tutorials, and in my old gmf1 source)
> the commented line: as I do that move, no matter what, the element I was
> dragging around get killed and disposed as soon as I enter the stage
> view (the designer view.. if you prefer.. where the nodes are displayed
> anyway).
>
> I tried to adapt some of the code portions found here but none of them
> helped me to obtain a working draggable function, the cursor always
> remains to "denied" state when I try to dnd. Implementing carefully line
> by line the old source I have to port... as I arrive to that
> "addDropTargetListener" the icon of the dragged item is no longer
> denied... it disappears and returns to a normal arrow-pointer as if you
> never dragged anything!
> What is the matter? I've placed debug print outputs in every method of
> the listener class being involved, and none of them gets printed so the
> listener class isn't called. Or gets disposed before construction.
> I don't know what to do, If you have an idea on how I may implement a
> drag&drop under gmf2...
>
Re: dragging element disappears with this line [message #162307 is a reply to message #162283] Fri, 23 November 2007 12:39 Go to previous messageGo to next message
paolo russian is currently offline paolo russianFriend
Messages: 81
Registered: July 2009
Member
O__O "shortcut creation", it sound very sweet... but what-how-where is
this?
Is it some kind of implementation like the tabbed properties now you can
create from gmfgen?

Thanks in advance..

Paolo
Re: dragging element disappears with this line [message #162331 is a reply to message #162283] Fri, 23 November 2007 13:06 Go to previous messageGo to next message
paolo russian is currently offline paolo russianFriend
Messages: 81
Registered: July 2009
Member
<a href="http://img339.imageshack.us/img339/9758/shot4lb2.jpg"
target="_blank">SCREENSHOT</a>

This is basically the work I've gotta do... dropping a navigator item into
a node, then this node "filename" value must contain the name of the file
dropped.
Re: dragging element disappears with this line [message #162369 is a reply to message #162307] Fri, 23 November 2007 14:37 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: jan.herriger.gmx.de

In .gmfgen > Gen Diagram xxx you have "contains shortcuts to" and
"shortcuts provided for". There, set appropriate model file extensions.
AFAIK, it doesn't matter what extension to chose, if you just wanted dnd
beeing enabled and get rid of shortcut creation afterwards.

This enables your editor to create views, when model elements are
dropped into it. EditParts install DragDropEditPoliciy. These Policies
handle DropRequests arriving. You can override DragDropEditPoliciy in
order to return a command which sets specific properties instead of
creating views.

Paolo Russian schrieb:
> O__O "shortcut creation", it sound very sweet... but what-how-where is
> this?
> Is it some kind of implementation like the tabbed properties now you can
> create from gmfgen?
>
> Thanks in advance..
>
> Paolo
>
Re: dragging element disappears with this line [message #162392 is a reply to message #162369] Fri, 23 November 2007 16:46 Go to previous messageGo to next message
paolo russian is currently offline paolo russianFriend
Messages: 81
Registered: July 2009
Member
I wrote "navigator" as "contains shortcut to" field but nothing at all
changed. No new classes, no new methods... I do not have a
dragdropeditpolicy I looked through the whole project!
Am I supposed to set a specific value in these shortcuts? Somewhere in the
net they refer to "linking from a domain to another" when they talk of
these shortcuts, they never refer to "drag & drop" functions.
I am trying to make fit some stuff on my DropListener I assign in
XXDiagramEditor.java.. but I cannot get anything but the drop coordinates.
I mean, as I drag (without releasing the mouse button) around the mouse
with my object attached... it spits on the console output (as I inserted
some system.outs by 4 debug) the x,y position of the mouse.
When I release the button it does nothing.
Re: dragging element disappears with this line [message #162513 is a reply to message #162392] Sat, 24 November 2007 11:53 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: jan.herriger.gmx.de

This is a multi-part message in MIME format.
--------------080105060003020705070906
Content-Type: text/plain; charset=ISO-8859-15; format=flowed
Content-Transfer-Encoding: 7bit

Paolo Russian schrieb:
> I wrote "navigator" as "contains shortcut to" field but nothing at all
> changed. No new classes, no new methods... I do not have a
> dragdropeditpolicy I looked through the whole project!

I really thought, this would do more. Do you have some 'generated not'
in xxxDiagramEditor and/or xxxEditPart#createDefaultEditPolicies? I
attached the DiagramEditor which was generated for me.

> Am I supposed to set a specific value in these shortcuts? Somewhere in
> the net they refer to "linking from a domain to another" when they talk
> of these shortcuts, they never refer to "drag & drop" functions.
> I am trying to make fit some stuff on my DropListener I assign in
> XXDiagramEditor.java.. but I cannot get anything but the drop coordinates.
> I mean, as I drag (without releasing the mouse button) around the mouse
> with my object attached... it spits on the console output (as I inserted
> some system.outs by 4 debug) the x,y position of the mouse.
> When I release the button it does nothing.

The next step is to install a DragDropEditPolicy on the EditPart (the
one, an element is dropped into):

protected void createDefaultEditPolicies() {
....
installEditPolicy(EditPolicyRoles.DRAG_DROP_ROLE,
new DragDropEditPolicy());
....
}

Override DragDropEditPolicy#getDropObjectsCommand(...) to return a
command that fits your needs.

--------------080105060003020705070906
Content-Type: text/java;
name="ProcessDiagramEditor.java"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
filename="ProcessDiagramEditor.java"

cGFja2FnZSBvcmcubWVtby5vcmdtbC5wcm9jZXNzLmNvbnRyb2xmbG93LmRp YWdyYW0ucGFy
dDsNCg0KaW1wb3J0IG9yZy5lY2xpcHNlLmdlZi5wYWxldHRlLlBhbGV0dGVS b290Ow0KaW1w
b3J0IG9yZy5lY2xpcHNlLmdtZi5ydW50aW1lLmRpYWdyYW0udWkucmVzb3Vy Y2VzLmVkaXRv
ci5wYXJ0cy5EaWFncmFtRG9jdW1lbnRFZGl0b3I7DQppbXBvcnQgb3JnLmVj bGlwc2UuZ21m
LnJ1bnRpbWUubm90YXRpb24uRGlhZ3JhbTsNCmltcG9ydCBvcmcuZWNsaXBz ZS5lbWYudHJh
bnNhY3Rpb24uVHJhbnNhY3Rpb25hbEVkaXRpbmdEb21haW47DQppbXBvcnQg b3JnLmVjbGlw
c2UuZW1mLndvcmtzcGFjZS51dGlsLldvcmtzcGFjZVN5bmNocm9uaXplcjsN CmltcG9ydCBq
YXZhLnV0aWwuQXJyYXlMaXN0Ow0KaW1wb3J0IGphdmEudXRpbC5Db2xsZWN0 aW9uOw0KaW1w
b3J0IGphdmEudXRpbC5IYXNoU2V0Ow0KaW1wb3J0IGphdmEudXRpbC5JdGVy YXRvcjsNCmlt
cG9ydCBqYXZhLnV0aWwuTGlzdDsNCg0KaW1wb3J0IG9yZy5lY2xpcHNlLmNv cmUucmVzb3Vy
Y2VzLklGaWxlOw0KaW1wb3J0IG9yZy5lY2xpcHNlLmNvcmUucmVzb3VyY2Vz LklNYXJrZXI7
DQppbXBvcnQgb3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMuSVdvcmtzcGFj ZVJvb3Q7DQpp
bXBvcnQgb3JnLmVjbGlwc2UuY29yZS5yZXNvdXJjZXMuUmVzb3VyY2VzUGx1 Z2luOw0KDQpp
bXBvcnQgb3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLkNvcmVFeGNlcHRpb247 DQppbXBvcnQg
b3JnLmVjbGlwc2UuY29yZS5ydW50aW1lLklBZGFwdGFibGU7DQppbXBvcnQg b3JnLmVjbGlw
c2UuY29yZS5ydW50aW1lLklQYXRoOw0KaW1wb3J0IG9yZy5lY2xpcHNlLmNv cmUucnVudGlt
ZS5JUHJvZ3Jlc3NNb25pdG9yOw0KaW1wb3J0IG9yZy5lY2xpcHNlLmNvcmUu cnVudGltZS5J
U3RhdHVzOw0KaW1wb3J0IG9yZy5lY2xpcHNlLmNvcmUucnVudGltZS5OdWxs UHJvZ3Jlc3NN
b25pdG9yOw0KDQppbXBvcnQgb3JnLmVjbGlwc2UuZW1mLmNvbW1vbi51aS5V UklFZGl0b3JJ
bnB1dDsNCg0KaW1wb3J0IG9yZy5lY2xpcHNlLmVtZi5jb21tb24udXRpbC5V Ukk7DQoNCmlt
cG9ydCBvcmcuZWNsaXBzZS5lbWYuZWNvcmUuRU9iamVjdDsNCg0KaW1wb3J0 IG9yZy5lY2xp
cHNlLmVtZi5lY29yZS5yZXNvdXJjZS5SZXNvdXJjZTsNCg0KaW1wb3J0IG9y Zy5lY2xpcHNl
LmVtZi5lZGl0LnVpLmRuZC5Mb2NhbFRyYW5zZmVyOw0KDQppbXBvcnQgb3Jn LmVjbGlwc2Uu
Z2VmLkVkaXRQYXJ0Vmlld2VyOw0KDQppbXBvcnQgb3JnLmVjbGlwc2UuZ21m LnJ1bnRpbWUu
Y29tbW9uLnVpLnNlcnZpY2VzLm1hcmtlci5NYXJrZXJOYXZpZ2F0aW9uU2Vy dmljZTsNCg0K
aW1wb3J0IG9yZy5lY2xpcHNlLmdtZi5ydW50aW1lLmRpYWdyYW0uY29yZS5w cmVmZXJlbmNl
cy5QcmVmZXJlbmNlc0hpbnQ7DQoNCmltcG9ydCBvcmcuZWNsaXBzZS5nbWYu cnVudGltZS5k
aWFncmFtLnVpLnBhcnRzLkRpYWdyYW1Ecm9wVGFyZ2V0TGlzdGVuZXI7DQoN CmltcG9ydCBv
cmcuZWNsaXBzZS5nbWYucnVudGltZS5kaWFncmFtLnVpLnJlc291cmNlcy5l ZGl0b3IuZG9j
dW1lbnQuSURpYWdyYW1Eb2N1bWVudDsNCmltcG9ydCBvcmcuZWNsaXBzZS5n bWYucnVudGlt
ZS5kaWFncmFtLnVpLnJlc291cmNlcy5lZGl0b3IuZG9jdW1lbnQuSURvY3Vt ZW50Ow0KaW1w
b3J0IG9yZy5lY2xpcHNlLmdtZi5ydW50aW1lLmRpYWdyYW0udWkucmVzb3Vy Y2VzLmVkaXRv
ci5kb2N1bWVudC5JRG9jdW1lbnRQcm92aWRlcjsNCg0KaW1wb3J0IG9yZy5l Y2xpcHNlLmdt
Zi5ydW50aW1lLm5vdGF0aW9uLlZpZXc7DQoNCmltcG9ydCBvcmcuZWNsaXBz ZS5qZmFjZS5k
aWFsb2dzLkVycm9yRGlhbG9nOw0KaW1wb3J0IG9yZy5lY2xpcHNlLmpmYWNl LmRpYWxvZ3Mu
SU1lc3NhZ2VQcm92aWRlcjsNCmltcG9ydCBvcmcuZWNsaXBzZS5qZmFjZS5k aWFsb2dzLk1l
c3NhZ2VEaWFsb2c7DQoNCmltcG9ydCBvcmcuZWNsaXBzZS5qZmFjZS51dGls LkxvY2FsU2Vs
ZWN0aW9uVHJhbnNmZXI7DQoNCmltcG9ydCBvcmcuZWNsaXBzZS5qZmFjZS52 aWV3ZXJzLklT
ZWxlY3Rpb247DQppbXBvcnQgb3JnLmVjbGlwc2UuamZhY2Uudmlld2Vycy5J U3RydWN0dXJl
ZFNlbGVjdGlvbjsNCg0KaW1wb3J0IG9yZy5lY2xpcHNlLmpmYWNlLnZpZXdl cnMuU3RydWN0
dXJlZFNlbGVjdGlvbjsNCmltcG9ydCBvcmcuZWNsaXBzZS5qZmFjZS53aW5k b3cuV2luZG93
Ow0KDQppbXBvcnQgb3JnLmVjbGlwc2Uub3NnaS51dGlsLk5MUzsNCg0KaW1w b3J0IG9yZy5l
Y2xpcHNlLnN3dC5kbmQuVHJhbnNmZXI7DQppbXBvcnQgb3JnLmVjbGlwc2Uu c3d0LmRuZC5U
cmFuc2ZlckRhdGE7DQoNCmltcG9ydCBvcmcuZWNsaXBzZS5zd3Qud2lkZ2V0 cy5TaGVsbDsN
Cg0KaW1wb3J0IG9yZy5lY2xpcHNlLnVpLklFZGl0b3JJbnB1dDsNCmltcG9y dCBvcmcuZWNs
aXBzZS51aS5JRWRpdG9yTWF0Y2hpbmdTdHJhdGVneTsNCmltcG9ydCBvcmcu ZWNsaXBzZS51
aS5JRWRpdG9yUmVmZXJlbmNlOw0KaW1wb3J0IG9yZy5lY2xpcHNlLnVpLklG aWxlRWRpdG9y
SW5wdXQ7DQppbXBvcnQgb3JnLmVjbGlwc2UudWkuUGxhdGZvcm1VSTsNCg0K aW1wb3J0IG9y
Zy5lY2xpcHNlLnVpLmRpYWxvZ3MuU2F2ZUFzRGlhbG9nOw0KDQppbXBvcnQg b3JnLmVjbGlw
c2UudWkuaWRlLklHb3RvTWFya2VyOw0KDQppbXBvcnQgb3JnLmVjbGlwc2Uu dWkubmF2aWdh
dG9yLnJlc291cmNlcy5Qcm9qZWN0RXhwbG9yZXI7DQppbXBvcnQgb3JnLmVj bGlwc2UudWku
cGFydC5GaWxlRWRpdG9ySW5wdXQ7DQoNCmltcG9ydCBvcmcuZWNsaXBzZS51 aS5wYXJ0LklT
aG93SW5UYXJnZXRMaXN0Ow0KaW1wb3J0IG9yZy5lY2xpcHNlLnVpLnBhcnQu U2hvd0luQ29u
dGV4dDsNCmltcG9ydCBvcmcubWVtby5vcmdtbC5wcm9jZXNzLmNvbnRyb2xm bG93LmRpYWdy
YW0ubmF2aWdhdG9yLlByb2Nlc3NOYXZpZ2F0b3JJdGVtOw0KDQovKioNCiAq IEBnZW5lcmF0
ZWQNCiAqLw0KcHVibGljIGNsYXNzIFByb2Nlc3NEaWFncmFtRWRpdG9yIGV4 dGVuZHMgRGlh
Z3JhbURvY3VtZW50RWRpdG9yIGltcGxlbWVudHMNCgkJSUdvdG9NYXJrZXIg ew0KDQoJLyoq
DQoJICogQGdlbmVyYXRlZA0KCSAqLw0KCXB1YmxpYyBzdGF0aWMgZmluYWwg U3RyaW5nIElE
ID0gIm9yZy5tZW1vLm9yZ21sLnByb2Nlc3MuY29udHJvbGZsb3cuZGlhZ3Jh bS5wYXJ0LlBy
b2Nlc3NEaWFncmFtRWRpdG9ySUQiOyAvLyROT04tTkxTLTEkDQoNCgkvKioN CgkgKiBAZ2Vu
ZXJhdGVkDQoJICovDQoJcHVibGljIHN0YXRpYyBmaW5hbCBTdHJpbmcgQ09O VEVYVF9JRCA9
ICJvcmcubWVtby5vcmdtbC5wcm9jZXNzLmNvbnRyb2xmbG93LmRpYWdyYW0u dWkuZGlhZ3Jh
bUNvbnRleHQiOyAvLyROT04tTkxTLTEkDQoNCgkvKioNCgkgKiBAZ2VuZXJh dGVkDQoJICov
DQoJcHVibGljIFByb2Nlc3NEaWFncmFtRWRpdG9yKCkgew0KCQlzdXBlcih0 cnVlKTsNCgl9
DQoNCgkvKioNCgkgKiBAZ2VuZXJhdGVkDQoJICovDQoJcHJvdGVjdGVkIFN0 cmluZyBnZXRD
b250ZXh0SUQoKSB7DQoJCXJldHVybiBDT05URVhUX0lEOw0KCX0NCg0KCS8q Kg0KCSAqIEBn
ZW5lcmF0ZWQNCgkgKi8NCglwcm90ZWN0ZWQgUGFsZXR0ZVJvb3QgY3JlYXRl UGFsZXR0ZVJv
b3QoUGFsZXR0ZVJvb3QgZXhpc3RpbmdQYWxldHRlUm9vdCkgew0KCQlQYWxl dHRlUm9vdCBy
b290ID0gc3VwZXIuY3JlYXRlUGFsZXR0ZVJvb3QoZXhpc3RpbmdQYWxldHRl Um9vdCk7DQoJ
CW5ldyBQcm9jZXNzUGFsZXR0ZUZhY3RvcnkoKS5maWxsUGFsZXR0ZShyb290 KTsNCgkJcmV0
dXJuIHJvb3Q7DQoJfQ0KDQoJLyoqDQoJICogQGdlbmVyYXRlZA0KCSAqLw0K CXByb3RlY3Rl
ZCBQcmVmZXJlbmNlc0hpbnQgZ2V0UHJlZmVyZW5jZXNIaW50KCkgew0KCQly ZXR1cm4gUHJv
Y2Vzc0RpYWdyYW1FZGl0b3JQbHVnaW4uRElBR1JBTV9QUkVGRVJFTkNFU19I SU5UOw0KCX0N
Cg0KCS8qKg0KCSAqIEBnZW5lcmF0ZWQNCgkgKi8NCglwdWJsaWMgU3RyaW5n IGdldENvbnRy
aWJ1dG9ySWQoKSB7DQoJCXJldHVybiBQcm9jZXNzRGlhZ3JhbUVkaXRvclBs dWdpbi5JRDsN
Cgl9DQoNCgkvKioNCgkgKiBAZ2VuZXJhdGVkDQoJICovDQoJcHVibGljIE9i amVjdCBnZXRB
ZGFwdGVyKENsYXNzIHR5cGUpIHsNCgkJaWYgKHR5cGUgPT0gSVNob3dJblRh cmdldExpc3Qu
Y2xhc3MpIHsNCgkJCXJldHVybiBuZXcgSVNob3dJblRhcmdldExpc3QoKSB7 DQoJCQkJcHVi
bGljIFN0cmluZ1tdIGdldFNob3dJblRhcmdldElkcygpIHsNCgkJCQkJcmV0 dXJuIG5ldyBT
dHJpbmdbXSB7IFByb2plY3RFeHBsb3Jlci5WSUVXX0lEIH07DQoJCQkJfQ0K CQkJfTsNCgkJ
fQ0KCQlyZXR1cm4gc3VwZXIuZ2V0QWRhcHRlcih0eXBlKTsNCgl9DQoNCgkv KioNCgkgKiBA
Z2VuZXJhdGVkDQoJICovDQoJcHJvdGVjdGVkIElEb2N1bWVudFByb3ZpZGVy IGdldERvY3Vt
ZW50UHJvdmlkZXIoSUVkaXRvcklucHV0IGlucHV0KSB7DQoJCWlmIChpbnB1 dCBpbnN0YW5j
ZW9mIElGaWxlRWRpdG9ySW5wdXQNCgkJCQl8fCBpbnB1dCBpbnN0YW5jZW9m IFVSSUVkaXRv
cklucHV0KSB7DQoJCQlyZXR1cm4gUHJvY2Vzc0RpYWdyYW1FZGl0b3JQbHVn aW4uZ2V0SW5z
dGFuY2UoKQ0KCQkJCQkuZ2V0RG9jdW1lbnRQcm92aWRlcigpOw0KCQl9DQoJ CXJldHVybiBz
dXBlci5nZXREb2N1bWVudFByb3ZpZGVyKGlucHV0KTsNCgl9DQoNCgkvKioN CgkgKiBAZ2Vu
ZXJhdGVkDQoJICovDQoJcHVibGljIFRyYW5zYWN0aW9uYWxFZGl0aW5nRG9t YWluIGdldEVk
aXRpbmdEb21haW4oKSB7DQoJCUlEb2N1bWVudCBkb2N1bWVudCA9IGdldEVk aXRvcklucHV0
KCkgIT0gbnVsbCA/IGdldERvY3VtZW50UHJvdmlkZXIoKQ0KCQkJCS5nZXRE b2N1bWVudChn
ZXRFZGl0b3JJbnB1dCgpKSA6IG51bGw7DQoJCWlmIChkb2N1bWVudCBpbnN0 YW5jZW9mIElE
aWFncmFtRG9jdW1lbnQpIHsNCgkJCXJldHVybiAoKElEaWFncmFtRG9jdW1l bnQpIGRvY3Vt
ZW50KS5nZXRFZGl0aW5nRG9tYWluKCk7DQoJCX0NCgkJcmV0dXJuIHN1cGVy LmdldEVkaXRp
bmdEb21haW4oKTsNCgl9DQoNCgkvKioNCgkgKiBAZ2VuZXJhdGVkDQoJICov DQoJcHJvdGVj
dGVkIHZvaWQgc2V0RG9jdW1lbnRQcm92aWRlcihJRWRpdG9ySW5wdXQgaW5w dXQpIHsNCgkJ
aWYgKGlucHV0IGluc3RhbmNlb2YgSUZpbGVFZGl0b3JJbnB1dA0KCQkJCXx8 IGlucHV0IGlu
c3RhbmNlb2YgVVJJRWRpdG9ySW5wdXQpIHsNCgkJCXNldERvY3VtZW50UHJv dmlkZXIoUHJv
Y2Vzc0RpYWdyYW1FZGl0b3JQbHVnaW4uZ2V0SW5zdGFuY2UoKQ0KCQkJCQku Z2V0RG9jdW1l
bnRQcm92aWRlcigpKTsNCgkJfSBlbHNlIHsNCgkJCXN1cGVyLnNldERvY3Vt ZW50UHJvdmlk
ZXIoaW5wdXQpOw0KCQl9DQoJfQ0KDQoJLyoqDQoJICogQGdlbmVyYXRlZA0K CSAqLw0KCXB1
YmxpYyB2b2lkIGdvdG9NYXJrZXIoSU1hcmtlciBtYXJrZXIpIHsNCgkJTWFy a2VyTmF2aWdh
dGlvblNlcnZpY2UuZ2V0SW5zdGFuY2UoKS5nb3RvTWFya2VyKHRoaXMsIG1h cmtlcik7DQoJ
fQ0KDQoJLyoqDQoJICogQGdlbmVyYXRlZA0KCSAqLw0KCXB1YmxpYyBib29s ZWFuIGlzU2F2
ZUFzQWxsb3dlZCgpIHsNCgkJcmV0dXJuIHRydWU7DQoJfQ0KDQoJLyoqDQoJ ICogQGdlbmVy
YXRlZA0KCSAqLw0KCXB1YmxpYyB2b2lkIGRvU2F2ZUFzKCkgew0KCQlwZXJm b3JtU2F2ZUFz
KG5ldyBOdWxsUHJvZ3Jlc3NNb25pdG9yKCkpOw0KCX0NCg0KCS8qKg0KCSAq IEBnZW5lcmF0
ZWQNCgkgKi8NCglwcm90ZWN0ZWQgdm9pZCBwZXJmb3JtU2F2ZUFzKElQcm9n cmVzc01vbml0
b3IgcHJvZ3Jlc3NNb25pdG9yKSB7DQoJCVNoZWxsIHNoZWxsID0gZ2V0U2l0 ZSgpLmdldFNo
ZWxsKCk7DQoJCUlFZGl0b3JJbnB1dCBpbnB1dCA9IGdldEVkaXRvcklucHV0 KCk7DQoJCVNh
dmVBc0RpYWxvZyBkaWFsb2cgPSBuZXcgU2F2ZUFzRGlhbG9nKHNoZWxsKTsN CgkJSUZpbGUg
b3JpZ2luYWwgPSBpbnB1dCBpbnN0YW5jZW9mIElGaWxlRWRpdG9ySW5wdXQg PyAoKElGaWxl
RWRpdG9ySW5wdXQpIGlucHV0KQ0KCQkJCS5nZXRGaWxlKCkNCgkJCQk6IG51 bGw7DQoJCWlm
IChvcmlnaW5hbCAhPSBudWxsKSB7DQoJCQlkaWFsb2cuc2V0T3JpZ2luYWxG aWxlKG9yaWdp
bmFsKTsNCgkJfQ0KCQlkaWFsb2cuY3JlYXRlKCk7DQoJCUlEb2N1bWVudFBy b3ZpZGVyIHBy
b3ZpZGVyID0gZ2V0RG9jdW1lbnRQcm92aWRlcigpOw0KCQlpZiAocHJvdmlk ZXIgPT0gbnVs
bCkgew0KCQkJLy8gZWRpdG9yIGhhcyBiZWVuIHByb2dyYW1tYXRpY2FsbHkg Y2xvc2VkIHdo
aWxlIHRoZSBkaWFsb2cgd2FzIG9wZW4NCgkJCXJldHVybjsNCgkJfQ0KCQlp ZiAocHJvdmlk
ZXIuaXNEZWxldGVkKGlucHV0KSAmJiBvcmlnaW5hbCAhPSBudWxsKSB7DQoJ CQlTdHJpbmcg
bWVzc2FnZSA9IE5MUy5iaW5kKA0KCQkJCQlNZXNzYWdlcy5Qcm9jZXNzRGlh Z3JhbUVkaXRv
cl9TYXZpbmdEZWxldGVkRmlsZSwgb3JpZ2luYWwNCgkJCQkJCQkuZ2V0TmFt ZSgpKTsNCgkJ
CWRpYWxvZy5zZXRFcnJvck1lc3NhZ2UobnVsbCk7DQoJCQlkaWFsb2cuc2V0 TWVzc2FnZSht
ZXNzYWdlLCBJTWVzc2FnZVByb3ZpZGVyLldBUk5JTkcpOw0KCQl9DQoJCWlm IChkaWFsb2cu
b3BlbigpID09IFdpbmRvdy5DQU5DRUwpIHsNCgkJCWlmIChwcm9ncmVzc01v bml0b3IgIT0g
bnVsbCkgew0KCQkJCXByb2dyZXNzTW9uaXRvci5zZXRDYW5jZWxlZCh0cnVl KTsNCgkJCX0N
CgkJCXJldHVybjsNCgkJfQ0KCQlJUGF0aCBmaWxlUGF0aCA9IGRpYWxvZy5n ZXRSZXN1bHQo
KTsNCgkJaWYgKGZpbGVQYXRoID09IG51bGwpIHsNCgkJCWlmIChwcm9ncmVz c01vbml0b3Ig
IT0gbnVsbCkgew0KCQkJCXByb2dyZXNzTW9uaXRvci5zZXRDYW5jZWxlZCh0 cnVlKTsNCgkJ
CX0NCgkJCXJldHVybjsNCgkJfQ0KCQlJV29ya3NwYWNlUm9vdCB3b3Jrc3Bh Y2VSb290ID0g
UmVzb3VyY2VzUGx1Z2luLmdldFdvcmtzcGFjZSgpLmdldFJvb3QoKTsNCgkJ SUZpbGUgZmls
ZSA9IHdvcmtzcGFjZVJvb3QuZ2V0RmlsZShmaWxlUGF0aCk7DQoJCWZpbmFs IElFZGl0b3JJ
bnB1dCBuZXdJbnB1dCA9IG5ldyBGaWxlRWRpdG9ySW5wdXQoZmlsZSk7DQoJ CS8vIENoZWNr
IGlmIHRoZSBlZGl0b3IgaXMgYWxyZWFkeSBvcGVuDQoJCUlFZGl0b3JNYXRj aGluZ1N0cmF0
ZWd5IG1hdGNoaW5nU3RyYXRlZ3kgPSBnZXRFZGl0b3JEZXNjcmlwdG9yKCkN CgkJCQkuZ2V0
RWRpdG9yTWF0Y2hpbmdTdHJhdGVneSgpOw0KCQlJRWRpdG9yUmVmZXJlbmNl W10gZWRpdG9y
UmVmcyA9IFBsYXRmb3JtVUkuZ2V0V29ya2JlbmNoKCkNCgkJCQkuZ2V0QWN0 aXZlV29ya2Jl
bmNoV2luZG93KCkuZ2V0QWN0aXZlUGFnZSgpDQoJCQkJLmdldEVkaXRvclJl ZmVyZW5jZXMo
KTsNCgkJZm9yIChpbnQgaSA9IDA7IGkgPCBlZGl0b3JSZWZzLmxlbmd0aDsg aSsrKSB7DQoJ
CQlpZiAobWF0Y2hpbmdTdHJhdGVneS5tYXRjaGVzKGVkaXRvclJlZnNbaV0s IG5ld0lucHV0
KSkgew0KCQkJCU1lc3NhZ2VEaWFsb2cub3Blbldhcm5pbmcoc2hlbGwsDQoJ CQkJCQlNZXNz
YWdlcy5Qcm9jZXNzRGlhZ3JhbUVkaXRvcl9TYXZlQXNFcnJvclRpdGxlLA0K CQkJCQkJTWVz
c2FnZXMuUHJvY2Vzc0RpYWdyYW1FZGl0b3JfU2F2ZUFzRXJyb3JNZXNzYWdl KTsNCgkJCQly
ZXR1cm47DQoJCQl9DQoJCX0NCgkJYm9vbGVhbiBzdWNjZXNzID0gZmFsc2U7 DQoJCXRyeSB7
DQoJCQlwcm92aWRlci5hYm91dFRvQ2hhbmdlKG5ld0lucHV0KTsNCgkJCWdl dERvY3VtZW50
UHJvdmlkZXIobmV3SW5wdXQpLnNhdmVEb2N1bWVudChwcm9ncmVzc01vbml0 b3IsDQoJCQkJ
CW5ld0lucHV0LA0KCQkJCQlnZXREb2N1bWVudFByb3ZpZGVyKCkuZ2V0RG9j dW1lbnQoZ2V0
RWRpdG9ySW5wdXQoKSksIHRydWUpOw0KCQkJc3VjY2VzcyA9IHRydWU7DQoJ CX0gY2F0Y2gg
KENvcmVFeGNlcHRpb24geCkgew0KCQkJSVN0YXR1cyBzdGF0dXMgPSB4Lmdl dFN0YXR1cygp
Ow0KCQkJaWYgKHN0YXR1cyA9PSBudWxsIHx8IHN0YXR1cy5nZXRTZXZlcml0 eSgpICE9IElT
dGF0dXMuQ0FOQ0VMKSB7DQoJCQkJRXJyb3JEaWFsb2cub3BlbkVycm9yKHNo ZWxsLA0KCQkJ
CQkJTWVzc2FnZXMuUHJvY2Vzc0RpYWdyYW1FZGl0b3JfU2F2ZUVycm9yVGl0 bGUsDQoJCQkJ
CQlNZXNzYWdlcy5Qcm9jZXNzRGlhZ3JhbUVkaXRvcl9TYXZlRXJyb3JNZXNz YWdlLCB4DQoJ
CQkJCQkJCS5nZXRTdGF0dXMoKSk7DQoJCQl9DQoJCX0gZmluYWxseSB7DQoJ CQlwcm92aWRl
ci5jaGFuZ2VkKG5ld0lucHV0KTsNCgkJCWlmIChzdWNjZXNzKSB7DQoJCQkJ c2V0SW5wdXQo
bmV3SW5wdXQpOw0KCQkJfQ0KCQl9DQoJCWlmIChwcm9ncmVzc01vbml0b3Ig IT0gbnVsbCkg
ew0KCQkJcHJvZ3Jlc3NNb25pdG9yLnNldENhbmNlbGVkKCFzdWNjZXNzKTsN CgkJfQ0KCX0N
Cg0KCS8qKg0KCSAqIEBnZW5lcmF0ZWQNCgkgKi8NCglwdWJsaWMgU2hvd0lu Q29udGV4dCBn
ZXRTaG93SW5Db250ZXh0KCkgew0KCQlyZXR1cm4gbmV3IFNob3dJbkNvbnRl eHQoZ2V0RWRp
dG9ySW5wdXQoKSwgZ2V0TmF2aWdhdG9yU2VsZWN0aW9uKCkpOw0KCX0NCg0K CS8qKg0KCSAq
IEBnZW5lcmF0ZWQNCgkgKi8NCglwcml2YXRlIElTZWxlY3Rpb24gZ2V0TmF2 aWdhdG9yU2Vs
ZWN0aW9uKCkgew0KCQlJRGlhZ3JhbURvY3VtZW50IGRvY3VtZW50ID0gZ2V0 RGlhZ3JhbURv
Y3VtZW50KCk7DQoJCWlmIChkb2N1bWVudCA9PSBudWxsKSB7DQoJCQlyZXR1 cm4gU3RydWN0
dXJlZFNlbGVjdGlvbi5FTVBUWTsNCgkJfQ0KCQlEaWFncmFtIGRpYWdyYW0g PSBkb2N1bWVu
dC5nZXREaWFncmFtKCk7DQoJCUlGaWxlIGZpbGUgPSBXb3Jrc3BhY2VTeW5j aHJvbml6ZXIu
Z2V0RmlsZShkaWFncmFtLmVSZXNvdXJjZSgpKTsNCgkJaWYgKGZpbGUgIT0g bnVsbCkgew0K
CQkJUHJvY2Vzc05hdmlnYXRvckl0ZW0gaXRlbSA9IG5ldyBQcm9jZXNzTmF2 aWdhdG9ySXRl
bShkaWFncmFtLCBmaWxlLA0KCQkJCQlmYWxzZSk7DQoJCQlyZXR1cm4gbmV3 IFN0cnVjdHVy
ZWRTZWxlY3Rpb24oaXRlbSk7DQoJCX0NCgkJcmV0dXJuIFN0cnVjdHVyZWRT ZWxlY3Rpb24u
RU1QVFk7DQoJfQ0KDQoJLyoqDQoJICogQGdlbmVyYXRlZA0KCSAqLw0KCXBy b3RlY3RlZCB2
b2lkIGluaXRpYWxpemVHcmFwaGljYWxWaWV3ZXIoKSB7DQoJCXN1cGVyLmlu aXRpYWxpemVH
cmFwaGljYWxWaWV3ZXIoKTsNCgkJZ2V0RGlhZ3JhbUdyYXBoaWNhbFZpZXdl cigpLmFkZERy
b3BUYXJnZXRMaXN0ZW5lcigNCgkJCQluZXcgRHJvcFRhcmdldExpc3RlbmVy KGdldERpYWdy
YW1HcmFwaGljYWxWaWV3ZXIoKSwNCgkJCQkJCUxvY2FsU2VsZWN0aW9uVHJh bnNmZXIuZ2V0
VHJhbnNmZXIoKSkgew0KDQoJCQkJCXByb3RlY3RlZCBPYmplY3QgZ2V0SmF2 YU9iamVjdChU
cmFuc2ZlckRhdGEgZGF0YSkgew0KCQkJCQkJcmV0dXJuIExvY2FsU2VsZWN0 aW9uVHJhbnNm
ZXIuZ2V0VHJhbnNmZXIoKQ0KCQkJCQkJCQkubmF0aXZlVG9KYXZhKGRhdGEp Ow0KCQkJCQl9
DQoNCgkJCQl9KTsNCgkJZ2V0RGlhZ3JhbUdyYXBoaWNhbFZpZXdlcigpLmFk ZERyb3BUYXJn
ZXRMaXN0ZW5lcigNCgkJCQluZXcgRHJvcFRhcmdldExpc3RlbmVyKGdldERp YWdyYW1HcmFw
aGljYWxWaWV3ZXIoKSwNCgkJCQkJCUxvY2FsVHJhbnNmZXIuZ2V0SW5zdGFu Y2UoKSkgew0K
DQoJCQkJCXByb3RlY3RlZCBPYmplY3QgZ2V0SmF2YU9iamVjdChUcmFuc2Zl ckRhdGEgZGF0
YSkgew0KCQkJCQkJcmV0dXJuIExvY2FsVHJhbnNmZXIuZ2V0SW5zdGFuY2Uo KS5uYXRpdmVU
b0phdmEoZGF0YSk7DQoJCQkJCX0NCg0KCQkJCX0pOw0KCX0NCg0KCS8qKg0K CSAqIEBnZW5l
cmF0ZWQNCgkgKi8NCglwcml2YXRlIGFic3RyYWN0IGNsYXNzIERyb3BUYXJn ZXRMaXN0ZW5l
ciBleHRlbmRzIERpYWdyYW1Ecm9wVGFyZ2V0TGlzdGVuZXIgew0KDQoJCS8q Kg0KCQkgKiBA
Z2VuZXJhdGVkDQoJCSAqLw0KCQlwdWJsaWMgRHJvcFRhcmdldExpc3RlbmVy KEVkaXRQYXJ0
Vmlld2VyIHZpZXdlciwgVHJhbnNmZXIgeGZlcikgew0KCQkJc3VwZXIodmll d2VyLCB4ZmVy
KTsNCgkJfQ0KDQoJCS8qKg0KCQkgKiBAZ2VuZXJhdGVkDQoJCSAqLw0KCQlw cm90ZWN0ZWQg
TGlzdCBnZXRPYmplY3RzQmVpbmdEcm9wcGVkKCkgew0KCQkJVHJhbnNmZXJE YXRhIGRhdGEg
PSBnZXRDdXJyZW50RXZlbnQoKS5jdXJyZW50RGF0YVR5cGU7DQoJCQlDb2xs ZWN0aW9uIHVy
aXMgPSBuZXcgSGFzaFNldCgpOw0KDQoJCQlPYmplY3QgdHJhbnNmZXJlZE9i amVjdCA9IGdl
dEphdmFPYmplY3QoZGF0YSk7DQoJCQlpZiAodHJhbnNmZXJlZE9iamVjdCBp bnN0YW5jZW9m
IElTdHJ1Y3R1cmVkU2VsZWN0aW9uKSB7DQoJCQkJSVN0cnVjdHVyZWRTZWxl Y3Rpb24gc2Vs
ZWN0aW9uID0gKElTdHJ1Y3R1cmVkU2VsZWN0aW9uKSB0cmFuc2ZlcmVkT2Jq ZWN0Ow0KCQkJ
CWZvciAoSXRlcmF0b3IgaXQgPSBzZWxlY3Rpb24uaXRlcmF0b3IoKTsgaXQu aGFzTmV4dCgp
Oykgew0KCQkJCQlPYmplY3QgbmV4dFNlbGVjdGVkT2JqZWN0ID0gaXQubmV4 dCgpOw0KCQkJ
CQlpZiAobmV4dFNlbGVjdGVkT2JqZWN0IGluc3RhbmNlb2YgUHJvY2Vzc05h dmlnYXRvckl0
ZW0pIHsNCgkJCQkJCVZpZXcgdmlldyA9ICgoUHJvY2Vzc05hdmlnYXRvckl0 ZW0pIG5leHRT
ZWxlY3RlZE9iamVjdCkNCgkJCQkJCQkJLmdldFZpZXcoKTsNCgkJCQkJCW5l eHRTZWxlY3Rl
ZE9iamVjdCA9IHZpZXcuZ2V0RWxlbWVudCgpOw0KCQkJCQl9IGVsc2UgaWYg KG5leHRTZWxl
Y3RlZE9iamVjdCBpbnN0YW5jZW9mIElBZGFwdGFibGUpIHsNCgkJCQkJCUlB ZGFwdGFibGUg
YWRhcHRhYmxlID0gKElBZGFwdGFibGUpIG5leHRTZWxlY3RlZE9iamVjdDsN CgkJCQkJCW5l
eHRTZWxlY3RlZE9iamVjdCA9IGFkYXB0YWJsZQ0KCQkJCQkJCQkuZ2V0QWRh cHRlcihFT2Jq
ZWN0LmNsYXNzKTsNCgkJCQkJfQ0KDQoJCQkJCWlmIChuZXh0U2VsZWN0ZWRP YmplY3QgaW5z
dGFuY2VvZiBFT2JqZWN0KSB7DQoJCQkJCQlFT2JqZWN0IG1vZGVsRWxlbWVu dCA9IChFT2Jq
ZWN0KSBuZXh0U2VsZWN0ZWRPYmplY3Q7DQoJCQkJCQlSZXNvdXJjZSBtb2Rl bEVsZW1lbnRS
ZXNvdXJjZSA9IG1vZGVsRWxlbWVudA0KCQkJCQkJCQkuZVJlc291cmNlKCk7 DQoJCQkJCQl1
cmlzLmFkZChtb2RlbEVsZW1lbnRSZXNvdXJjZS5nZXRVUkkoKS5hcHBlbmRG cmFnbWVudCgN
CgkJCQkJCQkJbW9kZWxFbGVtZW50UmVzb3VyY2UNCgkJCQkJCQkJCQkuZ2V0 VVJJRnJhZ21l
bnQobW9kZWxFbGVtZW50KSkpOw0KCQkJCQl9DQoJCQkJfQ0KCQkJfQ0KDQoJ CQlMaXN0IHJl
c3VsdCA9IG5ldyBBcnJheUxpc3QoKTsNCgkJCWZvciAoSXRlcmF0b3IgaXQg PSB1cmlzLml0
ZXJhdG9yKCk7IGl0Lmhhc05leHQoKTspIHsNCgkJCQlVUkkgbmV4dFVSSSA9 IChVUkkpIGl0
Lm5leHQoKTsNCgkJCQlFT2JqZWN0IG1vZGVsT2JqZWN0ID0gZ2V0RWRpdGlu Z0RvbWFpbigp
LmdldFJlc291cmNlU2V0KCkNCgkJCQkJCS5nZXRFT2JqZWN0KG5leHRVUkks IHRydWUpOw0K
CQkJCXJlc3VsdC5hZGQobW9kZWxPYmplY3QpOw0KCQkJfQ0KCQkJcmV0dXJu IHJlc3VsdDsN
CgkJfQ0KDQoJCS8qKg0KCQkgKiBAZ2VuZXJhdGVkDQoJCSAqLw0KCQlwcm90 ZWN0ZWQgYWJz
dHJhY3QgT2JqZWN0IGdldEphdmFPYmplY3QoVHJhbnNmZXJEYXRhIGRhdGEp Ow0KDQoJfQ0K
DQp9
--------------080105060003020705070906--
Re: dragging element disappears with this line [message #162667 is a reply to message #162513] Mon, 26 November 2007 11:20 Go to previous message
Alexander Shatalin is currently offline Alexander ShatalinFriend
Messages: 2928
Registered: July 2009
Senior Member
Hello Jan,

> I really thought, this would do more. Do you have some 'generated not'
Yes, there should be more changes ;-) Here is a description: http://wiki.eclipse.org/index.php/GMF_GenModel_Hints#GenDiag ram.
AFAIU, generated ???VisualIdRegistry should be changed on changing this property.

-----------------
Alex Shatalin
Previous Topic:GMF Problem -> nodes added are placed on top of each other in top-left hand corner
Next Topic:How can make the compartment seperator extend along with its containing figure?
Goto Forum:
  


Current Time: Fri Sep 20 16:44:22 GMT 2024

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

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

Back to the top