+ ///
+ enum Kind {
+ BINOM,
+ DBINOM,
+ TBINOM,
+ CHOOSE,
+ BRACE,
+ BRACK
+ };
+ ///
+ explicit InsetMathBinom(Buffer * buf, Kind kind = BINOM);
+ ///
+ void write(WriteStream & os) const;
+ ///
+ void normalize(NormalStream &) const;
+ /// Generalized fractions are of inner class (see The TeXbook, p.292)
+ MathClass mathClass() const { return MC_INNER; }
+ ///
+ void metrics(MetricsInfo & mi, Dimension & dim) const;
+ ///
+ void draw(PainterInfo &, int x, int y) const;
+ /// draw decorations.
+ void drawDecoration(PainterInfo & pi, int x, int y) const
+ { drawMarkers2(pi, x, y); }
+ ///
+ bool extraBraces() const;
+ ///
+ void mathmlize(MathStream &) const;
+ ///
+ void htmlize(HtmlStream &) const;
+ ///
+ void validate(LaTeXFeatures & features) const;
+ ///
+ InsetCode lyxCode() const { return MATH_FRAC_CODE; }
+private:
+ Inset * clone() const;
+ ///
+ int dw(int height) const;