From 126814247176d662f9a965a249f0a3aefabe2603 Mon Sep 17 00:00:00 2001 From: Yoshihiro Yamazaki Date: Fri, 10 Feb 2012 20:06:55 +0900 Subject: [PATCH] list function add --- src/swf_button_condaction.h | 10 ++++++++++ src/swf_button_record.h | 27 ++++++++++++++++++--------- 2 files changed, 28 insertions(+), 9 deletions(-) diff --git a/src/swf_button_condaction.h b/src/swf_button_condaction.h index 56acc73..54227f0 100644 --- a/src/swf_button_condaction.h +++ b/src/swf_button_condaction.h @@ -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__ */ diff --git a/src/swf_button_record.h b/src/swf_button_record.h index 5913c93..73c8f45 100644 --- a/src/swf_button_record.h +++ b/src/swf_button_record.h @@ -13,26 +13,35 @@ 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__ */ -- 2.11.0