]> git.lyx.org Git - lyx.git/blob - src/mathed/math_macrotemplate.h
rename math_(root|grid).[Ch] to math_(root|grid)inset.[Ch]
[lyx.git] / src / mathed / math_macrotemplate.h
1 // -*- C++ -*-
2 #ifndef MATH_MACROTEMPLATE_H
3 #define MATH_MACROTEMPLATE_H
4
5 #include <set>
6
7 #include "math_inset.h"
8
9 #ifdef __GNUG__
10 #pragma interface
11 #endif
12
13 class MathMacro;
14
15 /** This class contains the macro definition
16     \author Alejandro Aguilar Sierra
17  */
18 //class MathMacroTemplate : public MathInset, boost::noncopyable 
19
20 class MathMacroTemplate : public MathInset {
21 public:
22         ///
23         MathMacroTemplate();
24         ///
25         MathMacroTemplate(string const & name, int nargs);
26         ///
27         MathInset * clone() const;
28         ///
29         void Write(std::ostream &, bool fragile) const;
30         /// Number of arguments
31         int numargs() const;
32         ///
33         void numargs(int);
34         ///
35         void draw(Painter &, int, int);
36         ///
37         void Metrics(MathStyles st, int asc = 0, int des = 0);
38 private:
39         ///
40         int numargs_;
41         ///
42         std::set<MathMacro *> users_;
43
44         /// unimplemented
45         void operator=(MathMacroTemplate const &);
46         /// unimplemented
47         //MathMacroTemplate(MathMacroTemplate const &);
48 };
49
50 #endif