added scenedescription tag
authorkramm <kramm>
Wed, 4 Jul 2007 10:04:12 +0000 (10:04 +0000)
committerkramm <kramm>
Wed, 4 Jul 2007 10:04:12 +0000 (10:04 +0000)
lib/modules/swfdump.c
lib/rfxswf.c
lib/rfxswf.h

index b6572d8..0773f1f 100644 (file)
@@ -247,6 +247,8 @@ char* swf_TagGetName(TAG*tag)
            return "PLACEOBJECT3";
        case ST_METADATA:
            return "METADATA";
+       case ST_SCENEDESCRIPTION:
+           return "SCENEDESCRIPTION";
         
        case ST_REFLEX:
             return "REFLEX";
index 257d41b..e309be6 100644 (file)
@@ -1293,6 +1293,21 @@ int  swf_WriteSWF2(writer_t*writer, SWF * swf)     // Writes SWF to file, return
   }
 
 #endif // INSERT_RFX_TAG
+
+  if(swf->fileVersion >= 9) {
+    if ((!swf->firstTag || swf->firstTag->id != ST_SCENEDESCRIPTION) &&
+       (!swf->firstTag || 
+        !swf->firstTag->next || swf->firstTag->next->id != ST_SCENEDESCRIPTION) &&
+       (!swf->firstTag || 
+        !swf->firstTag->next || 
+        !swf->firstTag->next->next || swf->firstTag->next->next->id != ST_SCENEDESCRIPTION))
+    {
+       TAG*scene = swf_InsertTagBefore(swf, swf->firstTag,ST_SCENEDESCRIPTION);
+       swf_SetU16(scene, 1);
+       swf_SetString(scene, "Scene 1");
+       swf_SetU8(scene, 0);
+    }
+  }
   
   if(swf->fileVersion >= 8) {
       if (swf->firstTag && swf->firstTag->id != ST_FILEATTRIBUTES)
index 21301b5..8884afc 100644 (file)
@@ -330,6 +330,7 @@ SRECT swf_TurnRect(SRECT r, MATRIX* m);
 #define ST_DEFINESCALINGGRID    78 /* version 8 */
 #define ST_DEFINESHAPE4                83 /* version 8 */
 #define ST_DEFINEMORPHSHAPE2    84 /* version 8 */
+#define ST_SCENEDESCRIPTION    86 /* version 9 */
 
 /* custom tags- only valid for swftools */
 #define ST_REFLEX              777 /* to identify generator software */