mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-21 06:06:25 +01:00
the real fix for fastmeter - the rect that should show the pixbuf didn't have its origin reset before computing the intersection with the expose rect
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@2884 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
0ea547b951
commit
55f6a421cb
2 changed files with 10 additions and 5 deletions
|
|
@ -353,7 +353,12 @@ FastMeter::vertical_expose (GdkEventExpose* ev)
|
|||
GdkRectangle background;
|
||||
|
||||
top_of_meter = (gint) floor (pixheight * current_level);
|
||||
|
||||
/* reset the height & origin of the rect that needs to show the pixbuf
|
||||
*/
|
||||
|
||||
pixrect.height = top_of_meter;
|
||||
pixrect.y = pixheight - top_of_meter;
|
||||
|
||||
background.x = 0;
|
||||
background.y = 0;
|
||||
|
|
@ -365,13 +370,13 @@ FastMeter::vertical_expose (GdkEventExpose* ev)
|
|||
intersection.x, intersection.y,
|
||||
intersection.width, intersection.height);
|
||||
}
|
||||
|
||||
|
||||
if (gdk_rectangle_intersect (&pixrect, &ev->area, &intersection)) {
|
||||
// draw the part of the meter image that we need. the area we draw is bounded "in reverse" (top->bottom)
|
||||
get_window()->draw_pixbuf(get_style()->get_fg_gc(get_state()), pixbuf,
|
||||
intersection.x, pixheight - top_of_meter,
|
||||
intersection.x, pixheight - top_of_meter,
|
||||
intersection.width, pixrect.height,
|
||||
intersection.x, intersection.y,
|
||||
intersection.x, intersection.y,
|
||||
intersection.width, intersection.height,
|
||||
Gdk::RGB_DITHER_NONE, 0, 0);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#ifndef __ardour_svn_revision_h__
|
||||
#define __ardour_svn_revision_h__
|
||||
static const char* ardour_svn_revision = "2878";
|
||||
static const char* ardour_svn_revision = "2882";
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue