Community
Participate
Working Groups
1. Create a connector between 2 SVG shapes (100% zoom) 2. Change zoom factor to something != 100% Connectors either not touching the shapes or going through them. Problem: Anchor is calculated before ScalableImageFigure either sets the new RenderedImage or renders the image on a non-ui thread. Need mechanism to let the anchor that the image has been rendered and location needs to be updated.
Created attachment 138739 [details] 2.1.4 patch Clients will need to create SlidableImageAnchor as follows: at the moment the constructor takes two figures: IFigure owner - a NodeFigure most of the time ImageFigure imageFigure - the image figure now, to benefit from the fix they would have to create using the image figure for both the owner and the imageFigure. For example: Before: new SlidableImageFigure(owner, imageFigure) After: new SlidableImageFigure(imageFigure, imageFigure)
Created attachment 138750 [details] 2.1.4 patch with a null check Corrected patch (null check added)
Created attachment 138834 [details] 2.2.1 proposed patch Patch for 2.2.1
Hi Cherie, Could you please code review the 2.1.4 patch for me please? Thanks.
2.1.4 patch is committed
(In reply to comment #5) > 2.1.4 patch is committed Pretty sure we also committed to R2_2_maintenance and HEAD right? So this one is resolved fixed?
Nope, just the 2.1.4 fix is there. HEAD and 2.2 maintenance are without the fix. Need a GEF fix to commit this one. It introduces new API, which I think would make the fix correct, not a 2.1.4 workaround with no API changes.
Ah, this is why you needed the GEF fix. We still need both right?
Yes, I forgot about this fix. So, yes, we do need a GEF fix to commit it. I'll remind Cherie to review the GEF fix.
Hi James, Could you please code review this GMF patch as well as the GEF patch attached to the bug 279825? (this patch depends on GEF patch) Thanks!
Looks good! Only minor thing would be to update the Copyright to 2010.
Committed patch has 1. Corrected header dates and @since 3.6 2. Also made all methods AbstractImageFigure final - no need to override add / remove listeners as well notify method.
(In reply to comment #12) > Committed patch has > 1. Corrected header dates and @since 3.6 > 2. Also made all methods AbstractImageFigure final - no need to override add / > remove listeners as well notify method. Meant to put that in bug 279825
Delivered the GMF 2.3 fix.
API Tools is reporting two API breakages and three missing @since tags in SlidableImageAnchor. The changes need to be done in an API compatible way. Missing @since tag on imageChanged() Missing @since tag on SlidableImageAnchor(IFigure, IImageFigure, PrecisionPoint) Missing @since tag on SlidableImageAnchor(IFigure, IImageFigure) The constructor org.eclipse.gmf.runtime.gef.ui.figures.SlidableImageAnchor.SlidableImageAnchor(IFigure, ImageFigure, PrecisionPoint) has been removed The constructor org.eclipse.gmf.runtime.gef.ui.figures.SlidableImageAnchor.SlidableImageAnchor(IFigure, ImageFigure) has been removed
:-( I'll definitely correct this. Thanks!
Created attachment 166538 [details] patch to address API Tooling issues Anthony, This is the patch to address API tooling problems for gef.ui plugin: Things done: 1. Upgraded draw2d plug-in dependency version from 3.5.0 to 3.6.0 2. Changed the plug-in version from 1.2.0 to 1.4.0 (skipping 1.3.0, we're making all GMF runtime plugins 1.4.0 for the 2.3, right?) 3. Fixed all API Tooling errors by adding a filter except #imageChanged() method - I added @since for it. Fixed errors with api tooling filters, because I don't see how I break the public API. API Tooling thinks that I removed old constructors and added the new ones when in fact i simply switched variable type to IImageFigure from ImageFigure. ImageFigure is a sub-class of IImageFigure. Therefore, I expanded the API, which shouldn't break it. Let me know what you think.
Hi Alex, for the two removed methods: The constructor org.eclipse.gmf.runtime.gef.ui.figures.SlidableImageAnchor.SlidableImageAnchor(IFigure, ImageFigure, PrecisionPoint) has been removed The constructor org.eclipse.gmf.runtime.gef.ui.figures.SlidableImageAnchor.SlidableImageAnchor(IFigure, ImageFigure) has been removed If we add them back and make them deprecated, then we will maintain binary compatibility and API tools will not complain.
Created attachment 166572 [details] patch to fix API Tooling issues Anthony, Here is the new patch I've created by adding the old constructors back. I didn't have to correct the references to those constructors, they are automatically reference the new ones. Hence, I feel that API Tooling is incorrect in this case and not us. Let me know if it's ok to commit it.
Actually, I have to correct references to these constructors if i add the old constructors... by casting ImageFigure to IImageFigure... Wouldn't say I like this.
(In reply to comment #18) > The constructor org.eclipse.gmf.runtime.gef.ui.figures.SlidableImageAnchor.SlidableImageAnchor(IFigure, > ImageFigure, PrecisionPoint) has been removed > The constructor > org.eclipse.gmf.runtime.gef.ui.figures.SlidableImageAnchor.SlidableImageAnchor(IFigure, > ImageFigure) has been removed > OK, agreed, just add a .api_filter for these.
Delivered the previous patch that fixes API Tooling issues via api filters.
[target cleanup] 2.3 M7 was the original target milestone for this bug
[GMF Restructure] Bug 319140 : product GMF and component Runtime Diagram was the original product and component for this bug