]> git.lyx.org Git - lyx.git/blob - src/mathed/math_diffinset.C
Prepare mathed for unified two-stage drawing
[lyx.git] / src / mathed / math_diffinset.C
1
2 #include "math_diffinset.h"
3 #include "math_support.h"
4 #include "math_mathmlstream.h"
5 #include "math_symbolinset.h"
6 #include "debug.h"
7
8
9 MathDiffInset::MathDiffInset()
10         : MathNestInset(1)
11 {}
12
13
14 MathInset * MathDiffInset::clone() const
15 {
16         return new MathDiffInset(*this);
17 }
18
19
20 void MathDiffInset::addDer(MathArray const & der)
21 {
22         cells_.push_back(der);
23 }
24
25
26 void MathDiffInset::normalize(NormalStream & os) const
27 {
28         os << "[diff";
29         for (idx_type idx = 0; idx < nargs(); ++idx)
30                 os << ' ' << cell(idx);
31         os << ']';
32 }
33
34
35 Dimension MathDiffInset::metrics(MetricsInfo &) const
36 {
37         lyxerr << "should not happen\n";
38         return Dimension();
39 }
40
41
42 void MathDiffInset::draw(PainterInfo &, int, int) const
43 {
44         lyxerr << "should not happen\n";
45 }
46
47
48 void MathDiffInset::maple(MapleStream & os) const
49 {
50         os << "diff(";
51         for (idx_type idx = 0; idx < nargs(); ++idx) {
52                 if (idx != 0)
53                         os << ',';
54                 os << cell(idx);
55         }
56         os << ')';
57 }
58
59
60 void MathDiffInset::mathematica(MathematicaStream & os) const
61 {
62         os << "Dt[";
63         for (idx_type idx = 0; idx < nargs(); ++idx) {
64                 if (idx != 0)
65                         os << ',';
66                 os << cell(idx);
67         }
68         os << ']';
69 }
70
71
72 void MathDiffInset::mathmlize(MathMLStream & os) const
73 {
74         os << "diff(";
75         for (idx_type idx = 0; idx < nargs(); ++idx) {
76                 if (idx != 0)
77                         os << ',';
78                 os << cell(idx);
79         }
80         os << ')';
81 }
82
83
84 void MathDiffInset::write(WriteStream &) const
85 {
86         lyxerr << "should not happen\n";
87 }