[Clam-devel] QPainter bug also found! (was: QGV canvas bug resolved?)

Angelo A.S. alfscorza at gmail.com
Mon Jul 27 07:40:38 PDT 2009


David! ... definitely you are a crack!

Now not only solve the problem with the background, also all the mistakes
that had with the Painter.

The changes already made and now we can make the merge!

As always, the latest screenshots are on page:
http://clam-project.org/wiki/Development_screenshots

Best regards,

~ Angelo Scorza ~
"El que no posee el don de maravillarse ni de entusiasmarse más le valdría
estar muerto, porque sus ojos están cerrados." A. Einstein.


2009/7/25 David García Garzón <david.garcia at upf.edu>

> Angelo, i found the last bug to be fixed before the merge. We were blocking
> QGV
> behaviour as we suspected, but not just for a single event but for any
> event.
>
> When we changed the widget inheritance from QWidget to QGraphicsView we
> forgot
> to update some Super-like calls we did in NetCanvas::event() method.
> Instead
> of calling QNetworkCanvas::event, we still called QWidget::event so any
> event
> was redirected ignoring QGV overrides. That bug explains most of the QGV
> polstergeists we found during the migration including failing experiments
> that
> forced us to do some nasty kludges. After changing that, the paint function
> is
> called just once, the frame is drawn again, the movement stops flickering
> and
> all seems faster and shiny...
>
> Still the embeded widgets are missplaced when the container processings are
> out of the view. This is because QGV don't redraw the boxes of the items
> that
> are outside and the box draw is the function which places the embeded
> widget.
> We could fix that by replacing them outside the items painting but we can
> wait
> until the merge, and then just port the embeded widgets to QGWidgetProxy.
>
> So, fix those two bugs, (setting the viewport background and calling
> QGV::event) and we are ready for the merge. :-)
>
>
> A Divendres, 24 de juliol de 2009 19:17:15, David García Garzón va
> escriure:
> > Angelo, i guess i found a solution to the QGV childs' background issue.
> > Just setting the setStylesheet("background-color: transparent") to the
> > viewport() instead of the QGraphicsView. Being the menus, embeded
> widgets,
> > scrollbars... childs of the QGV they inherit the transparent background
> > color even being toplevel widgets. If we set the background of the
> viewport
> > instead, we get the intended effect (let the background as it was) but
> the
> > other child widgets are kept ok.
> >
> > I didn't commit because i am working on a newer version of Qt, and maybe
> it
> > doesn't work for yours, so, please test it on your version and commit it
> > yourself when you are done.
>
> --
> David García Garzón
> (Work) dgarcia at iua dot upf anotherdot edu
> http://www.iua.upf.edu/~dgarcia <http://www.iua.upf.edu/%7Edgarcia>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.clam-project.org/pipermail/clam-devel-clam-project.org/attachments/20090727/1c741d76/attachment-0003.htm>


More information about the clam-devel mailing list