math_defs.h \
math_deliminset.C \
math_deliminset.h \
+ math_diffinset.C \
+ math_diffinset.h \
math_diminset.C \
math_diminset.h \
math_dotsinset.C \
--- /dev/null
+#include "math_diffinset.h"
+#include "math_support.h"
+#include "math_mathmlstream.h"
+#include "math_symbolinset.h"
+#include "debug.h"
+
+
+MathDiffInset::MathDiffInset()
+ : MathNestInset(1)
+{}
+
+
+MathInset * MathDiffInset::clone() const
+{
+ return new MathDiffInset(*this);
+}
+
+
+void MathDiffInset::addDer(MathArray const & der)
+{
+ cells_.push_back(MathXArray());
+ cells_.back().data_ = der;
+}
+
+
+void MathDiffInset::normalize(NormalStream & os) const
+{
+ os << "[diff";
+ for (idx_type idx = 0; idx < nargs(); ++idx)
+ os << ' ' << cell(idx);
+ os << ']';
+}
+
+
+void MathDiffInset::metrics(MathMetricsInfo const &) const
+{
+ lyxerr << "should not happen\n";
+}
+
+
+void MathDiffInset::draw(Painter &, int, int) const
+{
+ lyxerr << "should not happen\n";
+}
+
+
+void MathDiffInset::maplize(MapleStream & os) const
+{
+ os << "diff(";
+ for (idx_type idx = 0; idx < nargs(); ++idx) {
+ if (idx != 0)
+ os << ',';
+ os << cell(idx);
+ }
+ os << ')';
+}
+
+
+void MathDiffInset::mathmlize(MathMLStream & os) const
+{
+ os << "diff(";
+ for (idx_type idx = 0; idx < nargs(); ++idx) {
+ if (idx != 0)
+ os << ',';
+ os << cell(idx);
+ }
+ os << ')';
+}
+
+
+void MathDiffInset::write(WriteStream &) const
+{
+ lyxerr << "should not happen\n";
+}
+
--- /dev/null
+// -*- C++ -*-
+#ifndef MATH_DIFFINSET_H
+#define MATH_DIFFINSET_H
+
+// d f(x)/dx in one block
+// for interfacing external programs
+
+#include "math_nestinset.h"
+
+class MathDiffInset : public MathNestInset {
+public:
+ ///
+ explicit MathDiffInset();
+ ///
+ MathInset * clone() const;
+ ///
+ void addDer(MathArray const & der);
+ ///
+ void metrics(MathMetricsInfo const & st) const;
+ ///
+ void draw(Painter &, int x, int y) const;
+
+ ///
+ void normalize(NormalStream &) const;
+ ///
+ void maplize(MapleStream &) const;
+ ///
+ void mathmlize(MathMLStream &) const;
+ ///
+ void write(WriteStream & os) const;
+};
+
+#endif
#include "math_exintinset.h"
#include "math_support.h"
-#include "debug.h"
#include "math_mathmlstream.h"
#include "math_symbolinset.h"
+#include "debug.h"
MathExIntInset::MathExIntInset(string const & name)
}
+//
+// search differential stuff
+//
+
+void extractDiff(MathArray & ar)
+{
+ lyxerr << "\nDiffs from: " << ar << "\n";
+ lyxerr << "\nDiffs to: " << ar << "\n";
+}
+
+//
+// combine searches
+//
+
void extractStructure(MathArray & ar)
{
extractMatrices(ar);
extractFunctions(ar);
extractIntegrals(ar);
extractSums(ar);
+ extractDiff(ar);
extractStrings(ar);
}
void MathFracInset::maplize(MapleStream & os) const
{
- os << '(' << cell(0) << '/' << cell(1) << ')';
+ os << '(' << cell(0) << ")/(" << cell(1) << ')';
}