Changes since 3.0 [message #186472] |
Tue, 05 July 2005 12:38  |
Eclipse User |
|
|
|
I've written a GEF based editor using GEF 3.0. Now I'm trying to port
this to GEF 3.1.
Unfortunately I have some problems, e.g.
- org.eclipse.internal.ui.properties.PropertySheetEntry has gone..
I know I know... it was internal... I'll never use an internal class
again. I've learned my lesson...
- I have some problems with connection decoration, I haven't figured
out the exact problem yet..
but with GEF 3.0 my decorations worked and now they don't
Is there a document describing the changes anywhere? Are there
important changes dealing with undo/redo and command stacks?
And where has the API documentation of the draw2d package gone? Will it
be available in the final release?
I'm using GEF3.1RC4.
Jens
|
|
|
|
Re: Changes since 3.0 [message #186511 is a reply to message #186488] |
Tue, 05 July 2005 14:03   |
Eclipse User |
|
|
|
Hi,
On 2005-07-05 19:20:23 +0200, "Randy Hudson" <none@us.ibm.com> said:
>
> "Jens v.P." <developer@jevopi.de> wrote in message
> news:daed85$qme$1@news.eclipse.org...
>> - org.eclipse.internal.ui.properties.PropertySheetEntry has gone..
>> I know I know... it was internal... I'll never use an internal class
>> again. I've learned my lesson...
>
> It's no longer internal.
Oh! Great! But I've learned my lesson, anyway ;)
>
>> - I have some problems with connection decoration, I haven't figured
>> out the exact problem yet..
>> but with GEF 3.0 my decorations worked and now they don't
>
> Figure used to have a bogus initial size. The initial size is now 0,0.
That wasn't the problem... I found a bug in my figure class. But it's
strange, the very same code worked with GEF3.0.
I set a figure as decoration and called at the same time the
add(IFigure, Object,int) method (with my decoration as parameter). This
worked with 3.0, but not with 3.1. Now I remved the second method call
and it's working.
>
>> And where has the API documentation of the draw2d package gone? Will it
>> be available in the final release?
>> I'm using GEF3.1RC4.
>
> Should be in the same place as always.
Sorry.. I've found it..
And thank you for the fast answer!
Jens
|
|
|
|
Re: Changes since 3.0 [message #186610 is a reply to message #186536] |
Wed, 06 July 2005 04:20   |
Eclipse User |
|
|
|
Randy,
On 2005-07-05 20:47:10 +0200, "Randy Hudson" <none@us.ibm.com> said:
>> That wasn't the problem... I found a bug in my figure class. But it's
>> strange, the very same code worked with GEF3.0.
>> I set a figure as decoration and called at the same time the
>> add(IFigure, Object,int) method (with my decoration as parameter). This
>> worked with 3.0, but not with 3.1. Now I remved the second method call
>> and it's working.
>
> It sounds like a regression/bug. Can you provide more details or open
> a bugzilla?
This is my code (it's part of my UML editor, I think you can easily get
the idea):
01 public class AssociationFigure extends PolylineConnection {
02 ..
03 public void add(IFigure i_figure, Object i_constraint, int i_index) {
04 ConnectionLocator locator = (ConnectionLocator) i_constraint;
05 if (locator==null) {
06 if (..) {
07 ..
08 } else if (i_figure instanceof AssociationEndFigure) {
09 AssociationEndFigure endfigure =
10 (AssociationEndFigure) i_figure;
11 // AssociationEndFigure is an instance of RotableDecoration
12 if (endfigure.isEnd()) {
13 setTargetDecoration(endfigure);
14 } else {
15 setSourceDecoration(endfigure);
16 }
17 return; // this line is new for GEF 3.1
18 }
19 }
20 super.add(i_figure, locator, i_index);
21 }
|
|
|
Re: Changes since 3.0 [message #186690 is a reply to message #186610] |
Wed, 06 July 2005 10:40   |
Eclipse User |
|
|
|
Originally posted by: none.us.ibm.com
What is "not working"? Is there an exception? Stacktrace?
Obviously you are adding a figure that has already been added (in your 3.0
version). But that should not cause any problems.
"Jens v.P." <developer@jevopi.de> wrote in message
news:dag4d1$kkq$1@news.eclipse.org...
> Randy,
>
> On 2005-07-05 20:47:10 +0200, "Randy Hudson" <none@us.ibm.com> said:
>
>>> That wasn't the problem... I found a bug in my figure class. But it's
>>> strange, the very same code worked with GEF3.0.
>>> I set a figure as decoration and called at the same time the
>>> add(IFigure, Object,int) method (with my decoration as parameter). This
>>> worked with 3.0, but not with 3.1. Now I remved the second method call
>>> and it's working.
>>
>> It sounds like a regression/bug. Can you provide more details or open a
>> bugzilla?
>
> This is my code (it's part of my UML editor, I think you can easily get
> the idea):
>
> 01 public class AssociationFigure extends PolylineConnection {
> 02 ..
> 03 public void add(IFigure i_figure, Object i_constraint, int i_index) {
>
> 04 ConnectionLocator locator = (ConnectionLocator) i_constraint;
>
> 05 if (locator==null) {
>
> 06 if (..) {
>
> 07 ..
>
> 08 } else if (i_figure instanceof AssociationEndFigure) {
>
> 09 AssociationEndFigure endfigure =
> 10 (AssociationEndFigure) i_figure;
> 11 // AssociationEndFigure is an instance of
> RotableDecoration
> 12 if (endfigure.isEnd()) {
>
> 13 setTargetDecoration(endfigure);
> 14 } else {
>
> 15 setSourceDecoration(endfigure);
>
> 16 }
>
> 17 return; // this line is new for GEF 3.1
>
> 18 }
>
> 19 }
> 20 super.add(i_figure, locator, i_index);
>
> 21 }
|
|
|
Re: Changes since 3.0 [message #186726 is a reply to message #186690] |
Wed, 06 July 2005 13:23  |
Eclipse User |
|
|
|
Randy,
On 2005-07-06 16:40:05 +0200, "Randy Hudson" <none@us.ibm.com> said:
> What is "not working"? Is there an exception? Stacktrace?
>
> Obviously you are adding a figure that has already been added (in your
> 3.0 version). But that should not cause any problems.
Sorry about that, I should have been more precise. Here, "not working"
means that the decoration, that is the figure which is been added
twice, is painted, but not where it should be painted (that is at the
and of the connection) but at the upper left corner of the drawing
canvas, that is its position is (0,0).
Jens
|
|
|
Powered by
FUDForum. Page generated in 0.05454 seconds