X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2FInsetScript.cpp;h=fec226fe3a52b6c2f6ce53becde410bf82d68b0b;hb=239b9919ffe28338d789e6dc9122228f77ab77a7;hp=135962353a40e70beb029a61ecf6e8c35e1ca71a;hpb=de45075defffd47a59f211c22db9100419f98162;p=lyx.git diff --git a/src/insets/InsetScript.cpp b/src/insets/InsetScript.cpp index 135962353a..fec226fe3a 100644 --- a/src/insets/InsetScript.cpp +++ b/src/insets/InsetScript.cpp @@ -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 @@ -313,11 +312,10 @@ docstring InsetScript::toolTip(BufferView const &, int, int) const { OutputParams rp(&buffer().params().encoding()); odocstringstream ods; - InsetText::plaintext(ods, rp); + 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, 200) + "..."; + support::truncateWithEllipsis(content_tip, 200); docstring res = scripttranslator_loc().find(params_.type); if (!content_tip.empty()) res += from_ascii(": ") + content_tip; @@ -325,10 +323,11 @@ docstring InsetScript::toolTip(BufferView const &, int, int) const } -int InsetScript::plaintext(odocstream & os, OutputParams const & runparams) const +int InsetScript::plaintext(odocstringstream & os, + OutputParams const & runparams, size_t max_length) const { odocstringstream oss; - InsetText::plaintext(oss, runparams); + InsetText::plaintext(oss, runparams, max_length); docstring const text = oss.str(); switch (params_.type) { case InsetScriptParams::Subscript: @@ -352,7 +351,7 @@ int InsetScript::plaintext(odocstream & os, OutputParams const & runparams) cons os << '[' << buffer().B_("superscript") << ':'; break; } - InsetText::plaintext(os, runparams); + InsetText::plaintext(os, runparams, max_length); os << ']'; return PLAINTEXT_NEWLINE; @@ -361,13 +360,13 @@ int InsetScript::plaintext(odocstream & os, OutputParams const & runparams) cons 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 + '>';