On 12 September 2011 19:43, D. Michael McIntyre
<michael.mcint...@rosegardenmusic.com> wrote:
> +    m_segmentsDrawBuffer = m_segmentsDrawBuffer.copy(0, 0, w, h);
> +    m_artifactsDrawBuffer = m_artifactsDrawBuffer.copy(0, 0, w, h);

I get the same result as you (with Qt 4.7.3) -- this doesn't seem to
be working as expected.

I can't see anything wrong with the implementation of QPixmap::copy()
which would cause this, though admittedly I've just realised the
source I'm looking at is from (yet another) different version of Qt.

Anyway: in this case the pixmaps are both drawing caches which are
completely redrawn after being resized.  We don't need to retain their
old contents (if we did, scaled() wouldn't work either -- it stretches
the image contents).

So this should work, and does in fact work for me when testing in trunk:

--- src/gui/editors/segment/compositionview/CompositionView.cpp (revision 12428)
+++ src/gui/editors/segment/compositionview/CompositionView.cpp (working copy)
@@ -492,8 +492,9 @@
     int w = std::max(m_segmentsDrawBuffer.width(), visibleWidth());
     int h = std::max(m_segmentsDrawBuffer.height(), visibleHeight());

-    m_segmentsDrawBuffer.resize(w, h);
-    m_artifactsDrawBuffer.resize(w, h);
+    m_segmentsDrawBuffer = QPixmap(w, h);
+    m_artifactsDrawBuffer = QPixmap(w, h);
+
     slotAllDrawBuffersNeedRefresh();

     RG_DEBUG << "CompositionView::resizeEvent() : drawBuffer size = "
<< m_segmentsDrawBuffer.size() << endl;


Chris

------------------------------------------------------------------------------
Doing More with Less: The Next Generation Virtual Desktop 
What are the key obstacles that have prevented many mid-market businesses
from deploying virtual desktops?   How do next-generation virtual desktops
provide companies an easier-to-deploy, easier-to-manage and more affordable
virtual desktop model.http://www.accelacomm.com/jaw/sfnl/114/51426474/
_______________________________________________
Rosegarden-devel mailing list
Rosegarden-devel@lists.sourceforge.net - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Reply via email to