Commit Graph

338 Commits

Author SHA1 Message Date
Abdelrazak Younes
377cdd5f6c Transfer LyXfunc code to GuiApplication::dispatch() and getStatus(). Now
a lot of simplification is possible. Except some instability period...


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33389 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-09 16:11:13 +00:00
Jean-Marc Lasgouttes
668d0f8c3f do not use theLyXFunc()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33385 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-09 14:26:59 +00:00
Jean-Marc Lasgouttes
b4d588e78a cleanup handling of LFUN_REGEXP_MODE ; cleanup Text::getStatus
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33363 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-08 11:19:48 +00:00
Tommaso Cucinotta
e9e6463de7 Removed obsolete FIXME (the invoked isInternal() method already does that).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33304 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-31 22:18:21 +00:00
Tommaso Cucinotta
dff3792986 Refactor of r33302 (addressing #6457) according to vfr comments.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33303 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-31 22:12:23 +00:00
Tommaso Cucinotta
0881479c48 Inhibits insertion of Regexp insets within InsetERT context (and fixes #6495).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33302 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-31 21:38:18 +00:00
Jean-Marc Lasgouttes
fe9a43f44b Add DispatchResult argument to BufferView::dispatch, and remove explicit updates in there.
Split LyXFunc::dispatch into a wrapper that does the actual screen updates and
a worker method that updates a DispatchResult object.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33226 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-25 15:14:41 +00:00
Jürgen Spitzmüller
ee9a70acbe * BufferView.cpp:
- Fix crash when performing word-replace while the cursor has a selection
	  in mathed (bug 6437)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33204 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-24 17:35:10 +00:00
Jean-Marc Lasgouttes
ceb50a253c get rid of notes-mutate and explain that inset-forall can do the same
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32986 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-12 15:54:33 +00:00
Jean-Marc Lasgouttes
a00fbcd871 get rid of next-inset-modify ; inset-modify does the same now
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32965 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-11 15:50:07 +00:00
Jean-Marc Lasgouttes
b692466769 set max number of iterations to 10000 in inset-forall ; try to keep the cursor where it was (I am not sure that the effect of fixIfBroken seems natural though)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32885 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-08 15:57:25 +00:00
Vincent van Ravesteijn
570f96bc6e Add a boolean to GuiWorkArea::redraw to indicate whether the metrics must be updated. The current test "lyx_view_ != guiApp->currentView() || lyx_view_->currentWorkArea() != this" is not enough, especially not if the buffer is changed and buffer->changed() is called. Moreover, there are a lot of combinations of updateMetrics() followed by buffer->changed(), these can now be replaced by one call to buffer->changed(bool).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32874 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-08 02:03:54 +00:00
Pavel Sanda
e21867818e Fix crash
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32835 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-07 16:26:52 +00:00
Jean-Marc Lasgouttes
f2e6a5ecf8 Implement new inset-forall lfun. This function iterates over all insets in
current buffer and applies a given function at cursor position before the 
inset. It is actually possible to filter on the type of inset.


Remove all index insets:
inset-forall Index delete-char-forward

Remove all (!!) insets:
inset-forall * delete-char-forward

Close all Notes (also works for a particular branch, for example)
inset-forall Note inset-toggle close

Close only yellow sticky notes
inset-forall Note:Note inset-toggle close

Of course, things may become weird:
Put LyX in an infinite loop if there is at least a Note
inset-forall Note char-backward

In this case, the code will stop after 1000 iterations.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32834 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-07 15:47:58 +00:00
Tommaso Cucinotta
5cc2d6d73c Advanced F&R rework:
- scopes now handled in FindAndReplaceWidget, while lyxfind.cpp only searches within single buffer
- cursor().result().dispatched() now encodes whether a match was found or not, after LFUN_WORD_FINDADV dispatch
- removed a few unneeded functions
- followed a few cosmetic advices


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32760 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-04 12:29:38 +00:00
Jean-Marc Lasgouttes
8bab525eda revert unintented patch part
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32621 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-23 14:29:13 +00:00
Jean-Marc Lasgouttes
e5376bd800 another bad binding related to ticket #6416 (see r32619)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32620 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-23 14:27:43 +00:00
Vincent van Ravesteijn
7e08a4376e Fix part of bug #6400: Shift+mouse click loses the existing selection instead of extending it.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32578 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-18 12:08:32 +00:00
Jean-Marc Lasgouttes
7bf3d5cad0 Rename getLocalStatus to Cursor::getStatus
Move the AtPoint handling into the Cursor dispatch machinery

Note that the call to Cursor::getStatus is in BufferView::getStatus, while
the call to Cursor::dispatch is still in LyXFunc::dispatch. This needs to be
fixed, but the code there is a bit fragile.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31969 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-13 14:32:51 +00:00
Jean-Marc Lasgouttes
b67cd61d3c Avoid undo grouping error when using Undo or Redo. This is because undo grouping has to be done also when putting stuff on the undo/redo stack.
The solution is just to remove special code :)

I think there is a ticket for this, but I cannot find it.

Abdel, could you please validate my thinking?


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31869 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-06 13:32:58 +00:00
Vincent van Ravesteijn
8fd507ccf2 Remove parameter from cur.reset(). All calls had buffer().inset() as parameter.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31795 a592a061-630c-0410-9148-cb99ea01b6c8
2009-10-29 22:46:04 +00:00
Vincent van Ravesteijn
5d9fdda299 Move the call to LFUN_SET_COLOR from the handling of LFUN_BRANCH_ADD_INSERT to LFUN_BRANCH_ADD. Now, the sequence "branch-add A" + "branch-insert A" doesn't result in an undefined branch Inset in the document.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31792 a592a061-630c-0410-9148-cb99ea01b6c8
2009-10-29 22:06:27 +00:00
Vincent van Ravesteijn
d9ab7302a6 Fix bug #6193: Crash when navigating away from an empty super/subscript.
I still don't know why it is that bad that this call is made below, but this seems to fix the problem.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31758 a592a061-630c-0410-9148-cb99ea01b6c8
2009-10-27 00:11:56 +00:00
Vincent van Ravesteijn
f09a4ac03c Fix bug #6280: Wrong context menu is opened in an auto-opened inset.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31697 a592a061-630c-0410-9148-cb99ea01b6c8
2009-10-24 00:02:41 +00:00
Abdelrazak Younes
d38ca04ff7 Move Undo::beginUndoGroup() and Undo::endUndoGroup() calls to where they are used and necessary, hopefully.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31492 a592a061-630c-0410-9148-cb99ea01b6c8
2009-10-03 19:12:21 +00:00
Abdelrazak Younes
da47dc051e Fix gcc4.4 warnings.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31485 a592a061-630c-0410-9148-cb99ea01b6c8
2009-09-30 13:50:07 +00:00
Abdelrazak Younes
401b223dfb Transfer LFUN_INSET_APPLY from GuiView to BufferView.
The list of dialog edited inset is now stored in BufferView.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31472 a592a061-630c-0410-9148-cb99ea01b6c8
2009-09-27 10:29:13 +00:00
Abdelrazak Younes
e80a46ba4f Transfer LFUN_CITATION_INSERT to BufferView
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31469 a592a061-630c-0410-9148-cb99ea01b6c8
2009-09-26 17:30:29 +00:00
Abdelrazak Younes
09f96833bf Transfer LFUN_DIALOG_SHOW_NEW_INSET to BufferView and put InsetCommand related code to new function decodeInsetParam() in InsetCommand.cpp.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31468 a592a061-630c-0410-9148-cb99ea01b6c8
2009-09-26 17:19:18 +00:00
Abdelrazak Younes
66dc054c6f * Transfer LFUN_SERVER_GOTO_FILE_ROW to GuiView and clean it up a bit.
* Add a recenter() call to BufferView::setCursorFromRow() in order to get the screen centered around the found position.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31455 a592a061-630c-0410-9148-cb99ea01b6c8
2009-09-23 13:45:58 +00:00
Abdelrazak Younes
6e800efcaf Transfer special getStatus() code from LyXFunc to BufferView, GuiView and GuiApplication.
I tested this on Windows and Linux/X11 but not on Mac so...



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31451 a592a061-630c-0410-9148-cb99ea01b6c8
2009-09-23 09:07:24 +00:00
Abdelrazak Younes
d5d3ccc0fa Introduce a new LyXAction property 'NoInternal' to take care of LFUNs that should not be applied to internal Buffers and use that in BufferView.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31433 a592a061-630c-0410-9148-cb99ea01b6c8
2009-09-21 12:36:22 +00:00
Abdelrazak Younes
0edc2c8637 Fix crash with LFUN_PARAGRAPH_GOTO in embedded work area.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31427 a592a061-630c-0410-9148-cb99ea01b6c8
2009-09-21 08:21:37 +00:00
Abdelrazak Younes
53797b653a Try to dispatch to document BufferView in case dispatch to current BufferView fails. This is needed for the LFUNs introduced in r31412
URL: http://www.lyx.org/trac/changeset/31412




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31419 a592a061-630c-0410-9148-cb99ea01b6c8
2009-09-20 21:41:21 +00:00
Abdelrazak Younes
f10a5043a9 Kornel's gcc compil fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31418 a592a061-630c-0410-9148-cb99ea01b6c8
2009-09-20 19:37:26 +00:00
Abdelrazak Younes
16a82d6f97 * Move LFUN_TEXTCLASS_* and LFUN_TEXTCLASS_* to BufferView. This is a bit problematic because we don't check is this is a document BufferView or not for these LFUNs. We probably have to dispatch both to currentBufferView() and, if that fails, to documentBufferView(); same as we do know for current Buffer and document Buffer. Ideally those LFUN should go to Buffer as they operate on the full Buffer and the cursor is only needed either for an Undo record or to restore a cursor position. But we don't know how to do that inside Buffer of course.
* I transferred local function loadLayoutFile() in LyXFunc.cpp to a LayoutFileList::load().

Richard, as I am not into this layout thing, please check that these LFUNs still operate correctly (except from an embedded work area of course).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31412 a592a061-630c-0410-9148-cb99ea01b6c8
2009-09-19 20:56:12 +00:00
Abdelrazak Younes
4d7ed2056b move LFUN_BUFFER_PARAMS_APPLY to BufferView. I needed to make LyXFunc::updateLayout() public but this method is misplaced there.
LFUN_BUFFER_PARAMS_APPLY has now a status (disabled if read-only).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31411 a592a061-630c-0410-9148-cb99ea01b6c8
2009-09-19 17:56:53 +00:00
Abdelrazak Younes
1d5345289c Move LFUN_KEYMAP_* to BufferView.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31410 a592a061-630c-0410-9148-cb99ea01b6c8
2009-09-19 16:59:36 +00:00
Vincent van Ravesteijn
d4d8d03153 Move LFUN_WORD_FIND_FORWARD and LFUN_WORD_FIND_BACKWARD to their friends in BufferView.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31358 a592a061-630c-0410-9148-cb99ea01b6c8
2009-09-09 05:20:30 +00:00
Vincent van Ravesteijn
b67bf24d18 Remove other explicit tests for an internal buffer.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31356 a592a061-630c-0410-9148-cb99ea01b6c8
2009-09-09 04:58:48 +00:00
Tommaso Cucinotta
9673d23f08 Fix crash when positioning cursor under some conditions, e.g., when finding in the sample documents attached to #6112.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31339 a592a061-630c-0410-9148-cb99ea01b6c8
2009-09-07 23:58:56 +00:00
Vincent van Ravesteijn
e042119cbe * BufferView.cpp: style.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31181 a592a061-630c-0410-9148-cb99ea01b6c8
2009-08-21 20:09:15 +00:00
Tommaso Cucinotta
1c2d2f8fa4 Does not allow to enter (trivially) regular expression insets in the document under edit.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31180 a592a061-630c-0410-9148-cb99ea01b6c8
2009-08-21 18:40:37 +00:00
Uwe Stöhr
503844cb4c BufferView.cpp: for the new Search dialog: paint also the range behind the work area with the same color as the work area
This avoids confusion as discussed in this thread: http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg153997.html
; this patch is from Vincent

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31136 a592a061-630c-0410-9148-cb99ea01b6c8
2009-08-19 00:10:09 +00:00
Abdelrazak Younes
2b9e44cb01 Move contents of paragraph_funcs.* to Text.h and Text.cpp.
The goal is to simplify the code afterwards.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30955 a592a061-630c-0410-9148-cb99ea01b6c8
2009-08-09 17:30:41 +00:00
Abdelrazak Younes
f35561d055 Cleanup: Replace a bunch of Cursor arguments with DocIterators.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30951 a592a061-630c-0410-9148-cb99ea01b6c8
2009-08-09 16:49:41 +00:00
Jean-Marc Lasgouttes
41003ea0eb remove some explicit tests against ERT_CODE; more to come
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30625 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-16 10:08:13 +00:00
Pavel Sanda
edb52c37d2 Add LFUN_BRANCH_ADD_INSERT.
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg152890.html


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30467 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-11 09:38:31 +00:00
Jean-Marc Lasgouttes
042c5bf425 Fix bug http://www.lyx.org/trac/ticket/6026
LyX crashes when backward selecting during formula writing

The problem is basically that the anchor is not set (because there is no
selection going on) and BufferView::mouseSetCursor does not handle this.

 * Cursor.cpp (anchor): return immediately when there is no selection.

 * BufferView.cpp (mouseSetCursor): reset anchor before setting cursor



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30245 a592a061-630c-0410-9148-cb99ea01b6c8
2009-06-23 14:54:35 +00:00
Vincent van Ravesteijn
9173fe2c5e Fix bug #5944: Scrolling isn't predictable.
The row in editXY is corrected when we're scrolling with PgUp and PgDwn to make sure that the row where the cursor is places, is completely in the view.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29752 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-20 20:28:24 +00:00