I'm trying to draw the ttGlyphClosed element of Explorer::Treeview class in right to left direction (like when the BiDiMode would be bdLeftToRight). I have a problem, that I don't know how to make my offscreen bitmap to be transparent. The bitmap's background is always white.
I'm using the following code to mirror the image:
procedure TForm5.FormPaint(Sender: TObject);
var
  bm: TBitmap;
  ARect: TRect;
  Details: TThemedElementDetails;
begin    
  if ExplorerTreeviewhTheme = 0 then
    ExplorerTreeviewhTheme := OpenThemeData(0, 'Explorer::Treeview');
  ARect := Rect(20, 20, 40, 40);
  Details := ThemeServices.GetElementDetails(ttGlyphClosed);
  DrawThemeBackground(ExplorerTreeviewhTheme, Canvas.Handle,
    Details.Part, Details.State, ARect, nil); //Ok
  bm := TBitmap.Create;
  try
    bm.Width := 20;
    bm.Height := 20;
    ARect := Rect(00, 00, 20, 20);
    DrawThemeBackground(ExplorerTreeviewhTheme, bm.Canvas.Handle,
      Details.Part, Details.State, ARect, nil);
    // rendered result has white background
    Canvas.Draw(60, 10, bm);    
    // rendered result is mirrored but has also white background
    StretchBlt(Canvas.Handle, 100, 10, -20, 20, bm.Canvas.Handle, 0, 0, 20, 20, SRCCOPY);
  finally
    bm.Free;
  end;    
end;
The question is how to mirror element drawn by the DrawThemeBackground function (for RTL reading) or how to use this function for RTL (right to left) rendering ?
