win32 compile fixes
[swftools.git] / lib / rfxswf.h
index d33c268..fe3c7e1 100644 (file)
 #ifndef __RFX_SWF_INCLUDED__
 #define __RFX_SWF_INCLUDED__
 
-#ifdef __cplusplus
-extern "C" {
-#endif
-
 #include <stdio.h>
 #include <stdlib.h>
 #include <math.h>
 #include <string.h>
+#ifndef WIN32
 #include <unistd.h>
+#endif
 #include <fcntl.h>
 #include <ctype.h>
 #include "../config.h"
@@ -41,6 +39,10 @@ extern "C" {
 #include "./mem.h"
 #include "./types.h"
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #define DEBUG_RFXSWF
 #ifdef RFXSWF_DISABLESOUND
 #define NO_MP3
@@ -227,7 +229,7 @@ int   swf_SetU8(TAG * t,U8 v);              // resets Bitcount
 int   swf_SetU16(TAG * t,U16 v);
 void  swf_SetS16(TAG * t,int v);
 int   swf_SetU32(TAG * t,U32 v);
-#define swf_SetString(t,s)  swf_SetBlock(t,s,strlen(s)+1)
+#define swf_SetString(t,s)  swf_SetBlock(t,s,strlen((const char *)s)+1)
 
 //int   swf_GetPoint(TAG * t,SPOINT * p);     // resets Bitcount
 int   swf_GetRect(TAG * t,SRECT * r);
@@ -326,11 +328,15 @@ SRECT swf_TurnRect(SRECT r, MATRIX* m);
 #define ST_DEFINEFONTALIGNZONES 73 /* version 8 */
 #define ST_CSMTEXTSETTINGS     74 /* version 8 */
 #define ST_DEFINEFONT3         75 /* version 8 */
+#define ST_SYMBOLCLASS         76 /* version 9 */
 #define ST_METADATA            77 /* version 8 */
 #define ST_DEFINESCALINGGRID    78 /* version 8 */
+#define ST_DOABC               82 /* version 9 */
 #define ST_DEFINESHAPE4                83 /* version 8 */
 #define ST_DEFINEMORPHSHAPE2    84 /* version 8 */
 #define ST_SCENEDESCRIPTION    86 /* version 9 */
+#define ST_DEFINEBINARY                87 /* version 9 */
+#define ST_DEFINEFONTNAME      88 /* version 9 */
 
 /* custom tags- only valid for swftools */
 #define ST_REFLEX              777 /* to identify generator software */
@@ -393,9 +399,10 @@ typedef struct _SHAPE2
     SRECT* bbox; // may be NULL
 } SHAPE2;
 
+enum SHAPELINETYPE {moveTo, lineTo, splineTo};
 typedef struct _SHAPELINE
 {
-    enum {moveTo, lineTo, splineTo} type;
+    enum SHAPELINETYPE type;
     SCOORD x,y;
     SCOORD sx,sy; //only if type==splineTo
     int fillstyle0;
@@ -1062,9 +1069,10 @@ void swf_SetFilter(TAG*tag, FILTER*f);
 FILTER*swf_GetFilter(TAG*tag);
 FILTER*swf_NewFilter(U8 type);
 
+void AVM2_InsertStops(SWF*swf);
+
 #ifdef __cplusplus
 }
 #endif
 
 #endif
-