X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fsynfig%2Fvaluenode.cpp;h=2539e5b6a05b0528627b91b11d6984d4cf0ebc7c;hb=6c43a07ee05693991ae3e8cee86cbf95b49df844;hp=2611392d1eb77fecbe727058ab8a13f8b55ff9c1;hpb=c548bdf3c6b899415810f9f9438fcfd6769b78ce;p=synfig.git diff --git a/synfig-core/trunk/src/synfig/valuenode.cpp b/synfig-core/trunk/src/synfig/valuenode.cpp index 2611392..2539e5b 100644 --- a/synfig-core/trunk/src/synfig/valuenode.cpp +++ b/synfig-core/trunk/src/synfig/valuenode.cpp @@ -165,19 +165,19 @@ ValueNode::subsys_stop() for(iter=global_value_node_map.begin();iter!=global_value_node_map.end();++iter) { if(!iter->second->is_exported()) - synfig::info("%s: count:%d name:%s type:%s", + synfig::info(_("%s: count:%d name:%s type:%s"), iter->first.get_string().c_str(), iter->second->count(), iter->second->get_name().c_str(), - ValueBase::type_name(iter->second->get_type()).c_str() + ValueBase::type_local_name(iter->second->get_type()).c_str() ); else - synfig::info("%s: id:%s count:%d name:%s type:%s", + synfig::info(_("%s: id:%s count:%d name:%s type:%s"), iter->first.get_string().c_str(), iter->second->get_id().c_str(), iter->second->count(), iter->second->get_name().c_str(), - ValueBase::type_name(iter->second->get_type()).c_str() + ValueBase::type_local_name(iter->second->get_type()).c_str() ); } } @@ -201,6 +201,13 @@ LinkableValueNode::create(const String &name, const ValueBase& x) { if(!book().count(name)) return 0; + + if (!check_type(name, x.get_type())) + { + error(_("Bad type: ValueNode '%s' doesn't accept type '%s'"), book()[name].local_name.c_str(), ValueBase::type_local_name(x.get_type()).c_str()); + return 0; + } + return book()[name].factory(x); } @@ -255,8 +262,6 @@ ValueNode::~ValueNode() value_node_count--; begin_delete(); - - //DEBUGPOINT(); } void