// -*- C++ -*-
-/** \file
- * Copyright 2002 the LyX Team
- * Read the file COPYING
+/**
+ * \file BufferView.h
+ * Copyright 2002 the LyX Team
+ * Read the file COPYING
*
* \author Lars Gullik Bjønnes
*/
#include "LString.h"
#include "undo.h"
-#include "commandtags.h"
#include "insets/inset.h"
class Language;
class Painter;
class UpdatableInset;
+class WordLangTuple;
+class WorkArea;
///
class BufferView : boost::noncopyable {
///
Buffer * buffer() const;
///
- Painter & painter();
+ Painter & painter() const;
///
- LyXScreen * screen() const;
+ LyXScreen & screen() const;
+ /// return the work area for this bview
+ WorkArea & workarea() const;
///
void buffer(Buffer * b);
///
- void resize(int, int, int, int);
- ///
void resize();
- ///
- void redraw();
+ /**
+ * Repaint the pixmap. Used for when we don't want
+ * to go through the full update() logic, just a simple
+ * repaint of the whole screen.
+ */
+ void repaint();
///
bool fitCursor();
///
///
void updateScrollbar();
///
- Inset * checkInsetHit(LyXText *, int & x, int & y);
- ///
void redoCurrentBuffer();
///
- int resizeCurrentBuffer();
- ///
- void cursorPrevious(LyXText *);
- ///
- void cursorNext(LyXText *);
- ///
bool available() const;
///
LyXView * owner() const;
int sly;
///
void insetUnlock();
-#if 0
- ///
- void insetSleep();
- ///
- void insetWakeup();
-#endif
///
void replaceWord(string const & replacestring);
///
void endOfSpellCheck();
///
void selectLastWord();
- ///
- string const nextWord(float & value);
+ /// return the next word
+ WordLangTuple const nextWord(float & value);
///
bool gotoLabel(string const & label);
///
- void paste();
- ///
- void cut(bool realcut = true);
- ///
- void copy();
- ///
void pasteEnvironment();
///
void copyEnvironment();
///
void setCursorFromRow(int row);
/** Insert an inset into the buffer.
- Placie it in a layout of lout,
+ Place 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);
bool insertInset(Inset * inset, string const & lout = string());
- /** Inserts a lyx file at cursor position.
- \return #false# if it fails.
- */
+ /// Inserts a lyx file at cursor position. return #false# if it fails
bool insertLyXFile(string const & file);
///
bool lockInset(UpdatableInset * inset);
void toggleToggle();
///
void center();
-
///
- bool focus() const;
- ///
- void focus(bool);
- /// A callback for the slider in the scrollbar.
- void scrollCB(double);
+ int scroll(long time);
+
+ /// Scroll the view by a number of pixels
+ void scrollDocView(int);
///
- void setState();
+ void switchKeyMap();
///
bool ChangeInsets(Inset::Code code, string const & from,
///
string const getClipboard() const;
///
- void pasteClipboard(bool asPara);
- ///
void stuffClipboard(string const &) const;
///
- bool Dispatch(kb_action action, string const & argument);
+ bool dispatch(FuncRequest const & argument);
+
private:
///
struct Pimpl;