[umbrello] [Bug 424863] Feature request: Enable wrapping of long lines in use cases and parameter lists of operations

Robert Hairgrove bugzilla_noreply at kde.org
Sun Aug 2 13:41:15 BST 2020


https://bugs.kde.org/show_bug.cgi?id=424863

--- Comment #3 from Robert Hairgrove <code at roberthairgrove.com> ---
After looking at the source code some more, I think it might be fairly easy to
support wrapping, at least in use case widgets. The call to the overloaded
drawText() function can take a rectangle and a set of flags, one of which can
be Qt::TextWordWrap.

However, getting the rectangle might be the tricky part because it appears that
the widget is resized by some code before paint() is called. Ideally, the
rectangle used by the paint() function should be whatever the user has done
with the mouse, possibly after fetching a new bounding rectangle.

Sadly, newline characters (hard breaks) are not supported natively by QPainter,
and I have no idea if this can be done.

Would it be enough to uncheck the "Auto-Resize" option and trust the height()
and width() values returned by the base UMLWidget class? Then one could fetch a
bounding rectangle which would be used to draw the text (see example in the Qt
help docs for QPainter).

It is also very necessary for function parameter lists (see attachment).

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the umbrello-devel mailing list