X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fmathed%2Fmath_macroarg.h;h=d7d763d878a1e74eb949921b80b8e20c2ed93afc;hb=3e93baac3cd18e27db3eb2a1fcaf90b25e0918a6;hp=1129c2972a35e72c2b853d0aaf9dcec816943e3c;hpb=2be247f6ef5e35f27a41d92a88790357875c66bd;p=lyx.git diff --git a/src/mathed/math_macroarg.h b/src/mathed/math_macroarg.h index 1129c2972a..d7d763d878 100644 --- a/src/mathed/math_macroarg.h +++ b/src/mathed/math_macroarg.h @@ -1,41 +1,47 @@ // -*- C++ -*- +/** + * \file math_macroarg.h + * This file is part of LyX, the document processor. + * Licence details can be found in the file COPYING. + * + * \author Alejandro Aguilar Sierra + * \author André Pönitz + * + * Full author contact details are available in file CREDITS. + */ + #ifndef MATHMACROARGUMENT_H #define MATHMACROARGUMENT_H -#include "math_parinset.h" +#include "math_diminset.h" -#ifdef __GNUG__ -#pragma interface -#endif -/** A macro argument - \author Alejandro Aguilar Sierra -*/ -class MathMacroArgument: public MathParInset { +/// A macro argument. +class MathMacroArgument : public MathDimInset { public: /// - MathMacroArgument(); + explicit MathMacroArgument(std::size_t); /// - explicit - MathMacroArgument(int); + std::auto_ptr clone() const; /// - MathedInset * Clone(); + void metrics(MetricsInfo & mi, Dimension & dim) const; /// - void Metrics(); + void draw(PainterInfo &, int x, int y) const; /// - void draw(Painter &, int x, int baseline); + std::size_t number() const { return number_; } /// - void Write(std::ostream &, bool fragile); + InsetBase::Code lyxCode() const { return MATHMACROARG_CODE; } + /// - void setNumber(int n); - /// Is expanded or not - void setExpand(bool e); - /// Is expanded or not - bool getExpand() const; -private: + void normalize(NormalStream &) const; /// - bool expnd_mode_; + void write(WriteStream & os) const; + +private: + /// A number between 1 and 9 + std::size_t number_; /// - int number_; + char str_[3]; }; + #endif