3 #ifndef BUFFERVIEW_PIMPL_H
4 #define BUFFERVIEW_PIMPL_H
6 #include "BufferView.h"
7 #include "UpdateInset.h"
19 struct BufferView::Pimpl {
20 Pimpl(BufferView * i, LyXView * o,
21 int xpos, int ypos, int width, int height);
25 void buffer(Buffer *);
27 void resize(int xpos, int ypos, int width, int height);
32 /// Return true if the cursor was fitted.
35 void redoCurrentBuffer();
37 int resizeCurrentBuffer();
41 void update(BufferView::UpdateCodes);
44 /// Update pixmap of screen
47 void workAreaExpose();
49 void updateScrollbar();
51 void scrollCB(double value);
53 Inset * checkInsetHit(int & x, int & y, unsigned int button);
55 int scrollUp(long time);
57 int scrollDown(long time);
59 void workAreaMotionNotify(int x, int y, unsigned int state);
61 void workAreaButtonPress(int x, int y, unsigned int button);
63 void workAreaButtonRelease(int x, int y, unsigned int button);
65 void doubleClick(int x, int y, unsigned int button);
67 void tripleClick(int x, int y, unsigned int button);
75 void cursorPrevious();
79 bool available() const;
85 void restorePosition();
87 bool NoSavedPositions();
103 bool belowMouse() const;
109 void toggleSelection(bool = true);
123 long current_scrollbar_value;
127 bool work_area_focus;
129 FL_OBJECT * figinset_canvas;
131 Timeout cursor_timeout;
135 int last_click_x, last_click_y;
137 WorkArea * workarea_;
139 UpdateInset updatelist;
141 void pasteClipboard(bool asPara);
143 void stuffClipboard(string const &) const;
145 bool using_xterm_cursor;