X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ftexrow.h;h=700bcd67dfff7a8e42265be55db2a5d4b154ce8e;hb=98c966c64594611e469313314abd1e59524adb4a;hp=8db0533603f5f5e8d13a6841eb937ea5ea86d9e0;hpb=570e57d5b9be102355a5c2088bec53b3da248fbd;p=lyx.git diff --git a/src/texrow.h b/src/texrow.h index 8db0533603..700bcd67df 100644 --- a/src/texrow.h +++ b/src/texrow.h @@ -1,11 +1,11 @@ // -*- C++ -*- /* This file is part of - * ====================================================== - * + * ====================================================== + * * LyX, The Document Processor - * + * * Copyright 1995 Matthias Ettrich - * Copyright 1995-2000 The LyX Team + * Copyright 1995-2001 The LyX Team * * ====================================================== */ @@ -18,63 +18,82 @@ #include -class LyXParagraph; +class Paragraph; // Controls correspondance between paragraphs and the generated LaTeX file class TexRow { public: /// - TexRow() { - count = 0; - lastpar = 0; - lastpos = -1; - } + TexRow() : count(0), lastpar(0), lastpos(-1) {} /// Clears structure void reset(); /// Define what paragraph and position the next row will represent - void start(LyXParagraph * par, int pos); + void start(Paragraph * par, int pos); /// Insert node when line is completed void newline(); /// Returns paragraph id and position from a row number - void getIdFromRow(int row, int & id, int & pos); + bool getIdFromRow(int row, int & id, int & pos) const; /// Appends another TexRow TexRow & operator+= (TexRow const &); /// Returns the number of rows in this texrow - int rows() { return count; } + int rows() const { return count; } -private: /// Linked list of items - struct RowItem { + class RowItem { + public: /// - RowItem() { - id = -1; - pos = -1; - rownumber = 0; + RowItem() : id_(-1), pos_(-1), rownumber_(0) {} + /// + void id(int i) { + id_ = i; + } + /// + int id() const { + return id_; + } + /// + void pos(int p) { + pos_ = p; + } + /// + int pos() const { + return pos_; } - /// - int id; + void rownumber(int r) { + rownumber_ = r; + } + /// + int rownumber() const { + return rownumber_; + } + private: /// - int pos; + int id_; /// - int rownumber; + int pos_; + /// + int rownumber_; }; /// - unsigned int count; - /// typedef std::list RowList; /// - RowList rowlist; + void increasePos(int id, int pos) const; +private: + /// + unsigned int count; + /// + mutable RowList rowlist; /// Last paragraph - LyXParagraph * lastpar; + Paragraph * lastpar; /// Last position int lastpos; - + }; #endif