]> git.lyx.org Git - lyx.git/blob - src/mathed/math_macrotemplate.h
new hierarchy for frac-like things
[lyx.git] / src / mathed / math_macrotemplate.h
1 // -*- C++ -*-
2 #ifndef MATH_MACROTEMPLATE_H
3 #define MATH_MACROTEMPLATE_H
4
5 #include "math_nestinset.h"
6
7 #ifdef __GNUG__
8 #pragma interface
9 #endif
10
11 class MathMacro;
12
13 /** This class contains the macro definition
14     \author Alejandro Aguilar Sierra
15  */
16 //class MathMacroTemplate : public MathInset, boost::noncopyable 
17
18 class MathMacroTemplate : public MathNestInset {
19 public:
20         ///
21         MathMacroTemplate();
22         ///
23         MathMacroTemplate(string const & name, int nargs);
24         ///
25         MathInset * clone() const;
26         ///
27         void write(std::ostream &, bool fragile) const;
28         /// Number of arguments
29         int numargs() const;
30         ///
31         void numargs(int);
32         ///
33         string const & name() const;
34         ///
35         void draw(Painter &, int x, int y) const;
36         ///
37         void metrics(MathStyles st) const;
38 private:
39         ///
40         int numargs_;
41         ///
42         string name_;
43 };
44
45 #endif