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()
);
}
}
{
if(!book().count(name))
return 0;
+
+ if (!check_type(name, x.get_type()) &&
+ // the Duplicate ValueNode is an exception - we don't want the
+ // user creating it for themselves, so check_type() fails for
+ // it even when it is valid
+ !(name == "duplicate" && x.get_type() == ValueBase::TYPE_REAL))
+ {
+ 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);
}
value_node_count--;
begin_delete();
-
- //DEBUGPOINT();
}
void