]> git.lyx.org Git - lyx.git/blobdiff - src/mathed/math_extern.C
Change the color of the background widget to red.
[lyx.git] / src / mathed / math_extern.C
index 8f26fd7c5e5e3d66da7cd2fe0b33cdf398dcfb9f..99e381d78aaf7cee47c9e96e39c52135d44a4582 100644 (file)
@@ -44,12 +44,15 @@ using lyx::support::LibFileSearch;
 using lyx::support::RunCommand;
 using lyx::support::subst;
 
+using std::string;
 using std::endl;
 using std::find_if;
-
+using std::auto_ptr;
 using std::istringstream;
 using std::ostream;
 using std::ostringstream;
+using std::swap;
+using std::vector;
 
 
 ostream & operator<<(ostream & os, MathArray const & ar)
@@ -145,7 +148,7 @@ string charSequence
 void extractStrings(MathArray & ar)
 {
        //lyxerr << "\nStrings from: " << ar << endl;
-       for (MathArray::size_type i = 0; i < ar.size(); ++i) {
+       for (size_t i = 0; i < ar.size(); ++i) {
                if (!ar[i]->asCharInset())
                        continue;
                string s = charSequence(ar.begin() + i, ar.end());
@@ -160,7 +163,7 @@ void extractMatrices(MathArray & ar)
 {
        //lyxerr << "\nMatrices from: " << ar << endl;
        // first pass for explicitly delimited stuff
-       for (MathArray::size_type i = 0; i < ar.size(); ++i) {
+       for (size_t i = 0; i < ar.size(); ++i) {
                if (!ar[i]->asDelimInset())
                        continue;
                MathArray const & arr = ar[i]->asDelimInset()->cell(0);
@@ -172,7 +175,7 @@ void extractMatrices(MathArray & ar)
        }
 
        // second pass for AMS "pmatrix" etc
-       for (MathArray::size_type i = 0; i < ar.size(); ++i)
+       for (size_t i = 0; i < ar.size(); ++i)
                if (ar[i]->asAMSArrayInset())
                        ar[i] = MathAtom(new MathMatrixInset(*(ar[i]->asGridInset())));
        //lyxerr << "\nMatrices to: " << ar << endl;
@@ -248,7 +251,7 @@ void replaceNested(
 {
        // use indices rather than iterators for the loop  because we are going
        // to modify the array.
-       for (MathArray::size_type i = 0; i < ar.size(); ++i) {
+       for (size_t i = 0; i < ar.size(); ++i) {
                // check whether this is the begin of the sequence
                if (!testOpen(ar[i]))
                        continue;
@@ -275,7 +278,7 @@ void replaceNested(
 void splitScripts(MathArray & ar)
 {
        //lyxerr << "\nScripts from: " << ar << endl;
-       for (MathArray::size_type i = 0; i < ar.size(); ++i) {
+       for (size_t i = 0; i < ar.size(); ++i) {
                // is this script inset?
                if (!ar[i]->asScriptInset())
                        continue;
@@ -288,13 +291,13 @@ void splitScripts(MathArray & ar)
 
                // create extra script inset and move superscript over
                MathScriptInset * p = ar[i].nucleus()->asScriptInset();
-               MathScriptInset * q = new MathScriptInset(true);
-               std::swap(q->up(), p->up());
+               auto_ptr<MathScriptInset> q(new MathScriptInset(true));
+               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;
 }
@@ -307,7 +310,7 @@ void splitScripts(MathArray & ar)
 void extractExps(MathArray & ar)
 {
        //lyxerr << "\nExps from: " << ar << endl;
-       for (MathArray::size_type i = 0; i + 1 < ar.size(); ++i) {
+       for (size_t i = 0; i + 1 < ar.size(); ++i) {
                // is this 'e'?
                if (ar[i]->getChar() != 'e')
                        continue;
@@ -370,7 +373,7 @@ string digitSequence
 void extractNumbers(MathArray & ar)
 {
        //lyxerr << "\nNumbers from: " << ar << endl;
-       for (MathArray::size_type i = 0; i < ar.size(); ++i) {
+       for (size_t i = 0; i < ar.size(); ++i) {
                if (!ar[i]->asCharInset())
                        continue;
                if (!isDigitOrSimilar(ar[i]->asCharInset()->getChar()))
@@ -432,7 +435,7 @@ void extractFunctions(MathArray & ar)
                return;
 
        //lyxerr << "\nFunctions from: " << ar << endl;
-       for (MathArray::size_type i = 0; i + 1 < ar.size(); ++i) {
+       for (size_t i = 0; i + 1 < ar.size(); ++i) {
                MathArray::iterator it = ar.begin() + i;
                MathArray::iterator jt = it + 1;
 
@@ -463,13 +466,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);
@@ -523,7 +526,7 @@ void extractIntegrals(MathArray & ar)
                return;
 
        //lyxerr << "\nIntegrals from: " << ar << endl;
-       for (MathArray::size_type i = 0; i + 1 < ar.size(); ++i) {
+       for (size_t i = 0; i + 1 < ar.size(); ++i) {
                MathArray::iterator it = ar.begin() + i;
 
                // search 'd'
@@ -539,7 +542,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)) {
@@ -553,7 +556,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;
 }
@@ -595,7 +598,7 @@ void extractSums(MathArray & ar)
                return;
 
        //lyxerr << "\nSums from: " << ar << endl;
-       for (MathArray::size_type i = 0; i + 1 < ar.size(); ++i) {
+       for (size_t i = 0; i + 1 < ar.size(); ++i) {
                MathArray::iterator it = ar.begin() + i;
 
                // is this a sum name?
@@ -603,7 +606,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();
@@ -632,7 +635,7 @@ void extractSums(MathArray & ar)
 
                // cleanup
                ar.erase(it + 1, tt);
-               *it = MathAtom(p);
+               *it = MathAtom(p.release());
        }
        //lyxerr << "\nSums to: " << ar << endl;
 }
@@ -667,7 +670,7 @@ bool testDiffFrac(MathAtom const & at)
 void extractDiff(MathArray & ar)
 {
        //lyxerr << "\nDiffs from: " << ar << endl;
-       for (MathArray::size_type i = 0; i < ar.size(); ++i) {
+       for (size_t i = 0; i < ar.size(); ++i) {
                MathArray::iterator it = ar.begin() + i;
 
                // is this a "differential fraction"?
@@ -681,7 +684,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;
@@ -730,7 +733,7 @@ void extractDiff(MathArray & ar)
 
                // cleanup
                ar.erase(it + 1, jt);
-               *it = MathAtom(diff);
+               *it = MathAtom(diff.release());
        }
        //lyxerr << "\nDiffs to: " << ar << endl;
 }
@@ -757,7 +760,7 @@ void extractLims(MathArray & ar)
                return;
 
        //lyxerr << "\nLimits from: " << ar << endl;
-       for (MathArray::size_type i = 0; i + 2 < ar.size(); ++i) {
+       for (size_t i = 0; i + 2 < ar.size(); ++i) {
                MathArray::iterator it = ar.begin() + i;
 
                // is this a limit function?
@@ -981,7 +984,7 @@ namespace {
                        expr.insert(pos,  "*");
                }
 
-               std::vector<string> tmp = getVectorFromString(out, "$$");
+               vector<string> tmp = getVectorFromString(out, "$$");
                if (tmp.size() < 2)
                        return MathArray();