X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fmathed%2FInsetMathSpace.h;h=4f16f1640bf5b38b949c2a6c5c4f3e2d294e4c88;hb=ad79ac406f9c8fc85880cfeb5416b0299ee9a617;hp=eb89e8c50c7f8f404880a4f0431c6d25592a3469;hpb=f1cba8ff64b369792fd49f5ddf90e8126ab476ac;p=lyx.git diff --git a/src/mathed/InsetMathSpace.h b/src/mathed/InsetMathSpace.h index eb89e8c50c..4f16f1640b 100644 --- a/src/mathed/InsetMathSpace.h +++ b/src/mathed/InsetMathSpace.h @@ -13,18 +13,22 @@ #define MATH_SPACEINSET_H #include "InsetMath.h" +#include "Length.h" namespace lyx { +struct InsetSpaceParams; /// Smart spaces class InsetMathSpace : public InsetMath { public: /// - explicit InsetMathSpace(int sp); + explicit InsetMathSpace(); /// - explicit InsetMathSpace(docstring const & name); + explicit InsetMathSpace(std::string const & name, std::string const & length); + /// + explicit InsetMathSpace(Length const & length, bool const prot = false); /// InsetMathSpace const * asSpaceInset() const { return this; } /// @@ -47,13 +51,33 @@ public: /// void octave(OctaveStream &) const; /// + void mathmlize(MathStream & ms) const; + /// + void htmlize(HtmlStream & ms) const; + /// void write(WriteStream & os) const; + /// generate something that will be understood by the Dialogs. + InsetSpaceParams params() const; + /// + bool hasSettings() const { return true; } + /// + std::string contextMenuName() const; + /// + bool getStatus(Cursor &, FuncRequest const &, FuncStatus &) const; + /// + InsetCode lyxCode() const { return MATH_SPACE_CODE; } + +protected: + /// + virtual void doDispatch(Cursor & cur, FuncRequest & cmd); private: virtual Inset * clone() const; /// - int space_; + bool isNegative() const; /// - Dimension dim_; + int space_; + /// amount of space for \\hspace + Length length_; };