OSDN Git Service

list function add
authorYoshihiro Yamazaki <yoya@awm.jp>
Fri, 10 Feb 2012 11:06:55 +0000 (20:06 +0900)
committerYoshihiro Yamazaki <yoya@awm.jp>
Fri, 10 Feb 2012 11:06:55 +0000 (20:06 +0900)
src/swf_button_condaction.h
src/swf_button_record.h

index 56acc73..54227f0 100644 (file)
@@ -27,9 +27,19 @@ typedef struct swf_button_condaction_ {
 
 } swf_button_condaction_t;
 
+typedef struct swf_button_condaction_list_ {
+    swf_button_condaction_t *head;
+} swf_button_condaction_list_t;
+
 extern int swf_button_condaction_parse(bitstream_t *bs, swf_button_condaction_t *button_condaction);
 extern int swf_button_condaction_build(bitstream_t *bs, swf_button_condaction_t *button_condaction);
 extern int swf_button_condaction_print(swf_button_condaction_t *button_condaction, int indent_depth);
 extern void swf_button_condaction_destroy(swf_button_condaction_t *button_condaction);
 
+extern swf_button_condaction_list_t *swf_button_condaction_list_create(void);
+extern int swf_button_condaction_list_parse(bitstream_t *bs, swf_button_condaction_list_t *button_condaction_list);
+extern int swf_button_condaction_list_build(bitstream_t *bs, swf_button_condaction_list_t *button_condaction_list);
+extern int swf_button_condaction_list_print(swf_button_condaction_list_t *button_condaction_list, int indent_depth);
+extern void swf_button_condaction_list_destroy(swf_button_condaction_list_t *button_condaction_list);
+
 #endif /* __SWF_BUTTON_CONDACTION_H__ */
index 5913c93..73c8f45 100644 (file)
 typedef struct swf_button_record_ {
     // char align;
     int button_has_blend_mode ;
-    char button_has_filter_list : 1;
-    char buttun_state_hit_test : 1;
-    char button_state_down : 1;
-    char button_state_over : 1;
-    char button_state_up : 1;
+    unsigned char button_has_filter_list : 1;
+    unsigned char button_state_hittest : 1;
+    unsigned char button_state_down : 1;
+    unsigned char button_state_over : 1;
+    unsigned char button_state_up : 1;
     int character_id;
     int place_depth;
-    swf_matrix_t *place_matrix;
-    swf_cxformwithalpha_t *cxform_with_alpha;
-
-
+    swf_matrix_t place_matrix;
+    swf_cxformwithalpha_t color_transform;
 // not implemented yet. (swf 8 later only)
 //    swf_filterlist_t *filter_list;
 //    int blend_mode;
+    struct swf_button_record_ *next;
 } swf_button_record_t;
 
+typedef struct swf_button_record_list_ {
+    swf_button_record_t *head, *tail;
+} swf_button_record_list_t;
+
 extern int swf_button_record_parse(bitstream_t *bs, swf_button_record_t *button_record);
 extern int swf_button_record_build(bitstream_t *bs, swf_button_record_t *button_record);
 extern void swf_button_record_destroy(swf_button_record_t *button_record);
 extern int swf_button_record_print(swf_button_record_t *button_record, int indent_depth);
 
+extern swf_button_record_list_t *swf_button_record_list_create(void);
+extern int swf_button_record_list_parse(bitstream_t *bs, swf_button_record_list_t *button_record_list);
+extern int swf_button_record_list_build(bitstream_t *bs, swf_button_record_list_t *button_record_list_);
+extern void swf_button_record_list_destroy(swf_button_record_list_t *button_record_list);
+extern int swf_button_record_list_print(swf_button_record_list_t *button_record_list, int indent_depth_list);
+
 #endif /* __SWF_BUTTON_RECORD_H__ */