author | alwin <alwin> | 2004-04-21 10:47:31 (UTC) |
---|---|---|
committer | alwin <alwin> | 2004-04-21 10:47:31 (UTC) |
commit | 6902a2e25e93f2c2d472b89a35e19668dffd4866 (patch) (unidiff) | |
tree | 7512cf17ca49b420dd4e6c9758fcc846b5e8cd1a /libopie2 | |
parent | f4ab243362a9b93f17e92bbf3189324f66c8f686 (diff) | |
download | opie-6902a2e25e93f2c2d472b89a35e19668dffd4866.zip opie-6902a2e25e93f2c2d472b89a35e19668dffd4866.tar.gz opie-6902a2e25e93f2c2d472b89a35e19668dffd4866.tar.bz2 |
improved painting, eg., when clip area is outside image we must not
paint the image of course....
-rw-r--r-- | libopie2/opiemm/oimagescrollview.cpp | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/libopie2/opiemm/oimagescrollview.cpp b/libopie2/opiemm/oimagescrollview.cpp index a8165a4..73df3ff 100644 --- a/libopie2/opiemm/oimagescrollview.cpp +++ b/libopie2/opiemm/oimagescrollview.cpp | |||
@@ -446,2 +446,3 @@ void OImageScrollView::drawContents(QPainter * p, int clipx, int clipy, int clip | |||
446 | } | 446 | } |
447 | |||
447 | if (w>_pdata.width()) { | 448 | if (w>_pdata.width()) { |
@@ -453,2 +454,3 @@ void OImageScrollView::drawContents(QPainter * p, int clipx, int clipy, int clip | |||
453 | } | 454 | } |
455 | |||
454 | if (h>_pdata.height()) { | 456 | if (h>_pdata.height()) { |
@@ -460,6 +462,19 @@ void OImageScrollView::drawContents(QPainter * p, int clipx, int clipy, int clip | |||
460 | } | 462 | } |
461 | if (erase||_original_data.hasAlphaBuffer()) { | 463 | |
464 | if (erase||_original_data.hasAlphaBuffer()||clipy>_pdata.height()||clipx>_pdata.width()) { | ||
465 | odebug << QSize(clipx,clipy) << " # " << QSize(clipw,cliph) << oendl; | ||
462 | p->fillRect(clipx,clipy,clipw,cliph, backgroundColor()); | 466 | p->fillRect(clipx,clipy,clipw,cliph, backgroundColor()); |
463 | } | 467 | } |
464 | p->drawPixmap(clipx,clipy,_pdata,x,y,w,h); | 468 | odebug << QSize(x,y) << " - " << QSize(w,h) << oendl; |
469 | if (clipy<=_pdata.height()&&clipx<=_pdata.width()) { | ||
470 | #if 0 | ||
471 | odebug << "painting image content" << oendl; | ||
472 | #endif | ||
473 | p->drawPixmap(clipx,clipy,_pdata,x,y,w,h); | ||
474 | } | ||
475 | #if 0 | ||
476 | else { | ||
477 | odebug << "not painting image content" << oendl; | ||
478 | } | ||
479 | #endif | ||
465 | } | 480 | } |