+ if(!fill) {
+ if(num >= 3)
+ {swf_GetRGBA(tag, &color);if(morph) swf_GetRGBA(tag, NULL);}
+ else
+ {swf_GetRGB(tag, &color);if(morph) swf_GetRGB(tag, NULL);}
+ } else {
+ enumerateUsedIDs_fillstyle(tag, t, callback, callback_data, num, morph);
+ }
+ DEBUG_ENUMERATE printf("line style %d) width=%.2f color=%02x%02x%02x%02x \n", t, width/20.0, color.r,color.g,color.b,color.a);
+}
+
+void enumerateUsedIDs_styles(TAG * tag, void (*callback)(TAG*, int, void*), void*callback_data, int num, int morph)
+{
+ U16 count;
+ int t;
+ count = swf_GetU8(tag);
+ if(count == 0xff && num>1) // defineshape2,3,4 only
+ count = swf_GetU16(tag);
+
+ DEBUG_ENUMERATE printf("%d fill styles\n", count);
+ for(t=0;t<count;t++)
+ {
+ enumerateUsedIDs_fillstyle(tag, t, callback, callback_data, num, morph);
+ }