]> git.lyx.org Git - lyx.git/blobdiff - src/insets/InsetScript.cpp
Merge branch 'master' into biblatex2
[lyx.git] / src / insets / InsetScript.cpp
index c98a9bed483bc3304922edec054eb0fd541a5359..fec226fe3a52b6c2f6ce53becde410bf82d68b0b 100644 (file)
@@ -68,14 +68,16 @@ ScriptTranslatorLoc const init_scripttranslator_loc()
 
 ScriptTranslator const & scripttranslator()
 {
-       static ScriptTranslator translator = init_scripttranslator();
+       static ScriptTranslator const translator =
+           init_scripttranslator();
        return translator;
 }
 
 
 ScriptTranslatorLoc const & scripttranslator_loc()
 {
-       static ScriptTranslatorLoc translator = init_scripttranslator_loc();
+       static ScriptTranslatorLoc const translator =
+           init_scripttranslator_loc();
        return translator;
 }
 
@@ -158,7 +160,7 @@ Inset::DisplayType InsetScript::display() const
 void InsetScript::metrics(MetricsInfo & mi, Dimension & dim) const
 {
        int const shift = params_.shift(mi.base.font);
-       ScriptChanger dummy(mi.base);
+       Changer dummy = mi.base.changeScript();
        InsetText::metrics(mi, dim);
        dim.asc -= shift;
        dim.des += shift;
@@ -168,7 +170,7 @@ void InsetScript::metrics(MetricsInfo & mi, Dimension & dim) const
 void InsetScript::draw(PainterInfo & pi, int x, int y) const
 {
        int const shift = params_.shift(pi.base.font);
-       ScriptChanger dummy(pi.base);
+       Changer dummy = pi.base.changeScript();
        InsetText::draw(pi, x, y + shift);
 }
 
@@ -214,7 +216,7 @@ void InsetScript::doDispatch(Cursor & cur, FuncRequest & cmd)
 {
        switch (cmd.action()) {
        case LFUN_INSET_MODIFY:
-               cur.recordUndoInset(ATOMIC_UNDO, this);
+               cur.recordUndoInset(this);
                string2params(to_utf8(cmd.argument()), params_);
                break;
        default:
@@ -261,9 +263,6 @@ bool InsetScript::getStatus(Cursor & cur, FuncRequest const & cmd,
                FuncStatus & flag) const
 {
        switch (cmd.action()) {
-       case LFUN_PARAGRAPH_BREAK:
-       case LFUN_LAYOUT:
-       case LFUN_LAYOUT_PARAGRAPH:
        case LFUN_MATH_DISPLAY:
        case LFUN_BOX_INSERT:
        case LFUN_BRANCH_INSERT:
@@ -287,7 +286,7 @@ bool InsetScript::getStatus(Cursor & cur, FuncRequest const & cmd,
        case LFUN_INSET_MODIFY:
                flag.setEnabled(true);
                return true;
-        case LFUN_COMMAND_SEQUENCE: {
+       case LFUN_COMMAND_SEQUENCE: {
                // argument contains ';'-terminated commands
                string arg = to_utf8(cmd.argument());
                // prevent insertion of display math formulas like AMS align
@@ -316,8 +315,7 @@ docstring InsetScript::toolTip(BufferView const &, int, int) const
        InsetText::plaintext(ods, rp, 200);
        docstring content_tip = ods.str();
        // shorten it if necessary
-       if (content_tip.size() >= 200)
-               content_tip = content_tip.substr(0, 197) + "...";
+       support::truncateWithEllipsis(content_tip, 200);
        docstring res = scripttranslator_loc().find(params_.type);
        if (!content_tip.empty())
                res += from_ascii(": ") + content_tip;
@@ -362,13 +360,13 @@ int InsetScript::plaintext(odocstringstream & os,
 
 int InsetScript::docbook(odocstream & os, OutputParams const & runparams) const
 {
-       string cmdname;
+       docstring cmdname;
        switch (params_.type) {
        case InsetScriptParams::Subscript:
-               cmdname = "subscript";
+               cmdname = from_ascii("subscript");
                break;
        case InsetScriptParams::Superscript:
-               cmdname = "superscript";
+               cmdname = from_ascii("superscript");
                break;
        }
        os << '<' + cmdname + '>';