DisplayDriver::DrawBitmap() takes no more region, the clipping is expected to be already set, as with all other drawing functions. Moved bitmap drawing message dispatching in the drawing messages area, where the correct clipping is set too. Moved cases for messages that don't need clipping applied, ie which don't draw anything, into the normal dispatch function. This means SetHighColor() and so on will no longer rebuild the clipping in Painter. Would be interesting to know how much performance this had cost...

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12741 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Stephan Aßmus
2005-05-20 00:09:59 +00:00
parent 746d7f54e5
commit 9962b67e5f
5 changed files with 237 additions and 260 deletions
+1 -2
View File
@@ -130,8 +130,7 @@ class DisplayDriver {
virtual void InvertRect( const BRect &r) = 0;
virtual void DrawBitmap( BRegion *region,
ServerBitmap *bitmap,
virtual void DrawBitmap( ServerBitmap *bitmap,
const BRect &source,
const BRect &dest,
const DrawData *d) = 0;