X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fmathed%2Fmath_fracinset.h;h=90ea9c9fd755026bb7c5d378b6861ff1e3c6353b;hb=3e93baac3cd18e27db3eb2a1fcaf90b25e0918a6;hp=4a3e7ab8e841b24e51f9fd2d84c08ac7c4ad1a4f;hpb=9ccefe810b24031894fff8cf3dd39c1bc7f31241;p=lyx.git diff --git a/src/mathed/math_fracinset.h b/src/mathed/math_fracinset.h index 4a3e7ab8e8..90ea9c9fd7 100644 --- a/src/mathed/math_fracinset.h +++ b/src/mathed/math_fracinset.h @@ -1,46 +1,56 @@ // -*- C++ -*- +/** + * \file math_fracinset.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 MATH_FRACINSET_H #define MATH_FRACINSET_H -#include "math_inset.h" +#include "math_fracbase.h" -#ifdef __GNUG__ -#pragma interface -#endif -/** Fraction like objects (frac, stackrel, binom) - \author Alejandro Aguilar Sierra - */ -class MathFracInset : public MathInset { +/// Fraction like objects (frac, binom) +class MathFracInset : public MathFracbaseInset { public: /// - explicit MathFracInset(const string & name); + explicit MathFracInset(bool atop = false); /// - virtual MathInset * clone() const; + virtual std::auto_ptr clone() const; /// - virtual void Write(std::ostream &, bool fragile) const; + void metrics(MetricsInfo & mi, Dimension & dim) const; /// - virtual void WriteNormal(std::ostream &) const; + void draw(PainterInfo &, int x, int y) const; /// - virtual void Metrics(MathStyles st); + void metricsT(TextMetricsInfo const & mi, Dimension & dim) const; /// - virtual void draw(Painter &, int x, int baseline); + void drawT(TextPainter &, int x, int y) const; + /// identifies FracInsets + MathFracInset * asFracInset(); + /// identifies FracInsets + MathFracInset const * asFracInset() const; /// - virtual bool idxUp(int &, int &) const; - /// - virtual bool idxDown(int &, int &) const; + std::string name() const; + /// - virtual bool idxLeft(int &, int &) const; + void write(WriteStream & os) const; /// - virtual bool idxRight(int &, int &) const; + void maple(MapleStream &) const; /// - virtual bool idxFirstUp(int & idx, int & pos) const; + void mathematica(MathematicaStream &) const; /// - virtual bool idxFirstDown(int & idx, int & pos) const; + void octave(OctaveStream &) const; /// - virtual bool idxLastUp(int & idx, int & pos) const; + void mathmlize(MathMLStream &) const; +public: /// - virtual bool idxLastDown(int & idx, int & pos) const; + const bool atop_; }; #endif