Community
Participate
Working Groups
The new "smart" atomic flow-port icons are sometimes replaced by red squares on IBDs or BDDs. This is a symptom of the old static icon implementation re-surfacing (but the old static icons have been removed from the resources, leading to unresolved icons, hence red squares). To reproduce, load the attached model, and "auto-resize" the part. The red squares can also be observed in the "Filter->Show/Hide Content" for the part. You can also notice some related errors in the error log: Unable to resolve plug-in "platform:/plugin/icons/portandflows/icons/portandflows/FlowPort_IN.gif". Unable to resolve plug-in "platform:/plugin/icons/portandflows/icons/portandflows/FlowPort_OUT.gif". Unable to resolve plug-in "platform:/plugin/icons/portandflows/icons/portandflows/FlowPort_INOUT.gif".
Created attachment 204888 [details] The model used to reproduced the issue.
Probably the "auto-resize" that does not move the Port to the new location correctly.
Fix for reported exceptions r5771 (branch) & r5772 (trunk) The method supposed to retrieve the image URI is incorrect in case the location given in the UML profile file is relative (not fixed), the location in the SysML profile have been turned into absolute platform URIs to avoid this. Still to be fixed: the auto-resize issue...
(In reply to comment #3) > Fix for reported exceptions r5771 (branch) & r5772 (trunk) > > The method supposed to retrieve the image URI is incorrect in case the location > given in the UML profile file is relative (not fixed), the location in the SysML > profile have been turned into absolute platform URIs to avoid this. Fix for SysML icons in model explorer r5773 (branch) & r5774 (trunk).
During autosize (or after while in autosize) layout changes can occur on the figure itself or another (a child for instance) that modify figure size without any resize request. This result in Port location becoming incorrect (the location is currently updated by edit part request). I cannot figure out any simple fix for this, the side of the parent where the Port is located should maybe be stored in the notation model instead of calculated with the Port position... For the moment my recommendation is to forbid the autosize mode on element that can graphically hold Ports.
Make same size can also break FlowPort location.
"Make same size" fixed by using edit part resize commands. "Autosize" disabled on element that can hold ports. Done in r6203 (0.8.X).
(In reply to comment #7) > "Make same size" fixed by using edit part resize commands. > "Autosize" disabled on element that can hold ports. > > Done in r6203 (0.8.X). In r6257 merge into trunk.
In r7411: To avoid port position issue related to auto-size, the related elements (Block, BlockProperty) in IBD & BDD have auto-size disabled on creation. This is achieved by setting View dimension to their default size given in preferences. A specific XYLayoutPolicy has to be applied on any possible container (StructureCompartment, Diagrams...) to avoid SetBoundsCommand to be contributed on View creation with dimension set to (-1, -1).
In r7432 - Merge in trunk (0.9.0)
in some cases width == -1 and in other cases the height == -1 that's why the condition for height and widht fix has been modified to take in account : widht == -1 and height ==-1 widht == -1 and height != -1 widht != -1 and height == -1 commited on 0.8.X
Following Yann Tanguy comment => Patched in 0.9.0