ProjectUiActions::m_actions is a vector of UiAction cause UiActionList is a type-alias defined by muse to a vector of UiAction
OP's code initializes that vector from a brace init list so I guess there's some initializer_list which I hope is optimized but whatever
OP's code has things along the lines of
UiAction("project-new",
UiCtxAny,
muse::shortcuts::CTX_ANY,
TranslatableString("action", "New Project"))
for the individual UiAction, which aiui should invoke the constructor with this signature
UiAction(const actions::ActionCode& code, UiContext ctx, std::string scCtx, const MnemonicString& title,
Checkable ch = Checkable::No)
: code(code), uiCtx(ctx), scCtx(scCtx), title(title), checkable(ch) {}
to note: actions::ActionCode is a type alias to std::string (https://gitlab.com/advanced-effects/framework/-/blob/main/src/actions/actiontypes.h?ref_type=heads#L33)
muse::shortcuts::CTX_ANY is a std::string (https://gitlab.com/advanced-effects/framework/-/blob/main/src/shortcuts/shortcutcontext.h?ref_type=heads#L35)
so the MnemonicString is being built from the prvalue TransalatableString("action", "New Project") or whatever the first time this pattern occurs