3 #ifndef BUFFERVIEW_PIMPL_H
4 #define BUFFERVIEW_PIMPL_H
6 #include "BufferView.h"
7 #include "UpdateInset.h"
18 struct BufferView::Pimpl {
19 Pimpl(BufferView * i, LyXView * o,
20 int xpos, int ypos, int width, int height);
24 void buffer(Buffer *);
26 void resize(int xpos, int ypos, int width, int height);
31 /// Return true if the cursor was fitted.
34 void redoCurrentBuffer();
36 int resizeCurrentBuffer();
40 void update(signed char f);
43 void smallUpdate(signed char f);
47 /// Update pixmap of screen
50 void workAreaExpose();
52 void updateScrollbar();
54 void scrollCB(double value);
58 Inset * checkInsetHit(int & x, int & y, unsigned int button);
60 int scrollUp(long time);
62 int scrollDown(long time);
64 void workAreaMotionNotify(int x, int y, unsigned int state);
66 void workAreaButtonPress(int x, int y, unsigned int button);
68 void workAreaButtonRelease(int x, int y, unsigned int button);
70 void workAreaSelectionNotify(Window win, XEvent * event);
72 void doubleClick(int x, int y, unsigned int button);
74 void tripleClick(int x, int y, unsigned int button);
82 void cursorPrevious();
86 bool available() const;
92 void restorePosition();
108 bool belowMouse() const;
114 void toggleSelection(bool = true);
128 long current_scrollbar_value;
132 bool work_area_focus;
134 FL_OBJECT * figinset_canvas;
136 FL_OBJECT * timer_cursor;
140 int last_click_x, last_click_y;
144 UpdateInset updatelist;
146 bool using_xterm_cursor;