4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
7 * Full author contact details are available in file CREDITS.
9 * To add a new function:
10 * - add a new enum constant immediately before LFUN_LASTACTION
11 * - add an appropriate line in LyXAction.cpp
12 * - add a branch to a suitable ::doDispatch() method
13 * - add correct test to the corresponding ::getStatus() method
24 /** These are all the lyx functions, the main mechanism
25 * through which the frontends communicate with the core.
27 * They are managed in LyXAction.cpp and handled in various
28 * ::dispatch() functions, starting with LyXFunc.C:dispatch(),
29 * BufferView::dispatch(), Cursor::dispatch() and
30 * Inset*::doDispatch();
33 LFUN_UNKNOWN_ACTION = -1,
47 LFUN_BUFFER_AUTO_SAVE,
51 LFUN_PRIMARY_SELECTION_PASTE,
59 LFUN_HYPHENATION_POINT_INSERT,
60 LFUN_LIGATURE_BREAK_INSERT,
63 LFUN_FONT_FREE_UPDATE,
89 LFUN_CHAR_FORWARD_SELECT,
90 LFUN_CHAR_BACKWARD_SELECT,
93 LFUN_SCREEN_UP_SELECT,
95 LFUN_SCREEN_DOWN_SELECT,
96 LFUN_LINE_BEGIN_SELECT,
98 LFUN_WORD_FORWARD_SELECT,
99 LFUN_WORD_BACKWARD_SELECT,
102 LFUN_BUFFER_BEGIN_SELECT,
103 LFUN_BUFFER_END_SELECT,
104 LFUN_SPACE_INSERT, // JSpitzm 20030520
107 LFUN_CHAR_DELETE_FORWARD,
108 LFUN_CHAR_DELETE_BACKWARD,
110 LFUN_BREAK_PARAGRAPH,
111 LFUN_BREAK_PARAGRAPH_KEEP_LAYOUT,
114 LFUN_ACCENT_CIRCUMFLEX,
116 LFUN_MATH_SUPERSCRIPT,
123 LFUN_ACCENT_UNDERBAR,
125 LFUN_ACCENT_UNDERDOT,
131 LFUN_ACCENT_SPECIAL_CARON,
132 LFUN_ACCENT_HUNGARIAN_UMLAUT,
141 LFUN_SERVER_CHAR_AFTER,
144 LFUN_SERVER_GET_LAYOUT,
145 LFUN_SERVER_GET_FONT,
146 LFUN_SERVER_GET_NAME,
149 LFUN_SERVER_GOTO_FILE_ROW,
151 LFUN_ENVIRONMENT_INSERT, // unused as of 20060905
155 LFUN_KEYMAP_SECONDARY,
161 LFUN_MATH_DELIM, // Alejandro 180696
162 LFUN_MATH_DISPLAY, // Alejandro 180696
163 LFUN_MATH_MODE, // Alejandro 040696
164 LFUN_MATH_NUMBER, // Alejandro 040696
165 LFUN_MATH_NONUMBER, // Alejandro 180696
167 LFUN_MATH_SIZE, // Alejandro 150896
168 LFUN_MATH_MACRO, // ale970510
169 LFUN_MATH_EXTERN, // Andre' 20010424
170 LFUN_MATH_MUTATE, // Andre' 20010523
171 LFUN_MATH_IMPORT_SELECTION, // Andre' 20010704
173 LFUN_MATH_SPACE, // Andre' 20010725
174 LFUN_WORD_DELETE_FORWARD,
175 LFUN_WORD_DELETE_BACKWARD,
181 LFUN_LAYOUT_PARAGRAPH,
182 LFUN_DROP_LAYOUTS_CHOICE, // used in bindings as of 20060905
193 LFUN_WORD_CAPITALIZE,
195 LFUN_DEPTH_DECREMENT,
197 LFUN_DEPTH_INCREMENT,
198 LFUN_MENU_OPEN, // used in bindings as of 20060905
201 LFUN_COMMAND_EXECUTE,
204 LFUN_FILE_INSERT_PLAINTEXT, // CFO-G 1997-11-19
205 LFUN_FILE_INSERT_PLAINTEXT_PARA,// Levon 2001-02-14
206 LFUN_FILE_NEW, // for scripting purposes
209 LFUN_PARAGRAPH_UP, // Asger 1996-10-01
210 LFUN_PARAGRAPH_UP_SELECT, // Asger 1996-10-01
211 LFUN_PARAGRAPH_DOWN, // Asger 1996-10-01
212 LFUN_PARAGRAPH_DOWN_SELECT, // Asger 1996-10-01
213 LFUN_BREAK_PARAGRAPH_SKIP,
215 LFUN_DELETE_BACKWARD_SKIP,
216 LFUN_DELETE_FORWARD_SKIP,
217 LFUN_BUFFER_NEW_TEMPLATE, // Asger 1997-02-02
218 LFUN_BUFFER_RELOAD, // Asger 1997-02-02
219 LFUN_RECONFIGURE, // Asger 1997-02-14
221 LFUN_INDEX_PRINT, // Lgb 97-02-27
223 LFUN_BUFFER_CHILD_OPEN, // Ale 970528
224 LFUN_TOC_INSERT, // Lgb 97-05-27
225 LFUN_FLOAT_LIST, // Lgb 20010503
227 LFUN_BUFFER_TOGGLE_READ_ONLY, // Lgb 97-05-27
228 LFUN_VC_REGISTER, // Lgb 97-07-01
229 LFUN_VC_CHECK_IN, // Lgb 97-07-01
230 LFUN_VC_CHECK_OUT, // Lgb 97-07-01
231 LFUN_VC_REVERT, // Lgb 97-07-01
233 LFUN_VC_UNDO_LAST, // Lgb 97-07-01
234 LFUN_BUFFER_EXPORT, // Lgb 97-07-29
235 LFUN_LABEL_GOTO, // Ale 970806
236 LFUN_DOTS_INSERT, // Asger 970929
237 LFUN_END_OF_SENTENCE_PERIOD_INSERT, // Asger 970929
239 LFUN_TOGGLE_CURSOR_FOLLOWS_SCROLLBAR, // ARRae 971202
240 LFUN_BUFFER_CHKTEX, // Asger 971030
241 LFUN_HTML_INSERT, // CFO-G 971121; must co-exist with URL_INSERT as of 20060905
242 LFUN_URL_INSERT, // CFO-G 971121
243 LFUN_WORD_FIND_FORWARD, // Etienne 980216
245 LFUN_WORD_FIND_BACKWARD, // Etienne 980220
246 LFUN_APPENDIX, // ettrich 980505
247 LFUN_BUFFER_IMPORT, // Asger 980724
248 LFUN_MENU_SEPARATOR_INSERT, // Asger 990220
249 LFUN_COMMAND_SEQUENCE, // Andre' 991111
251 LFUN_PREFERENCES_SAVE, // Lgb 991127
252 LFUN_HELP_OPEN, // Jug 990627
253 LFUN_DATE_INSERT, // jdblair 20000131
254 LFUN_LANGUAGE, // Dekel 20000203
255 LFUN_ERT_INSERT, // Jug 20000218
257 LFUN_FOOTNOTE_INSERT, // Jug 20000307
258 LFUN_PARAGRAPH_SPACING, // Lgb 20000411
259 LFUN_TABULAR_INSERT, // Jug 20000412
260 LFUN_LOFVIEW, // Dekel 20000519
261 LFUN_LOTVIEW, // Dekel 20000519
263 LFUN_LOAVIEW, // Dekel 20000519
264 LFUN_SET_COLOR, // SLior 20000611
265 LFUN_MARGINALNOTE_INSERT, // Lgb 20000626
266 LFUN_FLOAT_INSERT, // Lgb 20000627
267 LFUN_FLOAT_WIDE_INSERT, // Lgb 20010531
269 LFUN_CAPTION_INSERT, // Lgb 20000718; inactive as of 20060905
271 LFUN_TABULAR_FEATURE, // Jug 20000728
272 LFUN_LAYOUT_TABULAR, // Jug 20000731
273 LFUN_BUFFER_UPDATE, // Dekel 20000805
275 LFUN_INDEX_INSERT, // Angus 20000803
276 LFUN_SCREEN_FONT_UPDATE, // ARRae 20000813
277 LFUN_PARAGRAPH_GOTO, // Dekel 20000826
278 LFUN_REFERENCE_NEXT, // Dekel 20010114
279 LFUN_BOOKMARK_SAVE, // Dekel 20010127
281 LFUN_BOOKMARK_GOTO, // Dekel 20010127
282 LFUN_SELECT_FILE_SYNC, // Levon 20010214
283 LFUN_MESSAGE, // Lgb 20010408; for scripting purposes, output in minibuffer
284 LFUN_CHARS_TRANSPOSE, // Lgb 20010425
285 LFUN_ESCAPE, // Lgb 20010517
287 LFUN_THESAURUS_ENTRY, // Levon 20010720
288 LFUN_OPTIONAL_INSERT, // Martin 12 Aug 2002
289 LFUN_MOUSE_PRESS, // André 9 Aug 2002
290 LFUN_MOUSE_MOTION, // André 9 Aug 2002
291 LFUN_MOUSE_RELEASE, // André 9 Aug 2002
293 LFUN_MOUSE_DOUBLE, // André 9 Aug 2002
294 LFUN_MOUSE_TRIPLE, // André 9 Aug 2002
295 LFUN_WRAP_INSERT, // Dekel 7 Apr 2002
296 LFUN_CHANGES_TRACK, // Levon 20021001 (cool date !)
297 LFUN_CHANGES_MERGE, // Levon 20021016
299 LFUN_CHANGE_ACCEPT, // Levon 20021016
300 LFUN_CHANGE_REJECT, // Levon 20021016
301 LFUN_ALL_CHANGES_ACCEPT, // Levon 20021016
302 LFUN_ALL_CHANGES_REJECT, // Levon 20021016
303 LFUN_BIBITEM_INSERT, // André 14 Feb 2003
306 LFUN_DIALOG_SHOW_NEW_INSET,
309 LFUN_DIALOG_TOGGLE, // JSpitzm 20070430
311 LFUN_DIALOG_DISCONNECT_INSET,
315 LFUN_INSET_DIALOG_UPDATE,
318 LFUN_PARAGRAPH_PARAMS_APPLY,
319 LFUN_PARAGRAPH_UPDATE,
325 LFUN_PAGEBREAK_INSERT,
330 LFUN_CHARSTYLE_INSERT,
333 LFUN_BUFFER_EXPORT_CUSTOM,
336 LFUN_NEXT_INSET_TOGGLE,
337 LFUN_ALL_INSETS_TOGGLE,
338 LFUN_BUFFER_LANGUAGE,
339 LFUN_TEXTCLASS_APPLY,
342 LFUN_BUFFER_SAVE_AS_DEFAULT,
343 LFUN_BUFFER_PARAMS_APPLY,
349 LFUN_BUFFER_PREVIOUS,
351 LFUN_CHANGES_OUTPUT, // jspitzm 20050121
353 LFUN_BIBTEX_DATABASE_ADD,
354 LFUN_BIBTEX_DATABASE_DEL,
355 LFUN_CITATION_INSERT,
356 LFUN_OUTLINE_UP, // Vermeer 20060323
361 LFUN_PARAGRAPH_MOVE_DOWN, // Edwin 20060408
362 LFUN_PARAGRAPH_MOVE_UP, // Edwin 20060408
363 LFUN_BUFFER_TOGGLE_COMPRESSION, // bpeng 20060427
366 LFUN_CLIPBOARD_PASTE,
367 LFUN_INSET_DISSOLVE, // jspitzm 20060807
369 LFUN_WINDOW_NEW, // Abdel 20061021
371 LFUN_WINDOW_CLOSE, // Abdel 20061023
372 LFUN_UNICODE_INSERT, // Lgb 20061022
373 LFUN_BOOKMARK_CLEAR, // bpeng 20061031
374 LFUN_NOMENCL_INSERT, // Ugras
375 LFUN_NOMENCL_PRINT, // Ugras
377 LFUN_CLEARPAGE_INSERT, // Ugras 20061125
378 LFUN_CLEARDOUBLEPAGE_INSERT, // Ugras 20061125
379 LFUN_LISTING_INSERT, // Herbert 20011110, bpeng 20070502
380 LFUN_TOOLBAR_TOGGLE, // Edwin 20070521
382 LFUN_LASTACTION // end of the table
385 std::ostream & operator<<(std::ostream &, kb_action);