X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fmathed%2FInsetMathScript.h;h=d0707439b9a75bc2c79204e160ee815fded49104;hb=cdc847fd304019a19425a0d5d9d42a556a937097;hp=ad6b1f5c5e540b7e5d62f51aaad80299750dca60;hpb=ddd82f7aa4f124da045f1d9ddd723598b0d39402;p=lyx.git diff --git a/src/mathed/InsetMathScript.h b/src/mathed/InsetMathScript.h index ad6b1f5c5e..d0707439b9 100644 --- a/src/mathed/InsetMathScript.h +++ b/src/mathed/InsetMathScript.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. */ @@ -25,14 +25,16 @@ namespace lyx { class InsetMathScript : public InsetMathNest { public: /// create inset without scripts - InsetMathScript(); + InsetMathScript(Buffer * buf); /// create inset with single script - explicit InsetMathScript(bool up); + explicit InsetMathScript(Buffer * buf, bool up); /// create inset with single script and given nucleus - InsetMathScript(MathAtom const & at, bool up); + InsetMathScript(Buffer * buf, MathAtom const & at, bool up); /// mode_type currentMode() const { return MATH_MODE; } /// + MathClass mathClass() const; + /// void metrics(MetricsInfo & mi, Dimension & dim) const; /// void draw(PainterInfo & pi, int x, int y) const; @@ -41,10 +43,10 @@ public: /// void drawT(TextPainter & pi, int x, int y) const; - /// move cursor left - bool idxLeft(Cursor & cur) const; - /// move cursor right - bool idxRight(Cursor & cur) const; + /// move cursor backwards + bool idxBackward(Cursor & cur) const; + /// move cursor forward + bool idxForward(Cursor & cur) const; /// move cursor up or down bool idxUpDown(Cursor & cur, bool up) const; /// Target pos when we enter the inset while moving forward @@ -60,8 +62,10 @@ public: void maple(MapleStream &) const; /// write content as something readable by Mathematica void mathematica(MathematicaStream &) const; - /// write content as something resembling MathML + /// write content as MathML void mathmlize(MathStream &) const; + /// write content as HTML + void htmlize(HtmlStream &) const; /// write content as something readable by Octave void octave(OctaveStream &) const; @@ -102,8 +106,15 @@ public: void infoize(odocstream & os) const; /// say whether we have displayed limits void infoize2(odocstream & os) const; + /// + InsetCode lyxCode() const { return MATH_SCRIPT_CODE; } + /// + void validate(LaTeXFeatures &features) const; protected: 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: virtual Inset * clone() const; /// returns x offset for main part @@ -125,11 +136,11 @@ private: /// returns descent of nucleus if any int ndes(BufferView const &) const; /// returns superscript kerning of nucleus if any - int nker() const; + int nker(BufferView const * bv) const; /// where do we have to draw the scripts? bool hasLimits() const; /// clean up empty cells and return true if a cell has been deleted. - bool notifyCursorLeaves(Cursor & cur); + bool notifyCursorLeaves(Cursor const & old, Cursor & cur); /// possible subscript (index 0) and superscript (index 1) bool cell_1_is_up_; @@ -138,6 +149,6 @@ private: }; - } // namespace lyx + #endif