]> git.lyx.org Git - lyx.git/blobdiff - src/Cursor.cpp
Make command buffer icons same size as QLineEdit height
[lyx.git] / src / Cursor.cpp
index 6733aaedfad58d3beb14d92a43a121a7498d8a82..baf529bfc84208b2579b6373d1b0a3ba23d33de9 100644 (file)
@@ -73,25 +73,25 @@ DocIterator bruteFind(Cursor const & c, int x, int y)
        DocIterator result;
 
        DocIterator it = c;
-       it.top().pos() = 0;
+       it.pos() = 0;
        DocIterator et = c;
-       et.top().pos() = et.top().asInsetMath()->cell(et.top().idx()).size();
+       et.pos() = et.lastpos();
        for (size_t i = 0;; ++i) {
                int xo;
                int yo;
                Inset const * inset = &it.inset();
-               CoordCache const & cache = c.bv().coordCache();
+               CoordCache::Insets const & insetCache = c.bv().coordCache().getInsets();
 
                // FIXME: in the case where the inset is not in the cache, this
                // means that no part of it is visible on screen. In this case
                // we don't do elaborate search and we just return the forwarded
                // DocIterator at its beginning.
-               if (!cache.getInsets().has(inset)) {
+               if (!insetCache.has(inset)) {
                        it.top().pos() = 0;
                        return it;
                }
 
-               Point const o = cache.getInsets().xy(inset);
+               Point const o = insetCache.xy(inset);
                inset->cursorPos(c.bv(), it.top(), c.boundary(), xo, yo);
                // Convert to absolute
                xo += o.x_;
@@ -997,18 +997,18 @@ DocIterator Cursor::selectionEnd() const
 
 void Cursor::setSelection()
 {
-       setSelection(true);
+       selection(true);
        if (idx() == normalAnchor().idx() &&
            pit() == normalAnchor().pit() &&
            pos() == normalAnchor().pos())
-               setSelection(false);
+               selection(false);
 }
 
 
 void Cursor::setSelection(DocIterator const & where, int n)
 {
        setCursor(where);
-       setSelection(true);
+       selection(true);
        anchor_ = where;
        pos() += n;
 }
@@ -1016,7 +1016,7 @@ void Cursor::setSelection(DocIterator const & where, int n)
 
 void Cursor::clearSelection()
 {
-       setSelection(false);
+       selection(false);
        setWordSelection(false);
        setMark(false);
        resetAnchor();
@@ -1079,7 +1079,7 @@ bool Cursor::selHandle(bool sel)
                cap::saveSelection(*this);
 
        resetAnchor();
-       setSelection(sel);
+       selection(sel);
        return true;
 }
 } // namespace lyx
@@ -1319,7 +1319,7 @@ bool Cursor::backspace()
                // let's require two backspaces for 'big stuff' and
                // highlight on the first
                resetAnchor();
-               setSelection(true);
+               selection(true);
                --pos();
        } else {
                --pos();
@@ -1366,7 +1366,7 @@ bool Cursor::erase()
        // 'clever' UI hack: only erase large items if previously slected
        if (pos() != lastpos() && nextAtom()->nargs() > 0) {
                resetAnchor();
-               setSelection(true);
+               selection(true);
                ++pos();
        } else {
                plainErase();