From af4e935bee0c669a93488e5f40b4be071f47937b Mon Sep 17 00:00:00 2001 From: kramm <kramm> Date: Sat, 7 Aug 2004 14:05:19 +0000 Subject: [PATCH] added framelabels. --- src/swfc.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/swfc.c b/src/swfc.c index 2be9d1c..27f6e9a 100644 --- a/src/swfc.c +++ b/src/swfc.c @@ -692,13 +692,17 @@ int s_getframe() return currentframe; } -void s_frame(int nr, int cut) +void s_frame(int nr, int cut, char*name) { int t; TAG*now = tag; for(t=currentframe;t<nr;t++) { tag = swf_InsertTag(tag, ST_SHOWFRAME); + if(t==nr-1 && name && *name) { + tag = swf_InsertTag(tag, ST_FRAMELABEL); + swf_SetString(tag, name); + } } if(cut) { @@ -2153,6 +2157,7 @@ static int c_frame(map_t*args) { char*framestr = lu(args, "n"); char*cutstr = lu(args, "cut"); + char*name = lu(args, "name"); int frame; int cut = 0; if(strcmp(cutstr, "no")) @@ -2169,7 +2174,7 @@ static int c_frame(map_t*args) && !(frame==0 && s_getframe()==frame)) // equality is o.k. for frame 0 syntaxerror("frame expression must be >%d (is:%s)", s_getframe(), framestr); } - s_frame(frame, cut); + s_frame(frame, cut, name); return 0; } static int c_primitive(map_t*args) @@ -2481,7 +2486,7 @@ static struct { char*arguments; } arguments[] = {{"flash", c_flash, "bbox=autocrop background=black version=5 fps=50 name=!default! @compress=default"}, - {"frame", c_frame, "n=<plus>1 @cut=no"}, + {"frame", c_frame, "n=<plus>1 name= @cut=no"}, // "import" type stuff {"swf", c_swf, "name filename"}, {"shape", c_swf, "name filename"}, -- 1.7.10.4