]> git.lyx.org Git - lyx.git/blobdiff - src/BufferView_pimpl.C
make boundary property an iterator property instead of a CursorSlice property
[lyx.git] / src / BufferView_pimpl.C
index 35ccdb24c50d9cd1c744c82d62f20b4ebe960b92..1c52d6e331492a1cd2398a980ab57fe763a184ee 100644 (file)
@@ -476,7 +476,7 @@ void BufferView::Pimpl::scrollDocView(int value)
                cur.clearSelection();
                break;
        case bv_funcs::CUR_INSIDE:
-               int const y = bv_funcs::getPos(cur).y_;
+               int const y = bv_funcs::getPos(cur, cur.boundary()).y_;
                int const newy = min(last, max(y, first));
                if (y != newy) {
                        cur.reset(buffer_->inset());
@@ -596,7 +596,7 @@ bool BufferView::Pimpl::fitCursor()
                LyXFont const font = cursor_.getFont();
                int const asc = font_metrics::maxAscent(font);
                int const des = font_metrics::maxDescent(font);
-               Point p = bv_funcs::getPos(cursor_);
+               Point const p = bv_funcs::getPos(cursor_, cursor_.boundary());
                if (p.y_ - asc >= 0 && p.y_ + des < workarea().workHeight())
                        return false;
        }
@@ -607,11 +607,12 @@ bool BufferView::Pimpl::fitCursor()
 
 void BufferView::Pimpl::update(Update::flags flags)
 {
-       lyxerr << BOOST_CURRENT_FUNCTION
-              << "[fitcursor = " << (flags & Update::FitCursor)
-              << ", forceupdate = " << (flags & Update::Force)
-              << ", singlepar = " << (flags & Update::SinglePar)
-              << "]  buffer: " << buffer_ << endl;
+       lyxerr[Debug::DEBUG]
+                << BOOST_CURRENT_FUNCTION
+                << "[fitcursor = " << (flags & Update::FitCursor)
+                << ", forceupdate = " << (flags & Update::Force)
+                << ", singlepar = " << (flags & Update::SinglePar)
+                << "]  buffer: " << buffer_ << endl;
 
        // Check needed to survive LyX startup
        if (buffer_) {
@@ -765,8 +766,8 @@ void BufferView::Pimpl::center()
        bot.text()->redoParagraph(pit);
        Paragraph const & par = bot.text()->paragraphs()[pit];
        anchor_ref_ = pit;
-       offset_ref_ = bv_funcs::coordOffset(cursor_).y_ + par.ascent()
-               - workarea().workHeight() / 2;
+       offset_ref_ = bv_funcs::coordOffset(cursor_, cursor_.boundary()).y_
+               + par.ascent() - workarea().workHeight() / 2;
 }
 
 
@@ -874,8 +875,7 @@ void BufferView::Pimpl::trackChanges()
 
 bool BufferView::Pimpl::workAreaDispatch(FuncRequest const & cmd0)
 {
-       lyxerr << BOOST_CURRENT_FUNCTION
-              << "[ cmd0 " << cmd0 << "]" << endl;
+       //lyxerr << BOOST_CURRENT_FUNCTION << "[ cmd0 " << cmd0 << "]" << endl;
 
        // This is only called for mouse related events including
        // LFUN_FILE_OPEN generated by drag-and-drop.
@@ -909,10 +909,10 @@ bool BufferView::Pimpl::workAreaDispatch(FuncRequest const & cmd0)
        // Build temporary cursor.
        cmd.y = min(max(cmd.y,-1), workarea().workHeight());
        InsetBase * inset = bv_->text()->editXY(cur, cmd.x, cmd.y);
-       lyxerr << BOOST_CURRENT_FUNCTION
-              << " * hit inset at tip: " << inset << endl;
-       lyxerr << BOOST_CURRENT_FUNCTION
-              << " * created temp cursor:" << cur << endl;
+       //lyxerr << BOOST_CURRENT_FUNCTION
+       //       << " * hit inset at tip: " << inset << endl;
+       //lyxerr << BOOST_CURRENT_FUNCTION
+       //       << " * created temp cursor:" << cur << endl;
 
        // Put anchor at the same position.
        cur.resetAnchor();
@@ -1289,11 +1289,12 @@ ViewMetricsInfo BufferView::Pimpl::metrics(bool singlepar)
        int pit2 = pit;
        size_t const npit = text->paragraphs().size();
 
-       lyxerr << BOOST_CURRENT_FUNCTION
-              << " npit: " << npit
-              << " pit1: " << pit1
-              << " pit2: " << pit2
-              << endl;
+       lyxerr[Debug::DEBUG]
+                << BOOST_CURRENT_FUNCTION
+                << " npit: " << npit
+                << " pit1: " << pit1
+                << " pit2: " << pit2
+                << endl;
 
        // Rebreak anchor par
        text->redoParagraph(pit);
@@ -1343,10 +1344,11 @@ ViewMetricsInfo BufferView::Pimpl::metrics(bool singlepar)
                y += text->getPar(pit).descent();
        }
 
-       lyxerr << BOOST_CURRENT_FUNCTION
-              << " y1: " << y1
-              << " y2: " << y2
-              << endl;
+       lyxerr[Debug::DEBUG]
+                << BOOST_CURRENT_FUNCTION
+                << " y1: " << y1
+                << " y2: " << y2
+                << endl;
 
        return ViewMetricsInfo(pit1, pit2, y1, y2, singlepar);
 }