X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Fsrc%2Fsynfig%2Floadcanvas.cpp;h=47dccdb937c3ae1b0201ffa77fc58258a23e9cb5;hb=d43ed398fd84b93b96eb91d91dafdf65c80537e6;hp=1e715c3e7fd5b62d4dcb37d23bcdad665b50ebb2;hpb=820c250c15a6ae2dc0cb3966405b82fc0937e9d1;p=synfig.git diff --git a/synfig-core/src/synfig/loadcanvas.cpp b/synfig-core/src/synfig/loadcanvas.cpp index 1e715c3..47dccdb 100644 --- a/synfig-core/src/synfig/loadcanvas.cpp +++ b/synfig-core/src/synfig/loadcanvas.cpp @@ -855,38 +855,79 @@ CanvasParser::parse_value(xmlpp::Element *element,Canvas::Handle canvas) } else if(element->get_name()=="time") - return parse_time(element,canvas); + { + ValueBase ret; + ret.set(parse_time(element,canvas)); + ret.set_static(parse_static(element)); + return ret; + } else if(element->get_name()=="integer") - return parse_integer(element); + { + ValueBase ret; + ret.set(parse_integer(element)); + ret.set_static(parse_static(element)); + return ret; + } else if(element->get_name()=="string") - return parse_string(element); + { + ValueBase ret; + ret.set(parse_string(element)); + ret.set_static(parse_static(element)); + return ret; + } else if(element->get_name()=="vector") - return parse_vector(element); + { + ValueBase ret; + ret.set(parse_vector(element)); + ret.set_static(parse_static(element)); + return ret; + } else if(element->get_name()=="color") - return parse_color(element); + { + ValueBase ret; + ret.set(parse_color(element)); + ret.set_static(parse_static(element)); + return ret; + } else if(element->get_name()=="segment") - return parse_segment(element); + { + ValueBase ret; + ret.set(parse_segment(element)); + ret.set_static(parse_static(element)); + return ret; + } else if(element->get_name()=="list") return parse_list(element,canvas); else if(element->get_name()=="gradient") - return parse_gradient(element); + { + ValueBase ret; + ret.set(parse_gradient(element)); + ret.set_static(parse_static(element)); + return ret; + } else if(element->get_name()=="bool") - return parse_bool(element); + { + ValueBase ret; + ret.set(parse_bool(element)); + ret.set_static(parse_static(element)); + return ret; + } else - //if(element->get_name()=="canvas") - // return parse_canvas(element,canvas,true); // inline canvas - //else if(element->get_name()=="angle" || element->get_name()=="degrees" || element->get_name()=="radians" || element->get_name()=="rotations") - return parse_angle(element); - else + { + ValueBase ret; + ret.set(parse_angle(element)); + ret.set_static(parse_static(element)); + return ret; + } else if(element->get_name()=="bline_point") return parse_bline_point(element); else