This patch enhances the Buffer::dispatch() method to make it a full-fledged
member of the dispatch sequence. The most immediate payoff is that LFUNs that
are handled in Buffer::dispatch() can be used from the command line.
We make better use of the DispatchResult object and return error information
through it, rather than using return values. (This was JMarc's suggestion.) We
also introduce a corresponding Buffer::getStatus() method, and modify
BufferView::getStatus() to return a flag indicating whether a decision has been
made, as is already done in some other cases.
Finally, some LFUNs are moved to Buffer::dispatch(), including LFUN_BUFFER_PRINT.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29125 a592a061-630c-0410-9148-cb99ea01b6c8
* non-functional view formats are now disabled in the toolbar
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29123 a592a061-630c-0410-9148-cb99ea01b6c8
* src/LyXAction.h: introduce new function attribute AtPoint: this is
for lfuns that should first look at cursor postion whether there
is an inset, before dispatching to container inset.
* src/LyXAction.cpp: remove LFUN_NEXT_INSET_TOGGLE;
mark LFUN_INSET_TOGGLE as AtPoint.
* src/BufferView.cpp (dispatch, getStatus): remove handling of
LFUN_NEXT_INSET_TOGGLE.
* src/LyXFunc.cpp (dispatch, getStatus): handle functions marked
AtPoint.
* lib/*/*: replace next-inset-toggle with inset-toggle.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28980 a592a061-630c-0410-9148-cb99ea01b6c8
http://bugzilla.lyx.org/show_bug.cgi?id=4935
* GuiPrefs: Add an option to the Editing dialog.
* BufferView: Scroll below document if the option is set.
* LyXRC: Write/read the option from preferences file.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28947 a592a061-630c-0410-9148-cb99ea01b6c8
* the menu-item should also be enabled when the buffer is still unnamed (it will be saved anyway), and
* no buffer-reload after user cancel.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28028 a592a061-630c-0410-9148-cb99ea01b6c8
* LyXFunc.cpp:
Note that getStatus() always returned true for LFUN_BOOKMARK_CLEAR. This is because bookmarks().size() is hardcoded in the code to be 9 which is always larger than zero, obviously
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28014 a592a061-630c-0410-9148-cb99ea01b6c8
- if the lyx_view_ has been detroyed, create a new one (fix bug 5389).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27781 a592a061-630c-0410-9148-cb99ea01b6c8
RegExp experts please have a look at the FIXMEs in GuiThesaurus.cpp.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27572 a592a061-630c-0410-9148-cb99ea01b6c8
(1) I do not owe pavel a beer
(2) I removed the assert in isLoaded instead
(3) this fix is wrong anyway since there are other calls to this method.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27053 a592a061-630c-0410-9148-cb99ea01b6c8
isn't already added, that its requirements are satisfied, and that
it doesn't conflict with any loaded modules. Mostly, this just
moves existing code into a new routine where we can get at it.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26995 a592a061-630c-0410-9148-cb99ea01b6c8
\bind "Tab" "command-alternatives" "completion-accept;cell-forward"
The first of the metioned functions that is enabled with be called.
The code is pretty trivial and just stolen from command-sequence.
The binding mentioned is more or less the point of the patch, but we still need to decide exactly what the bindings should be. There have been various threads concerning this. You can use the above for testing. Add it to site.bind, replacing the existing binding.
Jose: Once the bindings have been sorted out, that will complete the work on this we said we wanted to do for rc3.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26518 a592a061-630c-0410-9148-cb99ea01b6c8
http://bugzilla.lyx.org/show_bug.cgi?id=5173
* Undo.cpp (beginUndoGroup, endUndoGroup): new methods.
(UndoElement): add group_id member
(UndoElementStack): when removing old undo entries, make sure to
remove whole groups.
(Undo::Private): add group_id and group_level (for nesting) members.
(doTextUndoOrRedo): new method. Apply _one_ UndoElement.
(textUndoOrRedo): call doTextUndoOrRedo on each element of the current
group.
(recordUndoFullDocument): put inside an undo group
* Cursor.cpp (beginUndoGroup, endUndoGroup): new methods.
* LyXFunc.cpp (dispatch): add calls to (begin|end)UndoGroup.
* lyxfind.cpp (replaceAll): use several recordUndo instead
of one recordUndoFullDocument.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26178 a592a061-630c-0410-9148-cb99ea01b6c8
LyXVC API was too narrow to master both cvs and rcs, so we have to change interface.
We still need one more operation for cvs update, but i need to sleep sometimes.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25750 a592a061-630c-0410-9148-cb99ea01b6c8