2 /* This file is part of
3 * ======================================================
5 * LyX, The Document Processor
7 * Copyright 1995 Matthias Ettrich
8 * Copyright 1995-2000 The LyX Team.
10 * ====================================================== */
19 #include FORMS_H_LOCATION
31 BufferView(LyXView * owner, int , int , int, int);
35 Buffer * buffer() const;
39 void buffer(Buffer * b);
41 void resize(int, int, int, int);
51 void update(signed char f);
53 void updateScrollbar();
55 void redoCurrentBuffer();
57 int resizeCurrentBuffer();
61 void cursorPrevious();
65 bool available() const;
67 LyXView * owner() const;
73 void restorePosition();
74 /** This holds the mapping between buffer paragraphs and screen rows.
75 This should be private...but not yet. (Lgb)
79 unsigned short paperWidth() const;
81 UpdatableInset * the_locking_inset;
83 void updateInset(Inset * inset, bool mark_dirty);
97 void replaceWord(string const & replacestring);
99 void endOfSpellCheck();
101 void selectLastWord();
103 char * nextWord(float & value);
105 void insertCorrectQuote();
109 bool gotoLabel(string const & label);
117 void pasteEnvironment();
119 void copyEnvironment();
123 void protectedBlank();
127 void menuSeparator();
129 void endOfSentenceDot();
133 void hyphenationPoint();
145 void allFloats(char flag, char figmar);
146 /// removes all autodeletable insets
147 bool removeAutoInsets();
149 void insertErrors(TeXErrors & terr);
151 void setCursorFromRow(int row);
152 /** Insert an inset into the buffer
153 Insert inset into buffer, placing it in a layout of lout,
154 if no_table make sure that it doesn't end up in a table. */
155 bool insertInset(Inset * inset, string const & lout = string(),
156 bool no_table = false);
157 /// open and lock an updatable inset
158 void open_new_inset(UpdatableInset * new_inset);
159 /// Inserts a lyx file at cursor position. Returns false if it fails.
160 bool insertLyXFile(string const & file);
162 bool lockInset(UpdatableInset * inset);
164 void showLockedInsetCursor(long x, long y, int asc, int desc);
166 void hideLockedInsetCursor();
168 void fitLockedInsetCursor(long x, long y, int asc, int desc);
170 int unlockInset(UpdatableInset * inset);
172 void lockedInsetStoreUndo(Undo::undo_kind kind);
178 void toggleSelection(bool = true);
191 bool belowMouse() const;
192 /// A callback for the slider in the scrollbar.
193 void scrollCB(double);
196 static void cursorToggleCB(FL_OBJECT * ob, long);
202 void pushIntoUpdateList(Inset * i);
204 void workAreaExpose();
206 void workAreaButtonPress(int x, int y, unsigned int button);
208 void workAreaButtonRelease(int x, int y, unsigned int button);
210 void workAreaMotionNotify(int x, int y, unsigned int state);
212 void doubleClick(int x, int y, unsigned int button);
214 void tripleClick(int x, int y, unsigned int button);
220 void workAreaSelectionNotify(Window win, XEvent * event);