+ interpolation_t* new;
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_LINEAR;
+ dictionary_put2(&interpolations, "linear", new);
+
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_QUAD_IN;
+ new->slope = 0;
+ dictionary_put2(&interpolations, "quadIn", new);
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_QUAD_OUT;
+ new->slope = 0;
+ dictionary_put2(&interpolations, "quadOut", new);
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_QUAD_IN_OUT;
+ new->slope = 0;
+ dictionary_put2(&interpolations, "quadInOut", new);
+
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_CUBIC_IN;
+ new->slope = 0;
+ dictionary_put2(&interpolations, "cubicIn", new);
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_CUBIC_OUT;
+ new->slope = 0;
+ dictionary_put2(&interpolations, "cubicOut", new);
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_CUBIC_IN_OUT;
+ new->slope = 0;
+ dictionary_put2(&interpolations, "cubicInOut", new);
+
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_QUART_IN;
+ new->slope = 0;
+ dictionary_put2(&interpolations, "quartIn", new);
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_QUART_OUT;
+ new->slope = 0;
+ dictionary_put2(&interpolations, "quartOut", new);
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_QUART_IN_OUT;
+ new->slope = 0;
+ dictionary_put2(&interpolations, "quartInOut", new);
+
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_QUINT_IN;
+ new->slope = 0;
+ dictionary_put2(&interpolations, "quintIn", new);
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_QUINT_OUT;
+ new->slope = 0;
+ dictionary_put2(&interpolations, "quintOut", new);
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_QUINT_IN_OUT;
+ new->slope = 0;
+ dictionary_put2(&interpolations, "quintInOut", new);
+
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_CIRCLE_IN;
+ dictionary_put2(&interpolations, "circleIn", new);
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_CIRCLE_OUT;
+ dictionary_put2(&interpolations, "circleOut", new);
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_CIRCLE_IN_OUT;
+ dictionary_put2(&interpolations, "circleInOut", new);
+
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_EXPONENTIAL_IN;
+ dictionary_put2(&interpolations, "exponentialIn", new);
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_EXPONENTIAL_OUT;
+ dictionary_put2(&interpolations, "exponentialOut", new);
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_EXPONENTIAL_IN_OUT;
+ dictionary_put2(&interpolations, "exponentialInOut", new);
+
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_SINE_IN;
+ dictionary_put2(&interpolations, "sineIn", new);
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_SINE_OUT;
+ dictionary_put2(&interpolations, "sineOut", new);
+ new = (interpolation_t*)malloc(sizeof(interpolation_t));
+ new->function = IF_SINE_IN_OUT;
+ dictionary_put2(&interpolations, "sineInOut", new);
+
+ RGBA c;
+ memset(&c, 0, sizeof(RGBA));
+ gradient_t* noGradient = (gradient_t*)malloc(sizeof(gradient_t));
+ noGradient->gradient.ratios = (U8*)malloc(16 * sizeof(U8));
+ noGradient->gradient.rgba = (RGBA*)malloc(16 * sizeof(RGBA));
+ noGradient->gradient.num = 2;
+ noGradient->gradient.rgba[0] = c;
+ noGradient->gradient.ratios[0] = 0;
+ noGradient->gradient.rgba[1] = c;
+ noGradient->gradient.ratios[1] = 255;
+ noGradient->radial = 0;
+ noGradient->rotate = 0;
+ dictionary_put2(&gradients, "no_gradient", noGradient);
+
+ noFilters = 0;
+// put a no_filters entry in the filters dictionary to provoce a message when a user tries
+// to define a no_filters filter. The real filter=no_filters case is handled in parseFilters.
+ FILTER* dummy = (FILTER*)malloc(sizeof(FILTER));
+ dictionary_put2(&filters, "no_filters", dummy);
+ noBlur = (FILTER_BLUR*) swf_NewFilter(FILTERTYPE_BLUR);
+ noBlur->passes = 1;
+ dictionary_put2(&filters, "no_blur", noBlur);
+ noBevel = (FILTER_BEVEL*) swf_NewFilter(FILTERTYPE_BEVEL);
+ noBevel->passes = 1;
+ noBevel->composite = 1;
+ dictionary_put2(&filters, "no_bevel", noBevel);
+ noDropshadow = (FILTER_DROPSHADOW*) swf_NewFilter(FILTERTYPE_DROPSHADOW);
+ noDropshadow->passes = 1;
+ noDropshadow->composite = 1;
+ dictionary_put2(&filters, "no_dropshadow", noDropshadow);
+ noGradientGlow = (FILTER_GRADIENTGLOW*) swf_NewFilter(FILTERTYPE_GRADIENTGLOW);
+ noGradientGlow->passes = 1;
+ noGradientGlow->composite = 1;
+ noGradientGlow->gradient = &noGradient->gradient;
+ dictionary_put2(&filters, "no_gradientglow", noGradientGlow);
+}