]> git.lyx.org Git - lyx.git/blobdiff - src/mathed/math_macroarg.h
updates to latexfeatures stuff; allow empty \document_path
[lyx.git] / src / mathed / math_macroarg.h
index be95ec0716c9920fec91e270109900aa20e0ec14..b200bcc5045fbf18d510c13b49fc3f7b9d46799e 100644 (file)
@@ -2,36 +2,44 @@
 #ifndef MATHMACROARGUMENT_H
 #define MATHMACROARGUMENT_H
 
-#include "math_parinset.h"
+#include "math_nestinset.h"
 
-/// An argument
-class MathMacroArgument: public MathParInset {
+#ifdef __GNUG__
+#pragma interface
+#endif
+
+/** A macro argument
+    \author Alejandro Aguilar Sierra
+*/
+class MathMacroArgument : public MathNestInset {
 public:
-    ///
-    MathMacroArgument();
-    ///
-    explicit
-    MathMacroArgument(int);
-    ///
-    ~MathMacroArgument();
-    ///
-    MathedInset * Clone();
-    ///
-    void Metrics();
-    ///
-    void draw(Painter &, int x, int baseline);
-    ///
-    void Write(std::ostream &, bool fragile);
-    ///
-    void setNumber(int n);
-    /// Is expanded or not
-    void setExpand(bool e);
-    /// Is expanded or not
-    bool getExpand() const;
+       ///
+       explicit MathMacroArgument(int);
+       ///
+       MathInset * clone() const;
+       ///
+       bool isActive() const { return false; }
+       ///
+       void metrics(MathMetricsInfo const & st) const;
+       ///
+       void draw(Painter &, int x, int y) const;
+       ///
+       void substitute(MathMacro const & macro);
+
+       ///
+       void normalize(NormalStream &) const;
+       ///
+       void write(WriteStream & os) const;
+
 private:
-    ///
-    bool expnd_mode_;
-    ///
-    int number_;
+       /// A number between 1 and 9
+       int number_;
+       ///
+       char str_[3];
+       ///
+       bool expanded_;
+       ///
+       mutable MathMetricsInfo mi_;
 };
+
 #endif