Skip to main content



      Home
Home » Modeling » Graphiti » label for a shape
label for a shape [message #633649] Mon, 18 October 2010 12:33 Go to next message
Eclipse UserFriend
Hi all,

I'd like to attach a label to a shape. Is it necessary to have that
included in the visible area of the top level shape of this PE?

Or can I attach a label without being clipped away also outside this area?

Thanks,
Henrik
Re: label for a shape [message #633742 is a reply to message #633649] Tue, 19 October 2010 04:18 Go to previous messageGo to next message
Eclipse UserFriend
Hi Henrik,

I am not sure what "attach a label to a shape" means.

Do you want attach a shape (with a text graphics algorithm) to another shape? In the same way as you can do it with ConnectionDecorators and Connections?

BR,
Matthias

Re: label for a shape [message #633770 is a reply to message #633742] Tue, 19 October 2010 07:21 Go to previous messageGo to next message
Eclipse UserFriend
Hi Matthias,

I think it should be similar to a connection label, though not movable
by the user.

Regards,
Henrik

Am 19.10.2010 10:18, schrieb Matthias Gorning:
> Hi Henrik,
>
> I am not sure what "attach a label to a shape" means.
>
> Do you want attach a shape (with a text graphics algorithm) to another
> shape? In the same way as you can do it with ConnectionDecorators and
> Connections?
>
> BR,
> Matthias
>
>
Re: label for a shape [message #634035 is a reply to message #633770] Wed, 20 October 2010 06:34 Go to previous messageGo to next message
Eclipse UserFriend
I can restate my question to:

At the moment I create an invisible rect which in turn contains my
actual figure plus a label. Both must be completely contained in the
invisible rect to be visible.

How can I have the label outside the top level GA (the invisible rect)
of my figure?

Thanks,
Henrik


Am 19.10.2010 13:21, schrieb Henrik Rentz-Reichert:
> Hi Matthias,
>
> I think it should be similar to a connection label, though not movable
> by the user.
>
> Regards,
> Henrik
>
> Am 19.10.2010 10:18, schrieb Matthias Gorning:
>> Hi Henrik,
>>
>> I am not sure what "attach a label to a shape" means.
>>
>> Do you want attach a shape (with a text graphics algorithm) to another
>> shape? In the same way as you can do it with ConnectionDecorators and
>> Connections?
>>
>> BR,
>> Matthias
>>
>>
Re: label for a shape [message #634347 is a reply to message #634035] Thu, 21 October 2010 07:21 Go to previous messageGo to next message
Eclipse UserFriend
Hallo,

I'm also interested in a solution to this problem.

Maybe a generalized class like ShapeDecorator implemented in the same way as the existing ConnectionDecorator would be a good solution?

We're currently also using an invisible rectangle as container:

   Invisible rectangle
  .-------------------.
  |      ,,---..      |
  |    ,'       `.    |
  |   /           \   |
  |   |Node shape |   |
  |   \           '   |
  |    `._     _,'    |
  |       `---'       |
  | This is a label.  |
  `-------------------'


A problem of this approach is, that the label size is always
bounded by the size of the outer invisible rectangle.
Another problem is concurrent movement/resizing of the node shape and the label. We've overriden IToolBehaviorProvider.getSelection(...) to always select the invisible rectangle that circumvents the latter problem.

A ShapeDecorator could decouple the node shape and the label and therefore eliminate movement and resizing issues.

Best regards,

Ken Wenzel
Re: label for a shape [message #634384 is a reply to message #633649] Thu, 21 October 2010 09:57 Go to previous messageGo to next message
Eclipse UserFriend
Hi,

currently, there is no way showing something outside
the invisible container, the childs get clipped.

You could adopt the size of the invisible container in your
Layout Feature depending on the size required by its childs.

Does it solve the problem?

@Ken: sounds good...if you have concrete ideas how this could work you might open a bugzilla entry proposing a contribution.

Best, Tim

[Updated on: Thu, 21 October 2010 10:21] by Moderator

Re: label for a shape [message #634609 is a reply to message #634384] Fri, 22 October 2010 08:39 Go to previous messageGo to next message
Eclipse UserFriend
Hallo,

Quote:

You could adopt the size of the invisible container in your
Layout Feature depending on the size required by its childs.


We do the other way round. The user is only allowed to resize the invisible shape that is later used to recalculate the sizes of its children accordingly.
Unfortunately, this leads to the problem that the height of a multi-line text cannot be correctly computed by a layout feature since it would have to know if the text
will be wrapped or not.

Giving the user the abililty to resize/move the node shape would require specialized resize and move features. Another problem with this approach would be the mentioned clipping of children if e.g. a child is resized/moved beyond the bounds of its parent.

Quote:

@Ken: sounds good...if you have concrete ideas how this could work you might open a bugzilla entry proposing a contribution.


I don't know how much work would be required to implement such a feature. Would it be possible to refactor the interface ConnectionDecorator into a generic one like PictogramElementDecorator?

Best regards,
Ken

[Updated on: Sat, 23 October 2010 06:35] by Moderator

Re: label for a shape [message #634996 is a reply to message #633649] Mon, 25 October 2010 07:24 Go to previous message
Eclipse UserFriend
Hi,

it is fine to use the resize on the invisible container only.
Still it might be possible to precalculate if the text needs to be wrapped and how much space it will take. Then you may answer true/false depending on the above results in the canResize method of the Resize Feature.

Also you might be interested in
GraphitiUi.getUiLayoutService().calculateTextSize()


Regarding your proposal, i think the interfaces are one side and your proposal sounds sensible but the real complications lie in the implementation of the rendering engine...that is,how would the new concept be mapped to GEF/Draw2d....i am reluctant to say how much work it would be...it would require a deep dive at least. If you really see a lot of added value in such a feature please open a bugzilla entry with type "enhancement request".

Best regards, Tim

[Updated on: Mon, 25 October 2010 07:24] by Moderator

Previous Topic:Rendering decorators for connections
Next Topic:Adding an action to context menu
Goto Forum:
  


Current Time: Wed Jul 23 22:02:30 EDT 2025

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

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

Back to the top