X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fmathed%2FInsetMathBox.h;h=2f6ba483d9794bb18a44e3cb712c57eb1982a84b;hb=f6d505c1ee494ab0d30eebba86082c86a915e1df;hp=9b40ba09519a76bcb2dcf9a9b26f875e76b70f81;hpb=8995e86584837353490ea1f707b9b77e351fbe17;p=lyx.git diff --git a/src/mathed/InsetMathBox.h b/src/mathed/InsetMathBox.h index 9b40ba0951..2f6ba483d9 100644 --- a/src/mathed/InsetMathBox.h +++ b/src/mathed/InsetMathBox.h @@ -4,7 +4,7 @@ * This file is part of LyX, the document processor. * Licence details can be found in the file COPYING. * - * \author André Pönitz + * \author André Pönitz * * Full author contact details are available in file CREDITS. */ @@ -14,8 +14,6 @@ #include "InsetMathNest.h" -#include - namespace lyx { @@ -23,7 +21,7 @@ namespace lyx { class InsetMathBox : public InsetMathNest { public: /// - explicit InsetMathBox(docstring const & name); + explicit InsetMathBox(Buffer * buf, docstring const & name); /// mode_type currentMode() const { return TEXT_MODE; } /// @@ -35,7 +33,15 @@ public: /// void normalize(NormalStream & ns) const; /// + void mathmlize(MathStream & ms) const; + /// + void htmlize(HtmlStream & ms) const; + /// void infoize(odocstream & os) const; + /// + void validate(LaTeXFeatures & features) const; + /// + InsetCode lyxCode() const { return MATH_BOX_CODE; } private: Inset * clone() const { return new InsetMathBox(*this); } @@ -48,7 +54,7 @@ private: class InsetMathFBox : public InsetMathNest { public: /// - InsetMathFBox(); + InsetMathFBox(Buffer * buf); /// mode_type currentMode() const { return TEXT_MODE; } /// @@ -60,18 +66,24 @@ public: /// write normalized content void normalize(NormalStream & ns) const; /// + void mathmlize(MathStream & ms) const; + /// + void htmlize(HtmlStream & ms) const; + /// void infoize(odocstream & os) const; + /// + void validate(LaTeXFeatures & features) const; private: /// Inset * clone() const { return new InsetMathFBox(*this); } }; -/// Extra nesting -class InsetMathFrameBox : public InsetMathNest { +/// Extra nesting: \\makebox or \\framebox. +class InsetMathMakebox : public InsetMathNest { public: /// - InsetMathFrameBox(); + InsetMathMakebox(Buffer * buf, bool framebox); /// void metrics(MetricsInfo & mi, Dimension & dim) const; /// @@ -81,36 +93,19 @@ public: /// write normalized content void normalize(NormalStream & ns) const; /// - mode_type currentMode() const { return TEXT_MODE; } -private: - Inset * clone() const { return new InsetMathFrameBox(*this); } - /// width of '[' in current font - mutable int w_; -}; - - -/// Extra nesting: \\makebox. -// consolidate with InsetMathFrameBox? -class InsetMathMakebox : public InsetMathNest { -public: - /// - InsetMathMakebox(); - /// - void metrics(MetricsInfo & mi, Dimension & dim) const; + void mathmlize(MathStream & ms) const; /// - void draw(PainterInfo & pi, int x, int y) const; - /// - void write(WriteStream & os) const; - /// write normalized content - void normalize(NormalStream & ns) const; + void htmlize(HtmlStream & ms) const; /// mode_type currentMode() const { return TEXT_MODE; } /// void infoize(odocstream & os) const; + /// + void validate(LaTeXFeatures & features) const; private: Inset * clone() const { return new InsetMathMakebox(*this); } - /// width of '[' in current font - mutable int w_; + /// + bool framebox_; }; @@ -119,7 +114,7 @@ private: class InsetMathBoxed : public InsetMathNest { public: /// - InsetMathBoxed(); + InsetMathBoxed(Buffer * buf); /// void validate(LaTeXFeatures & features) const; /// @@ -128,6 +123,10 @@ public: void draw(PainterInfo & pi, int x, int y) const; /// void write(WriteStream & os) const; + /// + void mathmlize(MathStream & ms) const; + /// + void htmlize(HtmlStream & ms) const; /// write normalized content void normalize(NormalStream & ns) const; ///