X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fmathed%2Fmath_nestinset.C;h=fc316df70ca69566088d5ddc47a36fd1c3298299;hb=7435fca771bf7c8b4ca5d1801162f8c23112f3cf;hp=7738433acb0e4604c1ea407a071ebd4d4f685743;hpb=8b7b3a589507e2bed9777f2854ea731c454492e4;p=lyx.git diff --git a/src/mathed/math_nestinset.C b/src/mathed/math_nestinset.C index 7738433acb..fc316df70c 100644 --- a/src/mathed/math_nestinset.C +++ b/src/mathed/math_nestinset.C @@ -6,55 +6,52 @@ #include "debug.h" -MathNestInset::MathNestInset(int nargs, string const & name) +MathNestInset::MathNestInset(unsigned int nargs) : MathDimInset(), cells_(nargs) -{ - name_ = name; -} +{} -int MathNestInset::nargs() const +unsigned int MathNestInset::nargs() const { return cells_.size(); } -MathXArray & MathNestInset::xcell(int i) +MathXArray & MathNestInset::xcell(unsigned int i) { return cells_[i]; } -MathXArray const & MathNestInset::xcell(int i) const +MathXArray const & MathNestInset::xcell(unsigned int i) const { return cells_[i]; } -MathArray & MathNestInset::cell(int i) +MathArray & MathNestInset::cell(unsigned int i) { return cells_[i].data_; } -MathArray const & MathNestInset::cell(int i) const +MathArray const & MathNestInset::cell(unsigned int i) const { return cells_[i].data_; } -void MathNestInset::substitute(MathArray & array, MathMacro const & m) const +void MathNestInset::substitute(MathMacro const & m) { - array.push_back(clone()); - for (int i = 0; i < nargs(); ++i) - array.back()->cell(i).substitute(m); + for (unsigned int i = 0; i < nargs(); ++i) + cell(i).substitute(m); } void MathNestInset::metrics(MathStyles st) const { size_ = st; - for (int i = 0; i < nargs(); ++i) + for (unsigned int i = 0; i < nargs(); ++i) xcell(i).metrics(st); } @@ -63,12 +60,12 @@ void MathNestInset::draw(Painter & pain, int x, int y) const { xo(x); yo(y); - for (int i = 0; i < nargs(); ++i) + for (unsigned int i = 0; i < nargs(); ++i) xcell(i).draw(pain, x + xcell(i).xo(), y + xcell(i).yo()); } -bool MathNestInset::idxNext(int & idx, int & pos) const +bool MathNestInset::idxNext(unsigned int & idx, unsigned int & pos) const { if (idx + 1 >= nargs()) return false; @@ -78,13 +75,13 @@ bool MathNestInset::idxNext(int & idx, int & pos) const } -bool MathNestInset::idxRight(int & idx, int & pos) const +bool MathNestInset::idxRight(unsigned int & idx, unsigned int & pos) const { return idxNext(idx, pos); } -bool MathNestInset::idxPrev(int & idx, int & pos) const +bool MathNestInset::idxPrev(unsigned int & idx, unsigned int & pos) const { if (idx == 0) return false; @@ -94,13 +91,13 @@ bool MathNestInset::idxPrev(int & idx, int & pos) const } -bool MathNestInset::idxLeft(int & idx, int & pos) const +bool MathNestInset::idxLeft(unsigned int & idx, unsigned int & pos) const { return idxPrev(idx, pos); } -bool MathNestInset::idxFirst(int & i, int & pos) const +bool MathNestInset::idxFirst(unsigned int & i, unsigned int & pos) const { if (nargs() == 0) return false; @@ -110,7 +107,7 @@ bool MathNestInset::idxFirst(int & i, int & pos) const } -bool MathNestInset::idxLast(int & i, int & pos) const +bool MathNestInset::idxLast(unsigned int & i, unsigned int & pos) const { if (nargs() == 0) return false; @@ -120,7 +117,7 @@ bool MathNestInset::idxLast(int & i, int & pos) const } -bool MathNestInset::idxHome(int & /* idx */, int & pos) const +bool MathNestInset::idxHome(unsigned int & /* idx */, unsigned int & pos) const { if (pos == 0) return false; @@ -129,12 +126,13 @@ bool MathNestInset::idxHome(int & /* idx */, int & pos) const } -bool MathNestInset::idxEnd(int & idx, int & pos) const +bool MathNestInset::idxEnd(unsigned int & idx, unsigned int & pos) const { - if (pos == cell(idx).size()) + unsigned int n = cell(idx).size(); + if (pos == n) return false; - pos = cell(idx).size(); + pos = n; return true; } @@ -144,21 +142,12 @@ void MathNestInset::dump() const lyxerr << "---------------------------------------------\n"; write(lyxerr, false); lyxerr << "\n"; - for (int i = 0; i < nargs(); ++i) + for (unsigned int i = 0; i < nargs(); ++i) lyxerr << cell(i) << "\n"; lyxerr << "---------------------------------------------\n"; } -void MathNestInset::push_back(unsigned char ch, MathTextCodes fcode) -{ - if (nargs()) - cells_.back().data_.push_back(ch, fcode); - else - lyxerr << "can't push without a cell\n"; -} - - void MathNestInset::push_back(MathInset * p) { if (nargs()) @@ -170,6 +159,6 @@ void MathNestInset::push_back(MathInset * p) void MathNestInset::validate(LaTeXFeatures & features) const { - for (int i = 0; i < nargs(); ++i) + for (unsigned int i = 0; i < nargs(); ++i) cell(i).validate(features); }