]> git.lyx.org Git - lyx.git/blobdiff - src/BufferView.cpp
Support new languages in tex2lyx
[lyx.git] / src / BufferView.cpp
index 392f380f1d248f729e23e1e08339cb5d3ff74829..301fd2a002b770f2ccee7f80757b6e125cb93713 100644 (file)
@@ -1108,12 +1108,12 @@ bool BufferView::getStatus(FuncRequest const & cmd, FuncStatus & flag)
 
        case LFUN_CHANGES_TRACK:
                flag.setEnabled(true);
-               flag.setOnOff(buffer_.params().trackChanges);
+               flag.setOnOff(buffer_.params().track_changes);
                break;
 
        case LFUN_CHANGES_OUTPUT:
                flag.setEnabled(true);
-               flag.setOnOff(buffer_.params().outputChanges);
+               flag.setOnOff(buffer_.params().output_changes);
                break;
 
        case LFUN_CHANGES_MERGE:
@@ -1430,12 +1430,12 @@ void BufferView::dispatch(FuncRequest const & cmd, DispatchResult & dr)
        }
 
        case LFUN_CHANGES_TRACK:
-               buffer_.params().trackChanges = !buffer_.params().trackChanges;
+               buffer_.params().track_changes = !buffer_.params().track_changes;
                break;
 
        case LFUN_CHANGES_OUTPUT:
-               buffer_.params().outputChanges = !buffer_.params().outputChanges;
-               if (buffer_.params().outputChanges) {
+               buffer_.params().output_changes = !buffer_.params().output_changes;
+               if (buffer_.params().output_changes) {
                        bool dvipost    = LaTeXFeatures::isAvailable("dvipost");
                        bool xcolorulem = LaTeXFeatures::isAvailable("ulem") &&
                                          LaTeXFeatures::isAvailable("xcolor");
@@ -2292,10 +2292,17 @@ void BufferView::setCursorFromRow(int row)
                // we need to make sure that the row and position
                // we got back are valid, because the buffer may well
                // have changed since we last generated the LaTeX.
-               DocIterator const dit = buffer_.getParFromID(tmpid);
+               DocIterator dit = buffer_.getParFromID(tmpid);
                if (dit == doc_iterator_end(&buffer_))
                        posvalid = false;
-               else {
+               else if (dit.depth() > 1) {
+                       // We are in an inset.
+                       pos_type lastpos = dit.lastpos();
+                       dit.pos() = tmppos > lastpos ? lastpos : tmppos;
+                       setCursor(dit);
+                       recenter();
+                       return;
+               } else {
                        newpit = dit.pit();
                        // now have to check pos.
                        newpos = tmppos;