git.asbjorn.biz
/
swftools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fixed bug in edittext
[swftools.git]
/
lib
/
modules
/
swftools.c
diff --git
a/lib/modules/swftools.c
b/lib/modules/swftools.c
index
3427436
..
a1befc2
100644
(file)
--- a/
lib/modules/swftools.c
+++ b/
lib/modules/swftools.c
@@
-86,15
+86,16
@@
U16 swf_GetDefineID(TAG * t)
case ST_DEFINEBITSLOSSLESS2:
case ST_DEFINEBUTTON:
case ST_DEFINEBUTTON2:
case ST_DEFINEBITSLOSSLESS2:
case ST_DEFINEBUTTON:
case ST_DEFINEBUTTON2:
- case ST_DEFINEBUTTONCXFORM:
- case ST_DEFINEBUTTONSOUND:
+ case ST_DEFINEBUTTONCXFORM: //pseudodefine
+ case ST_DEFINEBUTTONSOUND: //pseudodefine
case ST_DEFINEFONT:
case ST_DEFINEFONT2:
case ST_DEFINEFONT:
case ST_DEFINEFONT2:
- case ST_DEFINEFONTINFO:
+ case ST_DEFINEFONTINFO: //pseudodefine
case ST_DEFINETEXT:
case ST_DEFINETEXT2:
case ST_DEFINESOUND:
case ST_DEFINESPRITE:
case ST_DEFINETEXT:
case ST_DEFINETEXT2:
case ST_DEFINESOUND:
case ST_DEFINESPRITE:
+ case ST_NAMECHARACTER: //pseudodefine
id = swf_GetU16(t);
break;
}
id = swf_GetU16(t);
break;
}
@@
-132,7
+133,7
@@
U16 swf_GetPlaceID(TAG * t)
return id;
}
return id;
}
-int definingtagids[] =
+static int swf_definingtagids[] =
{ST_DEFINESHAPE,
ST_DEFINESHAPE2,
ST_DEFINESHAPE3,
{ST_DEFINESHAPE,
ST_DEFINESHAPE2,
ST_DEFINESHAPE3,
@@
-156,7
+157,7
@@
int definingtagids[] =
};
// tags which may be used inside a sprite definition
};
// tags which may be used inside a sprite definition
-int spritetagids[] =
+static int swf_spritetagids[] =
{ST_SHOWFRAME,
ST_PLACEOBJECT,
ST_PLACEOBJECT2,
{ST_SHOWFRAME,
ST_PLACEOBJECT,
ST_PLACEOBJECT2,
@@
-172,13
+173,22
@@
int spritetagids[] =
-1
};
-1
};
+static int swf_pseudodefiningtagids[] =
+{
+ ST_DEFINEFONTINFO,
+ ST_DEFINEBUTTONCXFORM,
+ ST_DEFINEBUTTONSOUND,
+ ST_NAMECHARACTER,
+ -1
+};
+
U8 swf_isAllowedSpriteTag(TAG * tag)
{
int id = tag->id;
int t=0;
U8 swf_isAllowedSpriteTag(TAG * tag)
{
int id = tag->id;
int t=0;
- while(spritetagids[t]>=0)
+ while(swf_spritetagids[t]>=0)
{
{
- if(spritetagids[t] == id)
+ if(swf_spritetagids[t] == id)
return 1;
t++;
}
return 1;
t++;
}
@@
-189,9
+199,22
@@
U8 swf_isDefiningTag(TAG * tag)
{
int id = tag->id;
int t=0;
{
int id = tag->id;
int t=0;
- while(definingtagids[t]>=0)
+ while(swf_definingtagids[t]>=0)
+ {
+ if(swf_definingtagids[t] == id)
+ return 1;
+ t++;
+ }
+ return 0;
+}
+
+U8 swf_isPseudoDefiningTag(TAG * tag)
+{
+ int id = tag->id;
+ int t=0;
+ while(swf_pseudodefiningtagids[t]>=0)
{
{
- if(definingtagids[t] == id)
+ if(swf_pseudodefiningtagids[t] == id)
return 1;
t++;
}
return 1;
t++;
}