X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fmathed%2FInsetMath.cpp;h=738f6342c358a3801fb44a4858517a810a2d2082;hb=c9609fe56a2deb40f001503c2fd707c990a2e0e2;hp=838438127b870b1295b740675ce3888319c4ee6c;hpb=2bf1c09376de37a3d66b79ca5f4304f29d5b4d06;p=lyx.git diff --git a/src/mathed/InsetMath.cpp b/src/mathed/InsetMath.cpp index 838438127b..738f6342c3 100644 --- a/src/mathed/InsetMath.cpp +++ b/src/mathed/InsetMath.cpp @@ -4,7 +4,7 @@ * Licence details can be found in the file COPYING. * * \author Alejandro Aguilar Sierra - * \author André Pönitz + * \author André Pönitz * * Full author contact details are available in file CREDITS. */ @@ -21,15 +21,21 @@ #include "support/lstrings.h" #include "support/textutils.h" -#include +#include "support/lassert.h" using namespace std; namespace lyx { +docstring InsetMath::name() const +{ + return from_utf8("Unknown"); +} + + MathData & InsetMath::cell(idx_type) { - static MathData dummyCell; + static MathData dummyCell(&buffer()); LYXERR0("I don't have any cell"); return dummyCell; } @@ -47,7 +53,7 @@ void InsetMath::dump() const { lyxerr << "---------------------------------------------" << endl; odocstringstream os; - WriteStream wi(os, false, true); + WriteStream wi(os, false, true, WriteStream::wsDefault); write(wi); lyxerr << to_utf8(os.str()); lyxerr << "\n---------------------------------------------" << endl; @@ -68,6 +74,7 @@ void InsetMath::drawT(TextPainter &, int, int) const void InsetMath::write(WriteStream & os) const { + MathEnsurer ensurer(os); docstring const s = name(); os << "\\" << s; // We need an extra ' ' unless this is a single-char-non-ASCII name @@ -77,11 +84,11 @@ void InsetMath::write(WriteStream & os) const } -int InsetMath::plaintext(Buffer const &, odocstream &, - OutputParams const &) const +int InsetMath::plaintext(odocstringstream &, + OutputParams const &, size_t) const { // all math plain text output shall take place in InsetMathHull - BOOST_ASSERT(false); + LATTEST(false); return 0; } @@ -122,8 +129,21 @@ void InsetMath::mathematica(MathematicaStream & os) const void InsetMath::mathmlize(MathStream & os) const { + os << ""; + os << MTag("mi"); + NormalStream ns(os.os()); + normalize(ns); + os << ETag("mi"); +} + + +void InsetMath::htmlize(HtmlStream & os) const +{ + os << ""; + os << MTag("span", "style='color: red;'"); NormalStream ns(os.os()); normalize(ns); + os << ETag("span"); } @@ -136,7 +156,7 @@ HullType InsetMath::getType() const ostream & operator<<(ostream & os, MathAtom const & at) { odocstringstream oss; - WriteStream wi(oss, false, false); + WriteStream wi(oss, false, false, WriteStream::wsDefault); at->write(wi); return os << to_utf8(oss.str()); } @@ -144,7 +164,7 @@ ostream & operator<<(ostream & os, MathAtom const & at) odocstream & operator<<(odocstream & os, MathAtom const & at) { - WriteStream wi(os, false, false); + WriteStream wi(os, false, false, WriteStream::wsDefault); at->write(wi); return os; }