1 /* placeobject.h
2  *
3  * $Id$
4  *
5  * Notice: This header file contains declarations of functions and types that
6  * are just used internally. All library functions and types that are supposed
7  * to be publicly accessable are defined in ./src/ming.h.
8  */
9 
10 #ifndef SWF_PLACEOBJECT_H_INCLUDED
11 #define SWF_PLACEOBJECT_H_INCLUDED
12 
13 #include "ming.h"
14 
15 typedef struct SWFPlaceObject2Block_s *SWFPlaceObject2Block;
16 
17 #define SWF_PLACE_HAS_ACTIONS     (1<<7)
18 #define SWF_PLACE_HAS_MASK        (1<<6)
19 #define SWF_PLACE_HAS_NAME        (1<<5)
20 #define SWF_PLACE_HAS_RATIO       (1<<4)
21 #define SWF_PLACE_HAS_CXFORM      (1<<3)
22 #define SWF_PLACE_HAS_MATRIX      (1<<2)
23 #define SWF_PLACE_HAS_CHARACTER   (1<<1)
24 #define SWF_PLACE_MOVE            (1<<0)
25 
26 #define SWF_PLACE_CACHE           (1<<2)
27 #define SWF_PLACE_HAS_BLEND       (1<<1)
28 #define SWF_PLACE_HAS_FILTER      (1<<0)
29 
30 SWFPlaceObject2Block newSWFPlaceObject2Block(int depth);
31 
32 void SWFPlaceObject2Block_setName(SWFPlaceObject2Block block,
33 				  const char *name);
34 
35 void SWFPlaceObject2Block_setRatio(SWFPlaceObject2Block block, int ratio);
36 
37 void SWFPlaceObject2Block_setDepth(SWFPlaceObject2Block block, int depth);
38 
39 void SWFPlaceObject2Block_setMaskLevel(SWFPlaceObject2Block block,
40 				       int masklevel);
41 
42 void SWFPlaceObject2Block_setCXform(SWFPlaceObject2Block block,
43 				    SWFCXform cXform);
44 
45 void SWFPlaceObject2Block_setColorAdd(SWFPlaceObject2Block block,
46 				      int r, int g, int b, int a);
47 
48 void SWFPlaceObject2Block_setColorMult(SWFPlaceObject2Block block,
49 				       float r, float g, float b, float a);
50 
51 void SWFPlaceObject2Block_setMatrix(SWFPlaceObject2Block block,
52 				    SWFMatrix matrix);
53 
54 void SWFPlaceObject2Block_setCharacter(SWFPlaceObject2Block block,
55 				       SWFCharacter character);
56 
57 void SWFPlaceObject2Block_setMove(SWFPlaceObject2Block block);
58 
59 void SWFPlaceObject2Block_addFilter(SWFPlaceObject2Block block, SWFFilter filter);
60 
61 void
62 SWFPlaceObject2Block_setBlendMode(SWFPlaceObject2Block block, int mode);
63 
64 void
65 SWFPlaceObject2Block_setCacheFlag(SWFPlaceObject2Block block, int flag);
66 #define SWF_PLACEACTION_ONLOAD      (1<<0)
67 #define SWF_PLACEACTION_ENTERFRAME  (1<<1)
68 #define SWF_PLACEACTION_UNLOAD      (1<<2)
69 #define SWF_PLACEACTION_MOUSEMOVE   (1<<3)
70 #define SWF_PLACEACTION_MOUSEDOWN   (1<<4)
71 #define SWF_PLACEACTION_MOUSEUP     (1<<5)
72 #define SWF_PLACEACTION_KEYDOWN     (1<<6)
73 #define SWF_PLACEACTION_KEYUP       (1<<7)
74 #define SWF_PLACEACTION_DATA        (1<<8)
75 
76 void SWFPlaceObject2Block_addAction(SWFPlaceObject2Block block,
77 				    SWFAction action, int flags);
78 
79 void
80 destroySWFPlaceObject2Block(SWFPlaceObject2Block place);
81 #endif /* SWF_PLACEOBJECT_H_INCLUDED */
82