[umbrello] [Bug 446020] Bird's eye view shows nothing at first open

Robert Hairgrove bugzilla_noreply at kde.org
Mon Dec 27 13:53:58 GMT 2021


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

--- Comment #3 from Robert Hairgrove <code at roberthairgrove.com> ---
(In reply to Robert Hairgrove from comment #1)
>(...)  However, there is much more "bugginess" about the bird's eye view (and the
> drawing behavior in general) which needs to be looked at. For example, if I
> have added two new classes to an empty class diagram and move one of them,
> the other moves as well but in the opposite direction! There seems to be
> code somewhere causing the scene to always be centered ... is this by
> design? I would probably have to put widgets at the four corners of the
> virtual page to keep things in the middle area from wandering about on the
> screen when one of them is moved or resized. Takes a bit of getting used to.

In the class UMLScene, there is this slot: 
void UMLScene::slotObjectCreated(UMLObject* o)

At the end of the slot's method body, there is a call to the member function
    resizeSceneToItems();
which is implemented thus:

/**
 * Sets the size of the scene to just fit on all the items
 */
void UMLScene::resizeSceneToItems()
{
    // let QGraphicsScene handle scene size by itself
    setSceneRect(itemsBoundingRect());
}

Why is this necessary? It seems to be the cause of the behavior I described in
the above post in this thread. One would think that the scene should begin with
a default size (user-configurable, of course) which can expand if moving an
object would cross one of the boundaries, but certainly not shrink if it is
larger.

What happens is that on creation of the first widget in the scene, the bird's
eye view will fill up its available display area with a huge rendition of the
widget (much larger than 100%).

Try this:
Open a new class diagram, if one isn't already there;
Create a new class and give it a very short name (such as "A").
The bird's eye will remain blank until the main window is resized or the
splitter handle is dragged. Do that.
Observe the resulting display in the bird's eye view.

Is this intentional?

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


More information about the umbrello-devel mailing list