Write a proper definition for ValueNode_DynamicList::create_new().
[synfig.git] / synfig-core / trunk / src / synfig / valuenode_dynamiclist.cpp
index 1f75ab9..0f59a87 100644 (file)
@@ -577,6 +577,12 @@ ValueNode_DynamicList::create_from(const ValueBase &value)
 
        ValueNode_DynamicList* value_node(new ValueNode_DynamicList(value_list.front().get_type()));
 
+       // when creating a list of vectors, start it off being looped.
+       // I think the only time this is used if for creating polygons,
+       // and we want them to be looped by default
+       if (value_node->get_contained_type() == ValueBase::TYPE_VECTOR)
+               value_node->set_loop(true);
+
        for(iter=value_list.begin();iter!=value_list.end();++iter)
        {
                ValueNode::Handle item(ValueNode_Const::create(*iter));
@@ -729,9 +735,7 @@ ValueNode_DynamicList::get_contained_type()const
 LinkableValueNode*
 ValueNode_DynamicList::create_new()const
 {
-       assert(0);
-
-       return 0;
+       return new ValueNode_DynamicList(container_type);
 }
 
 int