]> git.lyx.org Git - lyx.git/blobdiff - src/BufferView.h
don't copy if a reference is fine
[lyx.git] / src / BufferView.h
index 3f20c3a0892a756a07776c8a730b0ff2846a1cdf..50518247c4c9f8ddf5349aae9e13fe08f894e5b9 100644 (file)
@@ -5,7 +5,7 @@
  *           LyX, The Document Processor
  *        
  *           Copyright 1995 Matthias Ettrich
- *           Copyright 1995-2000 The LyX Team.
+ *           Copyright 1995-2001 The LyX Team.
  *
  * ====================================================== */
 
 #pragma interface
 #endif
 
-#include FORMS_H_LOCATION
+#include "LString.h"
 #include "undo.h"
+#include "commandtags.h"
+#include "insets/inset.h"
 #include <boost/utility.hpp>
 
 class LyXView;
@@ -25,11 +27,12 @@ class LyXText;
 class TeXErrors;
 class Buffer;
 class LyXScreen;
-class WorkArea;
 class Language;
+class Painter;
+class UpdatableInset;
 
 ///
-class BufferView : public noncopyable {
+class BufferView : boost::noncopyable {
 public:
        ///
        enum UpdateCodes {
@@ -54,8 +57,6 @@ public:
        ///
        LyXScreen * screen() const;
        ///
-       WorkArea * workarea() const;
-       ///
        void buffer(Buffer * b);
        ///
        void resize(int, int, int, int);
@@ -64,7 +65,7 @@ public:
        ///
        void redraw();
        ///
-       void fitCursor(LyXText *);
+       void fitCursor();
        ///
        void update();
        //
@@ -72,18 +73,12 @@ public:
        ///
        void updateScrollbar();
        ///
-       Inset * checkInsetHit(LyXText *, int & x, int & y,
-                             unsigned int button);
+       Inset * checkInsetHit(LyXText *, int & x, int & y);
        /// 
        void redoCurrentBuffer();
        ///
        int resizeCurrentBuffer();
        ///
-       void gotoInset(std::vector<Inset::Code> const & codes,
-                      bool same_content);
-       ///
-       void gotoInset(Inset::Code codes, bool same_content);
-       ///
        void cursorPrevious(LyXText *);
        ///
        void cursorNext(LyXText *);
@@ -118,8 +113,6 @@ public:
        ///
        void updateInset(Inset * inset, bool mark_dirty);
        ///
-       bool inset_slept;
-       ///
        int slx;
        ///
        int sly;
@@ -138,13 +131,11 @@ public:
        ///
        string const nextWord(float & value);
        ///
-       void insertCorrectQuote();
-       ///
        bool gotoLabel(string const & label);
        ///
        void paste();
        ///
-       void cut();
+       void cut(bool realcut = true);
        ///
        void copy();
        ///
@@ -152,35 +143,9 @@ public:
        ///
        void copyEnvironment();
        ///
-       void hfill();
-       ///
-       void protectedBlank(LyXText *);
-       ///
-       void newline();
-       ///
-       void menuSeparator();
-       ///
-       void endOfSentenceDot();
-       ///
-       void ldots();
-       ///
-       void hyphenationPoint();
-       ///
        void menuUndo();
        ///
        void menuRedo();
-#ifndef NEW_INSETS
-       ///
-       void toggleFloat();
-       ///
-       void openStuff();
-#endif
-       ///
-       void insertNote();
-#ifndef NEW_INSETS
-       ///
-       void allFloats(char flag, char figmar);
-#endif
        /// removes all autodeletable insets
        bool removeAutoInsets();
        ///
@@ -191,10 +156,9 @@ public:
            Placie it in a layout of lout,
            if no_table make sure that it doesn't end up in a table.
        */
-       bool insertInset(Inset * inset, string const & lout = string(),
-                        bool no_table = false);
-       /// open and lock an updatable inset
-       bool open_new_inset(UpdatableInset * new_inset, bool behind = false);
+       //bool insertInset(Inset * inset, string const & lout = string(),
+       //               bool no_table = false);
+       bool insertInset(Inset * inset, string const & lout = string());
        /** Inserts a lyx file at cursor position.
            @return #false# if it fails.
        */
@@ -246,9 +210,13 @@ public:
        ///
        bool ChangeCitationsIfUnique(string const & from, string const & to);
        ///
+       string const getClipboard() const;
+       ///
        void pasteClipboard(bool asPara);
        ///
        void stuffClipboard(string const &) const;
+       ///
+       bool Dispatch(kb_action action, string const & argument);
 private:
        struct Pimpl;
        ///