]> git.lyx.org Git - lyx.git/blobdiff - src/mathed/math_extern.C
more IU
[lyx.git] / src / mathed / math_extern.C
index d719c8af69767870abed6abed84d97467e07f6ec..ab7e39c904e03d219b88a6e8d6c12663fc536bed 100644 (file)
@@ -18,6 +18,7 @@
 #include "math_arrayinset.h"
 #include "math_charinset.h"
 #include "math_deliminset.h"
+#include "math_data.h"
 #include "math_diffinset.h"
 #include "math_exfuncinset.h"
 #include "math_exintinset.h"
 
 #include <algorithm>
 
-using namespace lyx::support;
+using lyx::support::cmd_ret;
+using lyx::support::getVectorFromString;
+using lyx::support::LibFileSearch;
+using lyx::support::RunCommand;
+using lyx::support::subst;
 
-using std::ostream;
-using std::istringstream;
-using std::find_if;
+using std::string;
 using std::endl;
+using std::find_if;
+using std::auto_ptr;
+using std::istringstream;
+using std::ostream;
+using std::ostringstream;
 
 
 ostream & operator<<(ostream & os, MathArray const & ar)
@@ -281,13 +289,13 @@ void splitScripts(MathArray & ar)
 
                // create extra script inset and move superscript over
                MathScriptInset * p = ar[i].nucleus()->asScriptInset();
-               MathScriptInset * q = new MathScriptInset(true);
+               auto_ptr<MathScriptInset> q(new MathScriptInset(true));
                std::swap(q->up(), p->up());
                p->removeScript(true);
 
                // insert new inset behind
                ++i;
-               ar.insert(i, MathAtom(q));
+               ar.insert(i, MathAtom(q.release()));
        }
        //lyxerr << "\nScripts to: " << ar << endl;
 }
@@ -456,13 +464,13 @@ void extractFunctions(MathArray & ar)
                extractScript(exp, jt, ar.end());
 
                // create a proper inset as replacement
-               MathExFuncInset * p = new MathExFuncInset(name);
+               auto_ptr<MathExFuncInset> p(new MathExFuncInset(name));
 
                // jt points to the "argument". Get hold of this.
                MathArray::iterator st = extractArgument(p->cell(0), jt, ar.end());
 
                // replace the function name by a real function inset
-               *it = MathAtom(p);
+               *it = MathAtom(p.release());
 
                // remove the source of the argument from the array
                ar.erase(it + 1, st);
@@ -532,7 +540,7 @@ void extractIntegrals(MathArray & ar)
                        continue;
 
                // core ist part from behind the scripts to the 'd'
-               MathExIntInset * p = new MathExIntInset("int");
+               auto_ptr<MathExIntInset> p(new MathExIntInset("int"));
 
                // handle scripts if available
                if (!testIntSymbol(*it)) {
@@ -546,7 +554,7 @@ void extractIntegrals(MathArray & ar)
 
                // remove used parts
                ar.erase(it + 1, tt);
-               *it = MathAtom(p);
+               *it = MathAtom(p.release());
        }
        //lyxerr << "\nIntegrals to: " << ar << endl;
 }
@@ -596,7 +604,7 @@ void extractSums(MathArray & ar)
                        continue;
 
                // create a proper inset as replacement
-               MathExIntInset * p = new MathExIntInset("sum");
+               auto_ptr<MathExIntInset> p(new MathExIntInset("sum"));
 
                // collect lower bound and summation index
                MathScriptInset const * sub = ar[i]->asScriptInset();
@@ -625,7 +633,7 @@ void extractSums(MathArray & ar)
 
                // cleanup
                ar.erase(it + 1, tt);
-               *it = MathAtom(p);
+               *it = MathAtom(p.release());
        }
        //lyxerr << "\nSums to: " << ar << endl;
 }
@@ -674,7 +682,7 @@ void extractDiff(MathArray & ar)
                }
 
                // create a proper diff inset
-               MathDiffInset * diff = new MathDiffInset;
+               auto_ptr<MathDiffInset> diff(new MathDiffInset);
 
                // collect function, let jt point behind last used item
                MathArray::iterator jt = it + 1;
@@ -723,7 +731,7 @@ void extractDiff(MathArray & ar)
 
                // cleanup
                ar.erase(it + 1, jt);
-               *it = MathAtom(diff);
+               *it = MathAtom(diff.release());
        }
        //lyxerr << "\nDiffs to: " << ar << endl;
 }
@@ -931,7 +939,7 @@ namespace {
                ostringstream os;
                MaximaStream ms(os);
                ms << ar;
-               string expr = STRCONV(os.str());
+               string expr = os.str();
                string const header = "SIMPSUM:true;";
 
                string out;
@@ -1054,7 +1062,7 @@ namespace {
                ostringstream os;
                MapleStream ms(os);
                ms << ar;
-               string expr = STRCONV(os.str());
+               string expr = os.str();
                lyxerr << "ar: '" << ar << "'\n"
                       << "ms: '" << os.str() << "'" << endl;
 
@@ -1102,7 +1110,7 @@ namespace {
                ostringstream os;
                OctaveStream vs(os);
                vs << ar;
-               string expr = STRCONV(os.str());
+               string expr = os.str();
                string out;
 
                lyxerr << "pipe: ar: '" << ar << "'\n"
@@ -1186,7 +1194,7 @@ MathArray pipeThroughExtern(string const & lang, string const & extra,
        os << '[' << extra << ' ';
        ns << ar;
        os << ']';
-       string data = STRCONV(os.str());
+       string data = os.str();
 
        // search external script
        string file = LibFileSearch("mathed", "extern_" + lang);