diff options
author | Christian Tusche <chr13@gmx.net> | 2007-05-06 17:26:51 +0200 |
---|---|---|
committer | Thomas Günther <tom@toms-cafe.de> | 2009-06-04 00:56:47 +0200 |
commit | f6f140b2ea0bb1de9e055e920ef9c0c43c6e2add (patch) | |
tree | a5c927131e9c94b114bc659dd5d048a23926c95e /screen.c | |
parent | b32f1eaf9ae246f656ebd27c2fbb5d29d2bec34c (diff) | |
download | vdr-plugin-text2skin-f6f140b2ea0bb1de9e055e920ef9c0c43c6e2add.tar.gz vdr-plugin-text2skin-f6f140b2ea0bb1de9e055e920ef9c0c43c6e2add.tar.bz2 |
2007-05-06: Version 1.1-cvs_ext-0.10c (text2skin-1.1-cvs_ext-0.10c.diff)
- selective update of changed objects
refresh can be controlled for individual objects by the attributes
"refresh" and "changed"
default behaviour is to redraw everything (compatible with old skins)
Diffstat (limited to 'screen.c')
-rw-r--r-- | screen.c | 13 |
1 files changed, 12 insertions, 1 deletions
@@ -67,7 +67,10 @@ void cText2SkinScreen::DrawBitmap(int x, int y, const cBitmap &Bitmap, const tCo DrawBitmapOverlay(*mRegions[i], x, y, (cBitmap&)Bitmap, ColorMask); //mRegions[i]->DrawBitmap(x, y, Bitmap); #else - mOsd->DrawBitmap(x, y, Bitmap, ColorFg, ColorBg); + // mOsd->DrawBitmap(x, y, Bitmap, ColorFg, ColorBg); + cBitmap *bm = NULL; + for (int i = 0; (bm=mOsd->GetBitmap(i)) != NULL; ++i) + DrawBitmapOverlay(*bm, x, y, (cBitmap&)Bitmap, ColorMask); #endif } @@ -122,6 +125,14 @@ void cText2SkinScreen::Flush(void) mOsd->DrawBitmap(mRegions[i]->X0(), mRegions[i]->Y0(), *mRegions[i]); #endif } +#ifdef BENCH + int x1=0,y1=0,x2=0,y2=0; + cBitmap *bm; + for(int j=0; (bm=mOsd->GetBitmap(j)) != NULL; j++ ) + if(bm->Dirty(x1,y1,x2,y2)) + fprintf(stderr, "Flush dirty screen area %2i: x1=%3i x2=%3i y1=%3i y2=%3i\n", + j,x1,x2,y1,y2 ); +#endif if (!mOffScreen) mOsd->Flush(); } |