-** This software and associated documentation
-** are CONFIDENTIAL and PROPRIETARY property of
-** the above-mentioned copyright holder.
+** This package is free software; you can redistribute it and/or
+** modify it under the terms of the GNU General Public License as
+** published by the Free Software Foundation; either version 2 of
+** the License, or (at your option) any later version.
-** You may not copy, print, publish, or in any
-** other way distribute this software without
-** a prior written agreement with
-** the copyright holder.
+** This package is distributed in the hope that it will be useful,
+** but WITHOUT ANY WARRANTY; without even the implied warranty of
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+** General Public License for more details.
ACTION_SET_CATEGORY(Action::BLinePointTangentMerge,Action::CATEGORY_VALUENODE);
ACTION_SET_PRIORITY(Action::BLinePointTangentMerge,0);
ACTION_SET_VERSION(Action::BLinePointTangentMerge,"0.0");
ACTION_SET_CATEGORY(Action::BLinePointTangentMerge,Action::CATEGORY_VALUENODE);
ACTION_SET_PRIORITY(Action::BLinePointTangentMerge,0);
ACTION_SET_VERSION(Action::BLinePointTangentMerge,"0.0");
Action::BLinePointTangentMerge::get_param_vocab()
{
ParamVocab ret(Action::CanvasSpecific::get_param_vocab());
Action::BLinePointTangentMerge::get_param_vocab()
{
ParamVocab ret(Action::CanvasSpecific::get_param_vocab());
ret.push_back(ParamDesc("value_node",Param::TYPE_VALUENODE)
.set_local_name(_("ValueNode of BLinePoint"))
);
ret.push_back(ParamDesc("value_node",Param::TYPE_VALUENODE)
.set_local_name(_("ValueNode of BLinePoint"))
);
ret.push_back(ParamDesc("time",Param::TYPE_TIME)
.set_local_name(_("Time"))
);
ret.push_back(ParamDesc("time",Param::TYPE_TIME)
.set_local_name(_("Time"))
);
{
ValueNode_Composite::Handle value_node;
value_node=ValueNode_Composite::Handle::cast_dynamic(x.find("value_node")->second.get_value_node());
{
ValueNode_Composite::Handle value_node;
value_node=ValueNode_Composite::Handle::cast_dynamic(x.find("value_node")->second.get_value_node());
if(name=="value_node" && param.get_type()==Param::TYPE_VALUENODE)
{
value_node=value_node.cast_dynamic(param.get_value_node());
if(name=="value_node" && param.get_type()==Param::TYPE_VALUENODE)
{
value_node=value_node.cast_dynamic(param.get_value_node());
action->set_param("canvas",get_canvas());
action->set_param("canvas_interface",get_canvas_interface());
action->set_param("value_desc",ValueDesc(value_node,3));
action->set_param("time",time);
action->set_param("new_value",synfig::ValueBase(false));
action->set_param("canvas",get_canvas());
action->set_param("canvas_interface",get_canvas_interface());
action->set_param("value_desc",ValueDesc(value_node,3));
action->set_param("time",time);
action->set_param("new_value",synfig::ValueBase(false));
action->set_param("canvas",get_canvas());
action->set_param("canvas_interface",get_canvas_interface());
action->set_param("value_desc",ValueDesc(value_node,5));
action->set_param("time",time);
action->set_param("new_value",(*value_node->get_link("t1"))(time));
action->set_param("canvas",get_canvas());
action->set_param("canvas_interface",get_canvas_interface());
action->set_param("value_desc",ValueDesc(value_node,5));
action->set_param("time",time);
action->set_param("new_value",(*value_node->get_link("t1"))(time));