2 Copyright © 1995-2011, The AROS Development Team. All rights reserved.
8 #include <aros/libcall.h>
9 #include <graphics/clip.h>
10 #include <graphics/layers.h>
11 #include <utility/tagitem.h>
13 #include "layers_intern.h"
14 #include "basicfuncs.h"
16 /*****************************************************************************
19 #include <proto/layers.h>
20 AROS_LH9(struct Layer
*, CreateBehindHookLayer
,
23 AROS_LHA(struct Layer_Info
*, li
, A0
),
24 AROS_LHA(struct BitMap
*, bm
, A1
),
25 AROS_LHA(LONG
, x0
, D0
),
26 AROS_LHA(LONG
, y0
, D1
),
27 AROS_LHA(LONG
, x1
, D2
),
28 AROS_LHA(LONG
, y1
, D3
),
29 AROS_LHA(LONG
, flags
, D4
),
30 AROS_LHA(struct Hook
*, hook
, A3
),
31 AROS_LHA(struct BitMap
*, bm2
, A2
),
34 struct LayersBase
*, LayersBase
, 32, Layers
)
37 Create a new layer at the given position and with the
38 given size. The new layer will be in front of all other
39 layers. If it is a backdrop layer it will be created
40 in front of all other backdrop layers and behind all
42 Install the given hook as a backfill hook. This hook will
43 be called whenever a part of the layer is supposed to be
44 filled with a certain pattern. The backfill hook has to
46 If a super bitmap layer is wanted the flags LAYERSUPER and
47 the flag LAYERSMART have to be set and a pointer to a
48 bitmap must also be passed to this function.
51 li - pointer to LayerInfo structure
52 bm - pointer to common bitmap
53 x0, y0- upper left corner of the layer
54 x1, y1- lower right corner of the layer
55 flags - choose the type of layer by setting some flags
56 hook - pointer to the backfill hook of this layer
57 The backfill hook will be called with
58 object = (struct RastPort *) result->RastPort
59 and message = [ (struct Layer *) layer,
60 (struct Rectangle) bounds,
63 bm2 - pointer to optional super bitmap.
66 Pointer to the newly created layer. NULL if layer could not be
67 created (Probably out of memory).
70 Does not allow to create layers that are partially outside
71 the given bitmap (, yet).
82 27-11-96 digulla automatically created from
83 layers_lib.fd and clib/layers_protos.h
85 *****************************************************************************/
89 return CreateBehindLayerTags(li
, bm
, x0
, y0
, x1
, y1
, flags
,
90 LA_BackfillHook
, hook
,
95 } /* CreateBehindHookLayer */