]> git.lyx.org Git - lyx.git/blobdiff - src/TextMetrics.cpp
Fix scons and CmdDef.h for the introduction of CmdDef.
[lyx.git] / src / TextMetrics.cpp
index 8b77123985fd4c9855ccf42968d484c94c935071..9331a03c735cded277f304a4ceaa0b8f0787b923 100644 (file)
@@ -29,6 +29,8 @@
 #include "debug.h"
 #include "FontIterator.h"
 #include "FuncRequest.h"
+#include "InsetList.h"
+#include "Layout.h"
 #include "Length.h"
 #include "LyXRC.h"
 #include "MetricsInfo.h"
@@ -37,7 +39,6 @@
 #include "ParIterator.h"
 #include "rowpainter.h"
 #include "Text.h"
-#include "Undo.h"
 #include "VSpace.h"
 
 #include "frontends/FontMetrics.h"
@@ -381,8 +382,8 @@ bool TextMetrics::redoParagraph(pit_type const pit)
        // FIXME: We should always use getFont(), see documentation of
        // noFontChange() in Inset.h.
        Font const bufferfont = buffer.params().getFont();
-       InsetList::const_iterator ii = par.insetlist.begin();
-       InsetList::const_iterator iend = par.insetlist.end();
+       InsetList::const_iterator ii = par.insetList().begin();
+       InsetList::const_iterator iend = par.insetList().end();
        for (; ii != iend; ++ii) {
                Dimension dim;
                int const w = max_width_ - leftMargin(max_width_, pit, ii->pos)
@@ -863,8 +864,8 @@ boost::tuple<int, int> TextMetrics::rowHeight(pit_type const pit, pos_type const
 
        // insets may be taller
        ParagraphMetrics const & pm = par_metrics_[pit];
-       InsetList::const_iterator ii = par.insetlist.begin();
-       InsetList::const_iterator iend = par.insetlist.end();
+       InsetList::const_iterator ii = par.insetList().begin();
+       InsetList::const_iterator iend = par.insetList().end();
        for ( ; ii != iend; ++ii) {
                Dimension const & dim = pm.insetDimension(ii->inset);
                if (ii->pos >= first && ii->pos < end) {
@@ -901,8 +902,8 @@ boost::tuple<int, int> TextMetrics::rowHeight(pit_type const pit, pos_type const
                // some parskips VERY EASY IMPLEMENTATION
                if (bufparams.paragraph_separation
                    == BufferParams::PARSEP_SKIP
-                       && par.ownerCode() != Inset::ERT_CODE
-                       && par.ownerCode() != Inset::LISTINGS_CODE
+                       && par.ownerCode() != ERT_CODE
+                       && par.ownerCode() != LISTINGS_CODE
                        && pit > 0
                        && ((layout->isParagraph() && par.getDepth() == 0)
                            || (pars[pit - 1].layout()->isParagraph()
@@ -1280,7 +1281,8 @@ Row const & TextMetrics::getRowNearY(int y, pit_type pit) const
        int yy = pm.position() - pm.ascent();
        BOOST_ASSERT(!pm.rows().empty());
        RowList::const_iterator rit = pm.rows().begin();
-       RowList::const_iterator const rlast = boost::prior(pm.rows().end());
+       RowList::const_iterator rlast = pm.rows().end();
+       --rlast;
        for (; rit != rlast; yy += rit->height(), ++rit)
                if (yy + rit->height() > y)
                        break;
@@ -1410,8 +1412,8 @@ Inset * TextMetrics::checkInsetHit(int x, int y)
                << " y: " << y
                << "  pit: " << pit
                << endl;
-       InsetList::const_iterator iit = par.insetlist.begin();
-       InsetList::const_iterator iend = par.insetlist.end();
+       InsetList::const_iterator iit = par.insetList().begin();
+       InsetList::const_iterator iend = par.insetList().end();
        for (; iit != iend; ++iit) {
                Inset * inset = iit->inset;
 
@@ -1590,7 +1592,7 @@ void TextMetrics::cursorPrevious(Cursor & cur)
                // simplest solution is to move to the previous row instead.
                cur.dispatch(FuncRequest(cur.selection()? LFUN_UP_SELECT: LFUN_UP));
 
-       finishUndo();
+       cur.finishUndo();
        cur.updateFlags(Update::Force | Update::FitCursor);
 }
 
@@ -1610,7 +1612,7 @@ void TextMetrics::cursorNext(Cursor & cur)
                cur.dispatch(
                        FuncRequest(cur.selection()? LFUN_DOWN_SELECT: LFUN_DOWN));
 
-       finishUndo();
+       cur.finishUndo();
        cur.updateFlags(Update::Force | Update::FitCursor);
 }