2 Copyright © 1995-2008, The AROS Development Team. All rights reserved.
5 Desc: Graphics function EraseRect()
8 #include <aros/debug.h>
9 #include "graphics_intern.h"
10 #include <graphics/rastport.h>
11 #include <aros/asmcall.h>
12 #include <utility/hooks.h>
13 #include <proto/oop.h>
14 #include <proto/layers.h>
15 #include "gfxfuncsupport.h"
17 #define LayersBase (struct LayersBase *)(GfxBase->gb_LayersBase)
19 /*****************************************************************************
22 #include <graphics/rastport.h>
23 #include <proto/graphics.h>
25 AROS_LH5(void, EraseRect
,
28 AROS_LHA(struct RastPort
*, rp
, A1
),
29 AROS_LHA(LONG
, xMin
, D0
),
30 AROS_LHA(LONG
, yMin
, D1
),
31 AROS_LHA(LONG
, xMax
, D2
),
32 AROS_LHA(LONG
, yMax
, D3
),
35 struct GfxBase
*, GfxBase
, 135, Graphics
)
38 Fill a rectangular area with the current BackFill hook.
39 If layered the BackFill hook is used.
40 If non-layered the region is cleared.
43 rp - destination RastPort
44 xMin,yMin - upper left corner
45 xMax,YMax - lower right corner
60 29-10-95 digulla automatically created from
61 graphics_lib.fd and clib/graphics_protos.h
63 *****************************************************************************/
68 struct Hook
*h
= LAYERS_BACKFILL
;
71 rp
->DrawMode
^= INVERSVID
;
72 RectFill(rp
, xMin
, yMin
, xMax
, yMax
);
73 rp
->DrawMode
^= INVERSVID
;
89 LockLayerRom(rp
->Layer
);
90 h
= rp
->Layer
->BackFill
;
93 DoHookClipRects(h
, rp
, &r
);
97 UnlockLayerRom(rp
->Layer
);
100 ReturnVoid("EraseRect");
106 /****************************************************************************************/
110 /****************************************************************************************/