X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Fas3%2Fabc.c;h=5c9b87b51d95a3880cf95ec70871ae21d4088d60;hb=70080bc309ba2a414647d27e2f413f22bc7823e4;hp=a40f4e2fb3c0a9bd98d6aeb082afc612b77385ac;hpb=c4d4ec5ee1d20578b00c371180b7780d14e4cf8f;p=swftools.git diff --git a/lib/as3/abc.c b/lib/as3/abc.c index a40f4e2..5c9b87b 100644 --- a/lib/as3/abc.c +++ b/lib/as3/abc.c @@ -264,14 +264,15 @@ abc_method_body_t* abc_class_method(abc_class_t*cls, multiname_t*returntype, cha return c; } -void abc_AddSlot(abc_class_t*cls, char*name, int slot, char*type) +trait_t* abc_class_slot(abc_class_t*cls, char*name, multiname_t*type) { abc_file_t*file = cls->file; multiname_t*m_name = multiname_fromstring(name); - multiname_t*m_type = multiname_fromstring(type); + multiname_t*m_type = type; trait_t*t = trait_new_member(m_type, m_name, 0); t->slot_id = list_length(cls->traits); list_append(cls->traits, t); + return t; } void abc_method_body_addClassTrait(abc_method_body_t*code, char*multiname, int slotid, abc_class_t*cls) @@ -1394,7 +1395,8 @@ void swf_AddButtonLinks(SWF*swf, char stop_each_frame, char events) if(tag->id == ST_DEFINEBUTTON || tag->id == ST_DEFINEBUTTON2) { char buttonname[80]; sprintf(buttonname, "::button%d", swf_GetDefineID(tag)); - abc_AddSlot(cls, buttonname, 0, "flash.display::SimpleButton"); + multiname_t*s = multiname_fromstring(buttonname); + abc_class_slot(cls, buttonname, s); } tag = tag->next; }