X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fmathed%2FInsetMathSpace.h;h=4f16f1640bf5b38b949c2a6c5c4f3e2d294e4c88;hb=2de30c62f8d671a8c8d4d52a6a7310e2c5ca84de;hp=579f29a3ab104ea675b33002504e33a254a2bea5;hpb=237c132c1e6fc720b87f2fea6deb18a8395cbe0a;p=lyx.git diff --git a/src/mathed/InsetMathSpace.h b/src/mathed/InsetMathSpace.h index 579f29a3ab..4f16f1640b 100644 --- a/src/mathed/InsetMathSpace.h +++ b/src/mathed/InsetMathSpace.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. */ @@ -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_; };