]> git.lyx.org Git - lyx.git/blob - src/mathed/math_exintinset.h
add #pragme interface/implementation
[lyx.git] / src / mathed / math_exintinset.h
1 // -*- C++ -*-
2 #ifndef MATH_EXINTINSET_H
3 #define MATH_EXINTINSET_H
4
5 #ifdef __GNUG__
6 #pragma interface
7 #endif
8
9 // \int_l^u f(x) dx in one block (as opposed to 'f','(','x',')' or 'f','x')
10 // or \sum, \prod...  for interfacing external programs
11
12 #include "math_nestinset.h"
13
14 // cell(0) is stuff before the 'd', cell(1) the stuff after
15 class MathExIntInset : public MathNestInset {
16 public:
17         ///
18         explicit MathExIntInset(string const & name_);
19         ///
20         MathInset * clone() const;
21         ///
22         void symbol(string const &);
23         ///
24         void metrics(MathMetricsInfo & st) const;
25         ///
26         void draw(MathPainterInfo &, int x, int y) const;
27
28         ///
29         void normalize(NormalStream &) const;
30         ///
31         void maplize(MapleStream &) const;
32         ///
33         void mathematicize(MathematicaStream &) const;
34         ///
35         void mathmlize(MathMLStream &) const;
36         ///
37         void write(WriteStream & os) const;
38 private:
39         ///
40         bool hasScripts() const;
41
42         ///
43         string symbol_;
44 };
45
46 #endif