mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-12-22 13:18:28 +00:00
* InsetMathScript::doDispatch : properly record undo information before
changing limits status (fixes bug #8007) * InsetMathScript::getStatus (new) : handle properly status for LFUN_MATH_LIMITS here, along with checkmark support for the menu) git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40700 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
e770e95861
commit
98cd6c60f7
@ -1368,7 +1368,6 @@ bool InsetMathNest::getStatus(Cursor & cur, FuncRequest const & cmd,
|
|||||||
// we just need to be in math mode to enable that
|
// we just need to be in math mode to enable that
|
||||||
case LFUN_MATH_SIZE:
|
case LFUN_MATH_SIZE:
|
||||||
case LFUN_MATH_SPACE:
|
case LFUN_MATH_SPACE:
|
||||||
case LFUN_MATH_LIMITS:
|
|
||||||
case LFUN_MATH_EXTERN:
|
case LFUN_MATH_EXTERN:
|
||||||
flag.setEnabled(true);
|
flag.setEnabled(true);
|
||||||
break;
|
break;
|
||||||
|
@ -14,6 +14,7 @@
|
|||||||
#include "Cursor.h"
|
#include "Cursor.h"
|
||||||
#include "DispatchResult.h"
|
#include "DispatchResult.h"
|
||||||
#include "FuncRequest.h"
|
#include "FuncRequest.h"
|
||||||
|
#include "FuncStatus.h"
|
||||||
#include "InsetMathFont.h"
|
#include "InsetMathFont.h"
|
||||||
#include "InsetMathScript.h"
|
#include "InsetMathScript.h"
|
||||||
#include "InsetMathSymbol.h"
|
#include "InsetMathSymbol.h"
|
||||||
@ -754,6 +755,7 @@ void InsetMathScript::doDispatch(Cursor & cur, FuncRequest & cmd)
|
|||||||
//LYXERR("InsetMathScript: request: " << cmd);
|
//LYXERR("InsetMathScript: request: " << cmd);
|
||||||
|
|
||||||
if (cmd.action() == LFUN_MATH_LIMITS) {
|
if (cmd.action() == LFUN_MATH_LIMITS) {
|
||||||
|
cur.recordUndoInset();
|
||||||
if (!cmd.argument().empty()) {
|
if (!cmd.argument().empty()) {
|
||||||
if (cmd.argument() == "limits")
|
if (cmd.argument() == "limits")
|
||||||
limits_ = 1;
|
limits_ = 1;
|
||||||
@ -772,6 +774,26 @@ void InsetMathScript::doDispatch(Cursor & cur, FuncRequest & cmd)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool InsetMathScript::getStatus(Cursor & cur, FuncRequest const & cmd,
|
||||||
|
FuncStatus & flag) const
|
||||||
|
{
|
||||||
|
if (cmd.action() == LFUN_MATH_LIMITS) {
|
||||||
|
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);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return InsetMathNest::getStatus(cur, cmd, flag);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// the idea for dual scripts came from the eLyXer code
|
// the idea for dual scripts came from the eLyXer code
|
||||||
void InsetMathScript::validate(LaTeXFeatures & features) const
|
void InsetMathScript::validate(LaTeXFeatures & features) const
|
||||||
{
|
{
|
||||||
|
@ -110,6 +110,9 @@ public:
|
|||||||
void validate(LaTeXFeatures &features) const;
|
void validate(LaTeXFeatures &features) const;
|
||||||
protected:
|
protected:
|
||||||
virtual void doDispatch(Cursor & cur, FuncRequest & cmd);
|
virtual void doDispatch(Cursor & cur, FuncRequest & cmd);
|
||||||
|
/// do we want to handle this event?
|
||||||
|
bool getStatus(Cursor & cur, FuncRequest const & cmd,
|
||||||
|
FuncStatus & status) const;
|
||||||
private:
|
private:
|
||||||
virtual Inset * clone() const;
|
virtual Inset * clone() const;
|
||||||
/// returns x offset for main part
|
/// returns x offset for main part
|
||||||
|
Loading…
Reference in New Issue
Block a user