A different fix for record crash, use pixfufs instead of canvas text in markers, use leftmost_frame instead of querying canvas coords when scrolling (speeds up canvas scrolling somewhat), remove old include, remove first_action_message and some other unused methods.

git-svn-id: svn://localhost/ardour2/branches/3.0@5108 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
Nick Mainsbridge 2009-05-21 17:30:45 +00:00
parent d1ee2a06ca
commit 882e3a690a
9 changed files with 113 additions and 99 deletions

View file

@ -824,3 +824,35 @@ possibly_translate_keyval_to_make_legal_accelerator (uint32_t& keyval)
return false;
}
inline guint8
convert_color_channel (guint8 src,
guint8 alpha)
{
return alpha ? ((guint (src) << 8) - src) / alpha : 0;
}
void
convert_bgra_to_rgba (guint8 const* src,
guint8* dst,
int width,
int height)
{
guint8 const* src_pixel = src;
guint8* dst_pixel = dst;
for (int y = 0; y < height; y++)
for (int x = 0; x < width; x++)
{
dst_pixel[0] = convert_color_channel (src_pixel[2],
src_pixel[3]);
dst_pixel[1] = convert_color_channel (src_pixel[1],
src_pixel[3]);
dst_pixel[2] = convert_color_channel (src_pixel[0],
src_pixel[3]);
dst_pixel[3] = src_pixel[3];
dst_pixel += 4;
src_pixel += 4;
}
}