X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ftexrow.C;h=ee4b7410946a3fc08e4f3d1ad2676a1e2d9bb4b7;hb=35204f8f33d7400a5fefeffea533fb4cb4097211;hp=dda7e517ae65624ac59f08801fe74c7b5341c9c1;hpb=13349032cb4dc8ef44146aa652ff6bbff6698249;p=lyx.git diff --git a/src/texrow.C b/src/texrow.C index dda7e517ae..ee4b741094 100644 --- a/src/texrow.C +++ b/src/texrow.C @@ -1,26 +1,27 @@ /** * \file texrow.C - * Copyright 1995-2002 the LyX Team - * Read the file COPYING + * This file is part of LyX, the document processor. + * Licence details can be found in the file COPYING. * * \author Matthias Ettrich + * \author Lars Gullik Bjønnes + * \author John Levon + * + * Full author contact details are available in file CREDITS. */ #include +#include "texrow.h" +#include "debug.h" + #include -#ifdef __GNUG__ -#pragma implementation -#endif -#include "texrow.h" -#include "paragraph.h" -#include "debug.h" +namespace lyx { using std::find_if; -using std::for_each; -using std::endl; + namespace { @@ -36,37 +37,6 @@ private: int row_; }; - -/// increment the pos value of the argument if the par id -/// is the same, and the pos parameter is larger -class increase_pos { -public: - increase_pos(int id, int pos) - : id_(id), pos_(pos) {} - - void operator()(TexRow::RowList::value_type & vt) const { - if (vt.id() != id_ || vt.pos() >= pos_) - return; - vt.pos(vt.pos() + 1); - - lyxerr[Debug::INFO] - << "TeXRow::increasePos: ideally this " - "should never happen..." << endl; - - // FIXME: When verified to work this clause should be deleted. - if (id_ == vt.id() && pos_ == vt.pos()) { - lyxerr[Debug::INFO] - << "TexRow::increasePos: this should happen " - "maximum one time for each run of " - "increasePos!" << endl; - } - } - -private: - int id_; - int pos_; -}; - } // namespace anon @@ -74,21 +44,21 @@ void TexRow::reset() { rowlist.clear(); count = 0; - lastpar = 0; + lastid = -1; lastpos = -1; } -void TexRow::start(Paragraph * par, int pos) +void TexRow::start(int id, int pos) { - lastpar = par; + lastid = id; lastpos = pos; } void TexRow::newline() { - int const id = lastpar ? lastpar->id() : -1; + int const id = lastid; RowList::value_type tmp(id, lastpos, ++count); rowlist.push_back(tmp); } @@ -111,14 +81,11 @@ bool TexRow::getIdFromRow(int row, int & id, int & pos) const } -void TexRow::increasePos(int id, int pos) -{ - for_each(rowlist.begin(), rowlist.end(), increase_pos(id, pos)); -} - - TexRow & TexRow::operator+=(TexRow const & tr) { rowlist.insert(rowlist.end(), tr.rowlist.begin(), tr.rowlist.end()); return *this; } + + +} // namespace lyx