X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fsynfig%2Fvaluenode_atan2.cpp;h=c4dd5e7cda99a45f969b8f51614f98aab3ddf38b;hb=9459638ad6797b8139f1e9f0715c96076dbf0890;hp=b4d2b56c6d24ea47d4f13f85e13226d3ee64eaf4;hpb=b37086823c5bfee9c76f6b265584a414100963ef;p=synfig.git diff --git a/synfig-core/trunk/src/synfig/valuenode_atan2.cpp b/synfig-core/trunk/src/synfig/valuenode_atan2.cpp index b4d2b56..c4dd5e7 100644 --- a/synfig-core/trunk/src/synfig/valuenode_atan2.cpp +++ b/synfig-core/trunk/src/synfig/valuenode_atan2.cpp @@ -6,7 +6,7 @@ ** ** \legal ** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley -** Copyright (c) 2007 Chris Moore +** Copyright (c) 2007, 2008 Chris Moore ** ** This package is free software; you can redistribute it and/or ** modify it under the terms of the GNU General Public License as @@ -60,7 +60,7 @@ ValueNode_Atan2::ValueNode_Atan2(const ValueBase &value): set_link("y",ValueNode_Const::create(Angle::sin(value.get(Angle())).get())); break; default: - throw Exception::BadType(ValueBase::type_name(value.get_type())); + throw Exception::BadType(ValueBase::type_local_name(value.get_type())); } DCAST_HACK_ENABLE(); @@ -86,6 +86,9 @@ ValueNode_Atan2::~ValueNode_Atan2() ValueBase ValueNode_Atan2::operator()(Time t)const { + if (getenv("SYNFIG_DEBUG_VALUENODE_OPERATORS")) + printf("%s:%d operator()\n", __FILE__, __LINE__); + return Angle::tan((*y_)(t).get(Real()), (*x_)(t).get(Real())); } @@ -110,20 +113,14 @@ ValueNode_Atan2::check_type(ValueBase::Type type) } bool -ValueNode_Atan2::set_link_vfunc(int i,ValueNode::Handle x) +ValueNode_Atan2::set_link_vfunc(int i,ValueNode::Handle value) { - assert(i==0 || i==1); - if(i==0) - { - x_=x; - signal_child_changed()(i);signal_value_changed()(); - return true; - } - if(i==1) + assert(i>=0 && i=0 && i=0 && i=0 && i