-void InsetMathScript::doDispatch(Cursor & cur, FuncRequest & cmd)
-{
- //LYXERR("InsetMathScript: request: " << cmd);
-
- if (cmd.action() == LFUN_MATH_LIMITS) {
- // only when nucleus allows this
- if (!allowsLimits())
- return;
- cur.recordUndoInset();
- if (!cmd.argument().empty()) {
- if (cmd.argument() == "limits")
- limits_ = 1;
- else if (cmd.argument() == "nolimits")
- limits_ = -1;
- else
- limits_ = 0;
- } else if (limits_ == 0)
- limits_ = hasLimits() ? -1 : 1;
- else
- limits_ = 0;
- return;
- }
-
- InsetMathNest::doDispatch(cur, cmd);
-}
-
-
-bool InsetMathScript::getStatus(Cursor & cur, FuncRequest const & cmd,
- FuncStatus & flag) const
-{
- if (cmd.action() == LFUN_MATH_LIMITS) {
- // only when nucleus allows this
- if (allowsLimits()) {
- if (!cmd.argument().empty()) {
- if (cmd.argument() == "limits")
- flag.setOnOff(limits_ == 1);
- else if (cmd.argument() == "nolimits")
- flag.setOnOff(limits_ == -1);
- else
- flag.setOnOff(limits_ == 0);
- }
- flag.setEnabled(true);
- } else
- flag.setEnabled(false);
- return true;
- }
-
- return InsetMathNest::getStatus(cur, cmd, flag);
-}
-
-