**
** \legal
** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley
+** Copyright (c) 2007 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
#include <synfigapp/canvasinterface.h>
#include <synfig/valuenode_const.h>
+#include <synfigapp/general.h>
+
#endif
using namespace std;
ACTION_INIT(Action::ValueDescLink);
ACTION_SET_NAME(Action::ValueDescLink,"value_desc_link");
-ACTION_SET_LOCAL_NAME(Action::ValueDescLink,"Link");
+ACTION_SET_LOCAL_NAME(Action::ValueDescLink,N_("Link"));
ACTION_SET_TASK(Action::ValueDescLink,"connect");
ACTION_SET_CATEGORY(Action::ValueDescLink,Action::CATEGORY_VALUEDESC);
ACTION_SET_PRIORITY(Action::ValueDescLink,0);
{
// Everything must be of the same type
poison=true;
- status_message = (_("Cannot link two values of different types ('") +
- value_desc.get_value().type_name() + _("' and '") +
- value_desc_list.front().get_value().type_name() +_("')"));
+ status_message = (strprintf(_("Cannot link two values of different types ('%s' and '%s')"),
+ ValueBase::type_local_name(value_desc.get_value_type()).c_str(),
+ ValueBase::type_local_name(value_desc_list.front().get_value_type()).c_str()));
return false;
}
if(!link_value_node)
{
status_message = _("No ValueNodes were available, so one was created.");
- ValueDesc& value_desc(value_desc_list.front());
+ ValueDesc& value_desc(value_desc_list.back());
link_value_node=ValueNode_Const::create(value_desc.get_value(time));
{
ValueDesc& value_desc(*iter);
+ // only one of the selected items can be exported - that's the one we're linking to
+ // don't link it to itself
+ if (value_desc.is_exported())
+ continue;
+
Action::Handle action(Action::create("value_desc_connect"));
action->set_param("canvas",get_canvas());
add_action_front(action);
}
- synfig::info(status_message);
+ synfig::info("http://synfig.org/Linking#Tier_%d : %s", status_level, status_message.c_str());
}