diff --git a/src/mathed/InsetMathCases.cpp b/src/mathed/InsetMathCases.cpp index 480b69d247..317c584907 100644 --- a/src/mathed/InsetMathCases.cpp +++ b/src/mathed/InsetMathCases.cpp @@ -72,12 +72,14 @@ void InsetMathCases::doDispatch(Cursor & cur, FuncRequest & cmd) //lyxerr << "*** InsetMathCases: request: " << cmd << endl; switch (cmd.action) { case LFUN_TABULAR_FEATURE: { - cur.recordUndo(); docstring const & s = cmd.argument(); - if (s == "add-vline-left" || s == "add-vline-right") { + // vertical lines and adding/deleting columns is not allowed for \cases + if (s == "append-column" || s == "delete-column" + || s == "add-vline-left" || s == "add-vline-right") { cur.undispatched(); break; } + cur.recordUndo(); } default: InsetMathGrid::doDispatch(cur, cmd); @@ -98,6 +100,14 @@ bool InsetMathCases::getStatus(Cursor & cur, FuncRequest const & cmd, s)); return true; } + if (s == "append-column" || s == "delete-column") { + flag.setEnabled(false); + flag.message(bformat( + from_utf8(N_("Changing number of columns not allowed in\ + 'cases': feature %1$s")), + s)); + return true; + } } default: return InsetMathGrid::getStatus(cur, cmd, flag);