From 60b8b103315434484262e95677605baa13746af6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20Sundstr=C3=B6m?= Date: Fri, 15 Jun 2007 20:28:07 +0000 Subject: [PATCH] Draw icon with transparency. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21420 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/preferences/datatranslations/IconView.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/preferences/datatranslations/IconView.cpp b/src/preferences/datatranslations/IconView.cpp index 31a93ba0d3..e271936aff 100644 --- a/src/preferences/datatranslations/IconView.cpp +++ b/src/preferences/datatranslations/IconView.cpp @@ -25,7 +25,11 @@ IconView::IconView(const BRect &frame, const char *name, SetViewColor(ui_color(B_PANEL_BACKGROUND_COLOR)); +#if __HAIKU__ + fIconBitmap = new BBitmap(BRect(0, 0, B_LARGE_ICON - 1, B_LARGE_ICON - 1), B_RGBA32); +#else fIconBitmap = new BBitmap(BRect(0, 0, B_LARGE_ICON - 1, B_LARGE_ICON - 1), B_CMAP8); +#endif } IconView::~IconView() @@ -65,7 +69,15 @@ IconView::DrawIcon(bool draw) void IconView::Draw(BRect area) { +#if __HAIKU__ + SetDrawingMode(B_OP_ALPHA); + SetBlendingMode(B_PIXEL_ALPHA, B_ALPHA_OVERLAY); +#else + SetDrawingMode(B_OP_OVER); +#endif if (fDrawIcon) DrawBitmap(fIconBitmap); + + SetDrawingMode(B_OP_COPY); }