X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-studio%2Ftrunk%2Fsrc%2Fsynfigapp%2Factions%2Fkeyframeset.cpp;fp=synfig-studio%2Ftrunk%2Fsrc%2Fsynfigapp%2Factions%2Fkeyframeset.cpp;h=bfbee21d1620a03f0eb6f44a429bf952273c6540;hb=6560846b17d7898c6c98398c7dda55ec1cbcaa74;hp=a2b2a8477e0032c95d170a6b7c230eb697171e7b;hpb=4f3b3b5603d5f0bb0dd7fe6f48b2af243cbd41cf;p=synfig.git diff --git a/synfig-studio/trunk/src/synfigapp/actions/keyframeset.cpp b/synfig-studio/trunk/src/synfigapp/actions/keyframeset.cpp index a2b2a84..bfbee21 100644 --- a/synfig-studio/trunk/src/synfigapp/actions/keyframeset.cpp +++ b/synfig-studio/trunk/src/synfigapp/actions/keyframeset.cpp @@ -275,11 +275,11 @@ Action::KeyframeSet::process_value_desc(const synfigapp::ValueDesc& value_desc) // If we are a dynamic list, then we need to update the ActivePoints if(ValueNode_DynamicList::Handle::cast_dynamic(value_node)) { - ValueNode_DynamicList::Handle value_node(ValueNode_DynamicList::Handle::cast_dynamic(value_node)); + ValueNode_DynamicList::Handle value_node_dynamic(ValueNode_DynamicList::Handle::cast_dynamic(value_node)); int i; - for(i=0;ilink_count();i++) + for(i=0;ilink_count();i++) { - synfigapp::ValueDesc value_desc(value_node,i); + synfigapp::ValueDesc value_desc(value_node_dynamic,i); if(new_time>keyframe_prev && new_timelist[i].find(old_time); + activepoint=*value_node_dynamic->list[i].find(old_time); activepoint.set_time(new_time); } catch(...) { activepoint.set_time(new_time); - activepoint.set_state(value_node->list[i].status_at_time(old_time)); + activepoint.set_state(value_node_dynamic->list[i].status_at_time(old_time)); activepoint.set_priority(0); } action->set_param("activepoint",activepoint); @@ -330,24 +330,24 @@ Action::KeyframeSet::process_value_desc(const synfigapp::ValueDesc& value_desc) } //else { - ValueNode_Animated::Handle value_node(ValueNode_Animated::Handle::cast_dynamic(value_node)); + ValueNode_Animated::Handle value_node_animated(ValueNode_Animated::Handle::cast_dynamic(value_node)); Action::Handle action(WaypointSetSmart::create()); action->set_param("canvas",get_canvas()); action->set_param("canvas_interface",get_canvas_interface()); - action->set_param("value_node",ValueNode::Handle(value_node)); + action->set_param("value_node",ValueNode::Handle(value_node_animated)); Waypoint waypoint; try { - waypoint=*value_node->find(old_time); + waypoint=*value_node_animated->find(old_time); waypoint.set_time(new_time); } catch(...) { waypoint.set_time(new_time); - waypoint.set_value((*value_node)(old_time)); + waypoint.set_value((*value_node_animated)(old_time)); } action->set_param("waypoint",waypoint);