]> git.lyx.org Git - lyx.git/blobdiff - src/BufferView.h
"Inter-word Space"
[lyx.git] / src / BufferView.h
index 5a1b44b3a4988911b054c250a07068dbd2fb5ca9..419f807b772bc96e2df694fb4003a7ac793b4313 100644 (file)
 #ifndef BUFFER_VIEW_H
 #define BUFFER_VIEW_H
 
-#ifdef __GNUG__
-#pragma interface
-#endif
-
 #include "LString.h"
 #include "undo.h"
 
@@ -21,6 +17,7 @@
 
 #include <boost/utility.hpp>
 
+class Change;
 class LyXView;
 class LyXText;
 class TeXErrors;
@@ -31,6 +28,8 @@ class Painter;
 class UpdatableInset;
 class WordLangTuple;
 class Encoding;
+class ErrorList;
+class ErrorItem;
 
 /**
  * A buffer view encapsulates a view onto a particular
@@ -47,10 +46,8 @@ public:
         * of the document rendering.
         */
        enum UpdateCodes {
-               UPDATE = 0, //< FIXME
-               SELECT = 1, //< selection change
-               FITCUR = 2, //< the cursor needs fitting into the view
-               CHANGE = 4  //< document data has changed
+               UPDATE = 0, //< repaint
+               SELECT = 1 //< reset selection to current cursor pos
        };
 
        /**
@@ -82,14 +79,19 @@ public:
         */
        void repaint();
 
+       /// reload the contained buffer
+       void reload();
+
        /// fit the user cursor within the visible view
        bool fitCursor();
        /// perform pending painting updates
        void update();
        // update for a particular lyxtext
        void update(LyXText *, UpdateCodes uc);
+       /// update for the top-level lyxtext
+       void update(UpdateCodes uc);
        /// update for a particular inset
-       void updateInset(Inset * inset, bool mark_dirty);
+       void updateInset(Inset * inset);
        /// reset the scrollbar to reflect current view position
        void updateScrollbar();
        /// FIXME
@@ -108,6 +110,9 @@ public:
        /// does the given bookmark have a saved position ?
        bool isSavedPosition(unsigned int i);
 
+       /// return the current change at the cursor
+       Change const getCurrentChange();
+
        /**
         * This holds the mapping between buffer paragraphs and screen rows.
         * This should be private...but not yet. (Lgb)
@@ -141,22 +146,23 @@ public:
        WordLangTuple const nextWord(float & value);
 
        /// move cursor to the named label
-       bool gotoLabel(string const & label);
-
-       /// copy the environment type from current paragraph
-       void copyEnvironment();
-       /// set the current paragraph's environment type
-       void pasteEnvironment();
+       void gotoLabel(string const & label);
 
        /// undo last action
        void undo();
        /// redo last action
        void redo();
 
-       /// removes all autodeletable insets
-       bool removeAutoInsets();
-       /// insert all errors found when running latex
-       void insertErrors(TeXErrors & terr);
+       /// get the stored error list
+       ErrorList const & getErrorList() const;
+       /// clears the stored error list
+       void resetErrorList();
+       /// stored this  error list
+       void setErrorList(ErrorList const &);
+       /// adds a single error to the list
+       void addError(ErrorItem const &);
+       /// show the error list to the user
+       void showErrorList(string const &) const;
        /// set the cursor based on the given TeX source row
        void setCursorFromRow(int row);
 
@@ -169,14 +175,6 @@ public:
        /// Inserts a lyx file at cursor position. return false if it fails
        bool insertLyXFile(string const & file);
 
-       /// show the user cursor
-       void showCursor();
-       /// hide the user cursor
-       void hideCursor();
-       /// FIXME
-       void showLockedInsetCursor(int x, int y, int asc, int desc);
-       /// FIXME
-       void hideLockedInsetCursor();
        /// FIXME
        bool fitLockedInsetCursor(int x, int y, int asc, int desc);
        /// FIXME
@@ -186,6 +184,9 @@ public:
        /// FIXME: my word !
        void toggleToggle();
 
+       /// hide the cursor if it is visible
+       void hideCursor();
+
        /// center the document view around the cursor
        void center();
        /// scroll document by the given number of lines of default height
@@ -193,8 +194,6 @@ public:
        /// Scroll the view by a number of pixels
        void scrollDocView(int);
 
-       /// height of a normal line in pixels (zoom factor considered)
-       int defaultHeight() const;
        /// return the pixel width of the document view
        int workWidth() const;
        /// return the pixel height of the document view