]> git.lyx.org Git - lyx.git/blobdiff - src/BufferView.h
* GuiView.C (updateTab): do not update early if current tab has
[lyx.git] / src / BufferView.h
index 6a1428e13342cf643b9c4ce3efd85a87629886aa..357e33e8cb9bfec0039f717ede69fb9cf693f278 100644 (file)
@@ -23,6 +23,7 @@
 
 #include "support/types.h"
 
+#include <boost/tuple/tuple.hpp>
 #include <boost/utility.hpp>
 #include <boost/signal.hpp>
 
@@ -40,16 +41,12 @@ class DocIterator;
 class FuncRequest;
 class FuncStatus;
 class Intl;
-class Language;
 class LCursor;
 class LyXText;
 class ParIterator;
 class ParagraphMetrics;
 class ViewMetricsInfo;
 
-/// A map from paragraph index number to paragraph metrics
-typedef std::map<pit_type, ParagraphMetrics> ParMetricsCache;
-
 /// Scrollbar Parameters.
 struct ScrollbarParameters
 {
@@ -96,8 +93,6 @@ public:
        /// resize the BufferView.
        void resize();
 
-       /// redisplay the referenced buffer.
-       void reload();
        /// load a buffer into the view.
        bool loadLyXFile(support::FileName const & name, bool tolastfiles = true);
 
@@ -120,20 +115,16 @@ public:
        /// Save the current position as bookmark.
        /// if persistent=false, save to temp_bookmark
        void saveBookmark(bool persistent);
-       /// goto a specified position.
-       void moveToPosition(
+       /// goto a specified position, try par_id first, and then par_pit
+       /// return the par_pit and par_id of the new paragraph
+       boost::tuple<pit_type, int> moveToPosition(
+               pit_type par_pit, ///< Paragraph pit, used when par_id is zero or invalid.
                int par_id, ///< Paragraph ID, \sa Paragraph
                pos_type par_pos ///< Position in the \c Paragraph
                );
        /// return the current change at the cursor.
        Change const getCurrentChange() const;
 
-       /// return the lyxtext we are using.
-       LyXText * getLyXText();
-
-       /// return the lyxtext we are using.
-       LyXText const * getLyXText() const;
-
        /// move cursor to the named label.
        void gotoLabel(docstring const & label);
 
@@ -160,7 +151,8 @@ public:
        /// return true for events that will handle.
        FuncStatus getStatus(FuncRequest const & cmd);
        /// execute the given function.
-       bool dispatch(FuncRequest const & argument);
+       /// \return the Update::flags for further metrics update.
+       Update::flags dispatch(FuncRequest const & argument);
 
        /// request an X11 selection.
        /// \return the selected string.
@@ -188,6 +180,9 @@ public:
        /// sets cursor.
        /// This will also open all relevant collapsable insets.
        void setCursor(DocIterator const &);
+       /// Check deleteEmptyParagraphMechanism and update metrics if needed.
+       /// \retval true if an update was needed.
+       bool checkDepm(LCursor & cur, LCursor & old);
        /// sets cursor.
        /// This is used when handling LFUN_MOUSE_PRESS.
        bool mouseSetCursor(LCursor & cur);