2 Copyright © 1995-2007, The AROS Development Team. All rights reserved.
5 Desc: Graphics function SyncSBitMap()
8 #include <graphics/layers.h>
9 #include <graphics/clip.h>
10 #include "graphics_intern.h"
12 /*****************************************************************************
15 #include <proto/graphics.h>
17 AROS_LH1(void, SyncSBitMap
,
20 AROS_LHA(struct Layer
*, l
, A0
),
23 struct GfxBase
*, GfxBase
, 74, Graphics
)
26 If the layer has a superbitmap all the parts that are visible will
27 be copied into the superbitmap. This is usually not done except when
28 parts of a superbitmapped layer become hidden the visible parts are
29 stored into the superbitmap.
32 l - pointer to superbitmapped layer
35 The superbitmap will be synchronized with the visible part. The
36 superbitmap attached to the layer will be up-to-date with what's
52 *****************************************************************************/
56 struct ClipRect
* CR
= l
->ClipRect
;
58 if (NULL
== l
->SuperBitMap
|| (l
->Flags
& LAYERSUPER
) == 0)
63 /* a cliprect of a superbitmapped layer is visible if lobs==NULL*/
66 /* I have to backup this part into the SuperBitMap! I find the
67 data in the bitmap of the rastport of this layer */
68 BltBitMap(l
->rp
->BitMap
,
72 CR
->bounds
.MinX
- l
->bounds
.MinX
- l
->Scroll_X
,
73 CR
->bounds
.MinY
- l
->bounds
.MinY
- l
->Scroll_Y
,
74 CR
->bounds
.MaxX
- CR
->bounds
.MinX
+ 1,
75 CR
->bounds
.MaxY
- CR
->bounds
.MinY
+ 1,