David! ... definitely you are a crack!<br> <br> Now not only solve the problem with the background, also all the mistakes that had with the Painter.<br><br>The changes already made and now we can make the merge!<br><br><div style="text-align: left;" id="result_box" dir="ltr">
As always, the latest screenshots are on page: <a href="http://clam-project.org/wiki/Development_screenshots">http://clam-project.org/wiki/Development_screenshots</a><br><br></div>Best regards,<br><br clear="all">~ Angelo Scorza ~<br>
"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.<br>
<br><br><div class="gmail_quote">2009/7/25 David García Garzón <span dir="ltr"><<a href="mailto:david.garcia@upf.edu">david.garcia@upf.edu</a>></span><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Angelo, i found the last bug to be fixed before the merge. We were blocking QGV<br>
behaviour as we suspected, but not just for a single event but for any event.<br>
<br>
When we changed the widget inheritance from QWidget to QGraphicsView we forgot<br>
to update some Super-like calls we did in NetCanvas::event() method. Instead<br>
of calling QNetworkCanvas::event, we still called QWidget::event so any event<br>
was redirected ignoring QGV overrides. That bug explains most of the QGV<br>
polstergeists we found during the migration including failing experiments that<br>
forced us to do some nasty kludges. After changing that, the paint function is<br>
called just once, the frame is drawn again, the movement stops flickering and<br>
all seems faster and shiny...<br>
<br>
Still the embeded widgets are missplaced when the container processings are<br>
out of the view. This is because QGV don't redraw the boxes of the items that<br>
are outside and the box draw is the function which places the embeded widget.<br>
We could fix that by replacing them outside the items painting but we can wait<br>
until the merge, and then just port the embeded widgets to QGWidgetProxy.<br>
<br>
So, fix those two bugs, (setting the viewport background and calling<br>
QGV::event) and we are ready for the merge. :-)<br>
<br>
<br>
A Divendres, 24 de juliol de 2009 19:17:15, David García Garzón va escriure:<br>
> Angelo, i guess i found a solution to the QGV childs' background issue.<br>
> Just setting the setStylesheet("background-color: transparent") to the<br>
> viewport() instead of the QGraphicsView. Being the menus, embeded widgets,<br>
> scrollbars... childs of the QGV they inherit the transparent background<br>
> color even being toplevel widgets. If we set the background of the viewport<br>
> instead, we get the intended effect (let the background as it was) but the<br>
> other child widgets are kept ok.<br>
><br>
> I didn't commit because i am working on a newer version of Qt, and maybe it<br>
> doesn't work for yours, so, please test it on your version and commit it<br>
> yourself when you are done.<br>
<font color="#888888"><br>
--<br>
David García Garzón<br>
(Work) dgarcia at iua dot upf anotherdot edu<br>
<a href="http://www.iua.upf.edu/%7Edgarcia" target="_blank">http://www.iua.upf.edu/~dgarcia</a><br>
</font></blockquote></div><br>