]> git.lyx.org Git - lyx.git/blobdiff - src/mathed/InsetMathColor.h
* ca/Intro.lyx from Daniel
[lyx.git] / src / mathed / InsetMathColor.h
index f8a2bdffbe719234ef8da90e5e92f9b66f8fa581..c09e14a117e5b02af1886123ced194694d1d5126 100644 (file)
@@ -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.
  */
@@ -14,7 +14,6 @@
 
 #include "InsetMathNest.h"
 
-#include "support/docstream.h"
 
 namespace lyx {
 
@@ -23,33 +22,41 @@ namespace lyx {
 class InsetMathColor : public InsetMathNest {
 public:
        /// Create a color inset from LyX color number
-       explicit InsetMathColor(bool oldstyle,
-               ColorCode color = Color_none);
+       InsetMathColor(Buffer * buf, bool oldstyle, ColorCode color = Color_none);
        /// Create a color inset from LaTeX color name
-       explicit InsetMathColor(bool oldstyle, docstring const & color);
+       InsetMathColor(Buffer * buf, bool oldstyle, docstring const & color);
        ///
-       void metrics(MetricsInfo & mi, Dimension & dim) const;
+       void metrics(MetricsInfo & mi, Dimension & dim) const override;
        /// we write extra braces in any case...
        /// FIXME Why? Are they necessary if oldstyle_ == false?
-       bool extraBraces() const { return true; }
+       bool extraBraces() const override { return true; }
        ///
-       void draw(PainterInfo & pi, int x, int y) const;
+       void draw(PainterInfo & pi, int x, int y) const override;
        /// we need package color
-       void validate(LaTeXFeatures & features) const;
+       void validate(LaTeXFeatures & features) const override;
+       /// we inherit the mode
+       mode_type currentMode() const override { return current_mode_; }
+       ///
+       void write(TeXMathStream & os) const override;
+       /// FIXME XHTML For now, we do nothing with color.
+       void mathmlize(MathMLStream &) const override {}
+       /// FIXME XHTML For now, we do nothing with color.
+       void htmlize(HtmlStream &) const override {}
        ///
-       void write(WriteStream & os) const;
        /// write normalized content
-       void normalize(NormalStream & ns) const;
+       void normalize(NormalStream & ns) const override;
+       ///
+       void infoize(odocstream & os) const override;
        ///
-       void infoize(odocstream & os) const;
+       InsetCode lyxCode() const override { return MATH_COLOR_CODE; }
 private:
-       virtual Inset * clone() const;
-       /// width of '[' in current font
-       mutable int w_;
+       Inset * clone() const override;
        ///
        bool oldstyle_;
        /// Our color. Only valid LaTeX colors are allowed.
        docstring color_;
+       /// the inherited mode
+       mutable mode_type current_mode_;
 };