/* === M A C R O S ========================================================= */
-ACTION_INIT(Action::LayerRemove);
+ACTION_INIT_NO_GET_LOCAL_NAME(Action::LayerRemove);
ACTION_SET_NAME(Action::LayerRemove,"layer_remove");
ACTION_SET_LOCAL_NAME(Action::LayerRemove,N_("Remove Layer"));
ACTION_SET_TASK(Action::LayerRemove,"remove");
{
}
+synfig::String
+Action::LayerRemove::get_local_name()const
+{
+ String ret;
+
+ if (layer_list.empty())
+ return _("Remove Layer");
+
+ ret = strprintf("%s '%s'",
+ (layer_list.size() == 1
+ ? _("Remove Layer")
+ : _("Remove Layers")),
+ layer_list.begin()->first->get_non_empty_description().c_str());
+
+ for(std::list<std::pair<synfig::Layer::Handle,int> >::const_iterator iter=++layer_list.begin(); iter!=layer_list.end(); ++iter)
+ ret += strprintf(", '%s'", (iter->first->get_non_empty_description().c_str()));
+ return ret;
+}
+
Action::ParamVocab
Action::LayerRemove::get_param_vocab()
{
// If we couldn't find the layer in the canvas, then bail
if(*iter2!=layer)
{
- /*! \fixme We should really undo all prior removals
+ /*! \todo We should really undo all prior removals
** before we go throwing shit around */
throw Error(_("This layer doesn't exist anymore."));
}
// bail
if(get_canvas()!=subcanvas && !subcanvas->is_inline())
{
- /*! \fixme We should really undo all prior removals
+ /*! \todo We should really undo all prior removals
** before we go throwing shit around */
throw Error(_("This layer doesn't belong to this canvas anymore"));
}