Commit Graph

699 Commits

Author SHA1 Message Date
Lars Gullik Bjønnes
6b2232a29c src/*.cpp: reformatting to increase consistency 2012-10-28 17:42:07 +01:00
Juergen Spitzmueller
fab7d42608 Whitespace 2012-09-30 16:27:11 +02:00
Juergen Spitzmueller
e26635bfb9 UI for separate control of master/child branch state (#7642, part of #7643) 2012-09-30 14:59:24 +02:00
Vincent van Ravesteijn
a1bda4e045 Fix bug #8296: Crash when clicking on completion in math
When the user clicks on the completion, the completion disappears. This
means that we have to fix the cursor before setting it.
2012-09-23 16:44:22 +02:00
Jean-Marc Lasgouttes
0ef36860c3 Handle sending a FuncRequest object to lyxerr
* Implement the corresponding operator<<

  * Use it in a couple new places
2012-06-07 17:21:49 +02:00
Richard Heck
8b2aab9b3d Style. 2012-06-04 13:42:46 -04:00
Richard Heck
7ef8df460a Fix crash reported by Tommaso:
http://marc.info/?l=lyx-devel&m=133876924408431&w=2
The problem here is that the copy_params() routine in FindAndReplace.cpp
created a new DocumentClass, but it never updated its Buffer to reflect
that new DocumentClass. So its Paragraphs still contained points to the
Layouts in the old DocumentClass which, since ead697d4b6, gets garbage
collected once it is no longer needed. So the Layout doesn't exist, and
we crash.
2012-06-04 13:39:24 -04:00
Richard Heck
ead697d4b6 Deal with memory issue reported some time ago in connection with DocumentClass
objects. The problem that led to the leak is that these objects can be held in
memory long after the Buffer that created them is gone, mostly due to their
use in the CutStack. So they were previously held in a storage facility, the
DocumentClassBundle. Unfortunately, they were now being created too often,
especially by cloning. It's not really a leak, because they're accessible, but
we weren't ever destroying them.

This new approach uses a shared_ptr instead.

Thanks to Vincent for pointing out const_pointer_cast.
2012-05-31 12:34:29 -04:00
Vincent van Ravesteijn
d20cb73b87 Fix bug #8166: Crash on clicking away from empty last paragraph
This reverts the previous fix in [0a33374c/lyxgit] and fixes it
differently.

We always have to call 'notifyCursorLeaves', but we only have to make sure
that we call the 'fixIfBroken()' functions first.
2012-05-23 08:02:40 +02:00
Vincent van Ravesteijn
0a33374c0d Fix bug #8166: Crash on clicking away from empty paragraph
We rely on the 'or' operator to prevent us from calling
'notifyCursorLeaves' if one of the two cursors is broken. This doesn't
work when using the '|' operator. The compiler 'optimizes' the code in
such a way that we always call notifyCursorLeaves anyway. Using the '||'
operator fixes this.
2012-05-23 01:31:43 +02:00
Enrico Forestieri
9825621798 Fix bug #8140: Crash with math macros and input completion
When clicking away in the same math inset after hitting '\', the
cursor may be broken and all of its instances have to be fixed.
2012-04-30 23:55:34 +02:00
Vincent van Ravesteijn
3a395ca0f5 BufferView::dispatch(): add a missing break 2012-04-29 14:51:24 +02:00
Stephan Witt
42dfd71197 #7789 unify and fix buffer statistics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40602 a592a061-630c-0410-9148-cb99ea01b6c8
2012-01-12 07:03:24 +00:00
Tommaso Cucinotta
7422c56d67 Fixing consistency of replace actions in GUI with readonly status of target document buffer
(i.e., it was possible to replace in readonly buffers!)
See also http://comments.gmane.org/gmane.editors.lyx.devel/140074


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40548 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-30 15:31:56 +00:00
Jean-Marc Lasgouttes
84c603255d further fix to #7909
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40505 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-16 14:36:31 +00:00
Pavel Sanda
278498f81b Experimental search for highest upper bound of inset-forall reported by user.
Fixes #7945.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40501 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-15 16:39:35 +00:00
Vincent van Ravesteijn
7d98d770b1 Cleanup r40377
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40379 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-05 13:41:15 +00:00
Vincent van Ravesteijn
a35e512e90 Fix bug #7916: Undo warning message when inserting plaintext file
LFUN_INSERT_PLAINTEXT is handled in GuiView because it might need to ask for a filename. But if the filename is given as a paramater we can handle it in BufferView immediately. Also, when we've asked for the filename in GuiView we should dispatch the LFUN to BufferView in order to properly use the Undo mechanism.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40377 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-05 13:12:57 +00:00
Jean-Marc Lasgouttes
9928a67e32 Fix bug #7909: mark-on selection is lost during screen-down and screen-up
The trick is to rely on Cursor::selHandle instead of fiddling with the selection


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40372 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-05 08:35:55 +00:00
Richard Heck
66e633811e There's no need to separate this logic out if it's only called
from the one place.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40359 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-04 02:38:00 +00:00
Richard Heck
210a440609 Attempt to fix #7673 in a more "interesting" way than in branch (where
we will be cautious, of course). The problem was that we were issuing
the Buffer::changed() signal before we did updateBuffer(), and this
caused an inconsistency. The idea here is to defer issuing this signal
until we call processUpdateFlags(). We know we need a redraw if we've
deleted a whole paragraph.

This should work properly, so long as checkDepm is called from within
the dispatch mechanism. There may, however, be other paths, and I've
noted one explicitly with a FIXME in Text2.cpp. I've tested a few
different variations, however, and I haven't seen any problems. But if
we do run into problems, we can go ahead and do the update there that we
were previously doing in checkDepm itself.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40352 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-03 22:42:09 +00:00
Richard Heck
8c69aca339 Add constness in several places.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40338 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-02 22:41:33 +00:00
Richard Heck
3a03e71c3e Deal with the part of #7872 involving changes of branch activation
from Document>Settings.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40333 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-02 21:21:30 +00:00
Vincent van Ravesteijn
7287a259c5 Change the type of the context menu name to string
There is no need for GUI-elements to use docstring.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40058 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-29 14:48:55 +00:00
Georg Baum
8e8c214bef Fix some bugs related to spaces in math:
- Interpret argument of LFUN_SPACE_INSERT correctly
- Use InsetMathSpace instead of InsetMathSpecialChar for "\ " (bug # 7728)
- Use InsetMathSpace instead of InsetMathChar for ~ (bug # 7728).
  This fixes also the display in LyX (previously a literal ~ was displayed).
Using InsetMathSpace enables also the "Insert Formatting" menu entries.
No file format change is needed, since the LaTeX export is unchanged.
Note that there are still some bugs related to spaces in math:
#7746, #7747, #7749, #7842


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39947 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-23 20:19:49 +00:00
Enrico Forestieri
21185402cb When changing the document language, also change the language of the
text which is not explicitly marked in a different language, irrespective
of the multilingual status, except for LTR<=>RTL changes.
See discussion in this thread:
http://thread.gmane.org/gmane.editors.lyx.devel/138380


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39702 a592a061-630c-0410-9148-cb99ea01b6c8
2011-09-18 21:18:57 +00:00
Vincent van Ravesteijn
56c59cf4eb Make the scrolling for large insets more naturally (bug #7662)
The patch fixes a case that I had forgotten. Namely, the case that when the height of a row was larger than the height of the screen and that the cursor is already visible. That's why I added a new if case to catch all situations in which the row height is larger than the height of the screen. If we then need scrolling we scroll to height/4 and 3*height/4. In the end, the height_/4 and 3*height_/4 should be replaced by the rowheights in the inset, but we need some extra infrastructure for that.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39697 a592a061-630c-0410-9148-cb99ea01b6c8
2011-09-18 09:35:06 +00:00
Stephan Witt
3a33672980 #7681 adjust the cursor language after document language change had changed the text language
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39564 a592a061-630c-0410-9148-cb99ea01b6c8
2011-08-29 17:25:44 +00:00
Stephan Witt
1a0b35288d #7740 Add undo for change of text language with LFUN_BUFFER_LANGUAGE
When a document is not multi-lingual the text contents is changed
to the new language. This should be recorded for Undo.
Because Undo wants a cursor the implemantation has to be
moved to the BufferView class.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39508 a592a061-630c-0410-9148-cb99ea01b6c8
2011-08-23 10:22:14 +00:00
Vincent van Ravesteijn
d631fe0001 Fix bug #7662: Incorrect scrolling for rows with larger ascent.
- After introducing the displayed vertical alignment for tables, we met for the first time situations in which row.ascent is very large. To make sure the scrolling still works, we have to do the same as we did for rows with a large descent.
- change row.ascent into defaultRowHeight. Before the above mentioned change, row.ascent usually was approximately the same as defaultRowHeight (by chance). However, it is now clear we don't really want row.ascent here.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39486 a592a061-630c-0410-9148-cb99ea01b6c8
2011-08-17 10:44:50 +00:00
Abdelrazak Younes
6056db3212 Header cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39300 a592a061-630c-0410-9148-cb99ea01b6c8
2011-07-14 17:00:35 +00:00
Abdelrazak Younes
850e4d80c0 Graphics cleanup: get rid of Previews.{h,cpp}
The PreviewLoader is created directly by Buffer on demand. The PreviewLoader cache was complex and unneeded because there is one and only one PreviewLoader per Buffer.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39276 a592a061-630c-0410-9148-cb99ea01b6c8
2011-07-12 12:43:11 +00:00
Richard Heck
318719f001 Potential fix for #7591.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38875 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-28 14:34:19 +00:00
Richard Heck
3f8ae08390 Fix for bug #7572. The basic problem here is that we are trusting the
viewer to give us sensible information, but that information may be out-
generated. So we need to check and make sure the values we get are
valid.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38859 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-27 20:37:29 +00:00
Richard Heck
80cb1f7674 Some cleanup and a fix for a potential crash while investigating #7572.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38858 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-27 19:47:10 +00:00
Richard Heck
45b57a0966 Fix crash reported by John Kennan.
We are missing the updateBuffer() call when we go through
mouseEventDispatch(). A consequence of the massive updateBuffer()
refactoring. Wish it had been caught before...

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38667 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-09 18:05:31 +00:00
Richard Heck
d4bca04616 Add a FIXME regarding remaining anchor issue.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38390 a592a061-630c-0410-9148-cb99ea01b6c8
2011-04-15 02:26:22 +00:00
Richard Heck
6be4045e0c Fix some more bugs similar to #7394, just fixed by Enrico.
The one remaining question is whether we should also call resetAnchor()
at the end of setCursor().


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38388 a592a061-630c-0410-9148-cb99ea01b6c8
2011-04-15 02:01:28 +00:00
Enrico Forestieri
075804d685 Fix bug #7394 (Crash while selecting texts)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38385 a592a061-630c-0410-9148-cb99ea01b6c8
2011-04-14 22:44:46 +00:00
Richard Heck
c10cd68fba Constify.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38381 a592a061-630c-0410-9148-cb99ea01b6c8
2011-04-14 20:34:18 +00:00
Stephan Witt
934cadd381 improve the method naming for "mark new word position", move the mark operation out of bookmarkEditPosition up one level to LFUN_SELF_INSERT of the text inset dispatch
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38181 a592a061-630c-0410-9148-cb99ea01b6c8
2011-04-01 05:49:04 +00:00
Richard Heck
3f27f951cb This is intended to be a pure renaming of the Inset::name() routine,
preparatory to fixing #7080. Note that mathed uses the same routine, but
for a completely different purpose, so I did not rename it there. I have
seen no difference in behavior after testing, e.g., opening and
exporting Math.lyx, and also re-saving it and looking at the diff.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38109 a592a061-630c-0410-9148-cb99ea01b6c8
2011-03-28 22:33:04 +00:00
Vincent van Ravesteijn
eec88b7e5e Revert wrong previous commit.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37959 a592a061-630c-0410-9148-cb99ea01b6c8
2011-03-19 10:34:59 +00:00
Vincent van Ravesteijn
e52af5f897 Simplify logic in InsetRef::latex().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37958 a592a061-630c-0410-9148-cb99ea01b6c8
2011-03-19 10:31:43 +00:00
Enrico Forestieri
397c03b433 Fix bug #7361 (Assertion when a latex error occurs in the first (empty) paragraph)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37954 a592a061-630c-0410-9148-cb99ea01b6c8
2011-03-18 17:26:17 +00:00
Abdelrazak Younes
076151f508 Trying to fix #7321: add some assertions.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37914 a592a061-630c-0410-9148-cb99ea01b6c8
2011-03-13 16:26:57 +00:00
Enrico Forestieri
624f725acb Fix bug #7316 (Crash editing commands in math mode)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37750 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-21 15:26:28 +00:00
Vincent van Ravesteijn
5036ca8500 Constify InsetMathNest::setMouseHover and remove the const_cast from BufferView.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37632 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-13 10:07:00 +00:00
Stephan Witt
f361c26a05 suppress the misspelled marker only when typing in a word the first time
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37463 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-03 17:27:13 +00:00
Jean-Marc Lasgouttes
370044551c Unify handling of pass thru insets and paragraphs by introducing Paragraph::isPassThru. Many lfuns are now disabled in sweave chunks.
Also, fix #7175 (do not output \noindent in passthru pars)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37328 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-26 11:04:42 +00:00
Abdelrazak Younes
9cf9f86b8f Move buffer dispatching code from GuiView::dispatchToBufferView() to BufferView::dispatch().
The execution order bv -> doc_bv -> buffer -> doc_buffer was artificial and not important AFAIU.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36734 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-05 01:18:32 +00:00
Enrico Forestieri
eb2600483a Fix bug #7068 (Crash when pressing down arrow in an equation when there is a suggestion)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36617 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-30 03:54:29 +00:00
Tommaso Cucinotta
d5eb8c0968 (finishing patch -- question was restored, but there were still problems)
Restore the wrap-around question when no more hits found while searching with Advanced Search.
The dispatched() flag is used currently in FindAndReplace.cpp in order to discriminate between
match found and not found and, in the latter case, pop-up the wrap-around question dialog.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36279 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-13 12:02:04 +00:00
Tommaso Cucinotta
112246ae9f Restore the wrap-around question when no more hits found while searching with Advanced Search.
The dispatched() flag is used currently in FindAndReplace.cpp in order to discriminate between
match found and not found and, in the latter case, pop-up the wrap-around question dialog.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36277 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-13 11:35:37 +00:00
Vincent van Ravesteijn
afa873dc5f Remove the FileName parameter of Buffer::loadLyXFile and friends. Now, getAutosaveFileNameFor and getEmergencyFileNamefor can be removed too. Last, the call to lyxvc.file_found_hook can now be centralized and can be given the correct parameter (d->filename instead of the name of the emergency/autosave file).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36145 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-05 21:21:01 +00:00
Vincent van Ravesteijn
eff06951a9 Centralize preview generation/deletion code to Buffer::updatePreviews and Buffer::removePreviews.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35922 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-29 20:00:51 +00:00
Vincent van Ravesteijn
ef7ecea2b3 Move the call to Buffer::errors("Parse") from BufferView::insertLyXFile to GuiView::insertLyXFile.
Buffer::errors("Parse") is called 7 times in the whole project. 4 times from GuiView and three times from functions in other classes, but which are (almost) only called from the GuiView. 

Buffer::errors is used to signal the GUI that there might be an error occuring, but what sense does it make if it is only called from the Gui ?

Isn't it better to let the function return wether it succeeded or not and let the GuiView take action in doing something with the possible errors.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35911 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-29 16:51:50 +00:00
Vincent van Ravesteijn
c5b9664476 Remove the name parameter from string2params and params2string. We can always derive the name with insetName(params.code()).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35891 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-29 00:25:28 +00:00
Vincent van Ravesteijn
faab3618ae Fix two potential crashes due to invalid static_casts.
An example of a fatal function call is "gotoInset(this, NOTE_CODE, true)". Luckily we don't check for the contents in LFUN_NOTE_NEXT.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35860 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-27 00:42:43 +00:00
Vincent van Ravesteijn
07924ac300 Remove some unnecessary static_casts and add two FIXMEs about casts that don't look safe.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35856 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-26 16:45:21 +00:00
Vincent van Ravesteijn
75773f3c22 Use Buffer::ReadStatus as a return value for Buffer::loadLyXFile.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35818 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-25 10:18:42 +00:00
Edwin Leuven
4e5d3469f6 have pointing cursor when hovering something clickable
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35806 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-24 21:41:47 +00:00
Vincent van Ravesteijn
152491f916 Some cosmetics (from my local cosmetics branch).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35708 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-18 14:20:03 +00:00
Richard Heck
b1df2bd306 Move the screen redraw call out of the selection-setting routine. This
avoids multiple screen redraws in some cases.

If someone knows how to fix the FIXMEs in GuiErrorList and
GuiSpellcheker, I'd really appreciate it.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35651 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-14 15:02:48 +00:00
Richard Heck
03046ddfb0 We only need to set this once.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35641 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-13 18:58:12 +00:00
Richard Heck
d3e4bfb124 Change how some of the updating stuff is handled in lyxfind. I had no
idea what a mess this was.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35639 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-13 18:53:41 +00:00
Richard Heck
07fd1d6b63 The inset DOES know what kind of update is needed, and it is supposed to
be telling us. I'm not sure why this wasn't being used any more.

If we find any missing updates, it may be because the inset dispatch
stuff wasn't doing its job.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35634 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-13 18:06:01 +00:00
Richard Heck
2e1d9ee944 Clean up a few update things.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35633 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-13 18:04:44 +00:00
Richard Heck
6a80ce62ca DispatchResult::update() ==> DispatchResult::screenUpdate()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35631 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-13 17:28:55 +00:00
Richard Heck
35eb1a2405 Fix bug #6316.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35630 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-13 17:12:25 +00:00
Richard Heck
2291614a6c Introduce a typedef for vector<Buffer *>. No change in behavior
anticipated.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35529 a592a061-630c-0410-9148-cb99ea01b6c8
2010-09-29 11:55:10 +00:00
Richard Heck
b05e674e6f Whitespace.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35526 a592a061-630c-0410-9148-cb99ea01b6c8
2010-09-28 18:35:04 +00:00
Abdelrazak Younes
a648c39b70 Get rid of LFUN_LINE_INSERT: we use LFUN_INSET_INSERT "line".
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35344 a592a061-630c-0410-9148-cb99ea01b6c8
2010-09-12 07:01:24 +00:00
Uwe Stöhr
0e7ab29f49 InsetLine: support for the LaTeX command \rule; kick out the hardcoded \lyxline; fileformat change
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35299 a592a061-630c-0410-9148-cb99ea01b6c8
2010-09-07 00:41:00 +00:00
Richard Heck
e992140685 More work toward speeding up the bibfile caching stuff.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35103 a592a061-630c-0410-9148-cb99ea01b6c8
2010-08-09 17:01:51 +00:00
Jean-Marc Lasgouttes
f8eda52820 Fix bug #3733: 'undo' does not revert 'changed' status for file
* src/LyXAction.cpp: add ReadOnly flag to LFUN_UNDO and LFUN_REDO, since
  we do not want the dispatch mechanism to mark buffer dirty after them.
* src/BufferView.cpp: handle "by hand" the activation of undo/redo
* src/Undo.cpp: add lyx_clean member to UndoElement and make sure to 
  maintain it with undo operations; add a new markDirty() member for UndoStack
* src/Buffer.cpp: when saving a document, mark the undo and redo stacks 
  elements as dirty.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35068 a592a061-630c-0410-9148-cb99ea01b6c8
2010-08-06 23:54:04 +00:00
Richard Heck
35327c0b5b I guess I like this better.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35020 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-29 00:00:37 +00:00
Richard Heck
523056c092 Move the error message out of LayoutFileList::load() and have it be
reported by the caller. Otherwise, you could get the error message the
first time, and then it would succeed the second!!


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35019 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-28 21:03:27 +00:00
Richard Heck
5577e877bb Try to move all updateBuffer() calls to a central location. We now use
DispatchResult to store a flag that tells us whether we need a buffer
update or not. 

So: If you find a missing one, go to an appropriate place in the
dispatch and call cur.forceBufferUpdate() or, if you don't have a cursor
but do have a DispatchResult, call dr.forceBufferUpdate().

There is one remaining call I could not move, in
TextMetrics::redoParagraph. But this looks like an emergency call when
the macro context has not been set. There are also a couple calls that
are connected with buffer creation that I commented out, since the same
call is done again almost immediately. But I'm not positive about those.

Now the nice thing would be to do the same for updateMacros().


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34826 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-09 14:37:00 +00:00
Richard Heck
0e14f379f3 Rename a couple routines. This will avoid confusion with a forthcoming
patch.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34816 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-08 20:04:35 +00:00
Pavel Sanda
9b1ed66dbe Paragraphs start from 0
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34673 a592a061-630c-0410-9148-cb99ea01b6c8
2010-06-15 13:54:49 +00:00
Vincent van Ravesteijn
7f593196fc Add an update parameter to BufferView::scrollToCursor and BufferView::scrollDocView. This parameter indicates whether a repaint is requested
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34658 a592a061-630c-0410-9148-cb99ea01b6c8
2010-06-14 21:48:23 +00:00
Vincent van Ravesteijn
e1ba93a068 *BufferView: Remove default parameter value.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34657 a592a061-630c-0410-9148-cb99ea01b6c8
2010-06-14 21:38:38 +00:00
Jürgen Spitzmüller
c8faa01f4f make branch-add-insert aware of the separator ("|") [bug #6621]
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34653 a592a061-630c-0410-9148-cb99ea01b6c8
2010-06-14 13:39:08 +00:00
Pavel Sanda
053b905e08 Add output_sync icon to view/update toolbar
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34499 a592a061-630c-0410-9148-cb99ea01b6c8
2010-05-25 11:36:02 +00:00
Vincent van Ravesteijn
b269eb9117 Fix a crash due to Inset**::mouse_hover_[] containing an invalid pointer to a BufferView.
Clear the mouse_hover state when closing the BufferView. Otherwise, there will be an invalid pointer stored in the Inset and crashing LyX when the Inset's destructor is called.

See also r33908, r34117, r34348, r34353, r34354, r34363 and bug #3900.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34365 a592a061-630c-0410-9148-cb99ea01b6c8
2010-05-03 23:04:51 +00:00
Vincent van Ravesteijn
750620765f Fix another crash due to BufferView::last_inset_ being an invalid pointer.
Now, we only want to let the last_inset_ pointer point at insets that accept the mouse_hover setting. Otherwise, the pointer is not cleared on deletion of the inset.

See also r33908, r34117, r34348, r34353 and bug #3900.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34354 a592a061-630c-0410-9148-cb99ea01b6c8
2010-05-02 19:12:25 +00:00
Vincent van Ravesteijn
708b73cab7 Fix bug #3900: Mathed corners displayed without mouse hover.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34348 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-30 14:55:37 +00:00
Vincent van Ravesteijn
4c611e5745 Mouse hover property should be dependent on the specific bufferview. If there are 2 views showing the same buffer, an Inset can be shown as hovered in only one view.
This is also in preparation of a decent fix for bug #3900.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34347 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-30 14:47:46 +00:00
Vincent van Ravesteijn
87623ff478 Fix bug #6141: Scrolling error with insets at top of file.
Fix the regression introduced in r28397 while fixing bug #5573.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34296 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-26 14:57:27 +00:00
Vincent van Ravesteijn
b14ef59db8 Remove boundary parameter from BufferView::coordOffset(). The first DocIterator parameter already contains this information.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34248 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-21 13:12:40 +00:00
Vincent van Ravesteijn
63d24ca3c4 Remove boundary parameter from BufferView::getPos(). The first DocIterator parameter already contains this information.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34247 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-21 13:03:04 +00:00
Pavel Sanda
62ca7f3ae5 Proper camel case for FileName.absFilename
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34234 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-21 01:19:09 +00:00
Vincent van Ravesteijn
0b92e538d9 Use the AtPoint mechanism for the LFUN_INSET_EDIT and LFUN_LABEL_COPY_AS_REF.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34220 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-19 17:11:43 +00:00
Vincent van Ravesteijn
eb9fb94214 Do not set the enabling of the status flag if the getStatus() function does not give a decisive answer. As a consequence of removing this call from BufferView, we should disable the flag in the end of GuiApplication::dispatch() if it is not handled by any getStatus() function.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34164 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-16 15:55:37 +00:00
Vincent van Ravesteijn
5a77a063c1 Remove the unclear FuncStatus::operator|=. Without knowing the internals of FuncStatus it is unsafe to use this operator, so let's not use it.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34161 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-16 12:15:27 +00:00
Vincent van Ravesteijn
108a67ed43 Make Cursor::anchor_ private and make an access function Cursor::realAnchor() to stress the fact that this is thus not the normalAnchor().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34146 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-15 18:16:07 +00:00
Vincent van Ravesteijn
d8db0e8515 Rename anchor() to normalAnchor() as the anchor() function was already returning a normalized anchor in stead of the real one.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34145 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-15 17:49:15 +00:00
Vincent van Ravesteijn
8156884090 Make Cursor::disp_ private as it should be.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34144 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-15 17:34:34 +00:00
Vincent van Ravesteijn
8c5ad7af21 Revert part of r33908.
We need a way to test for the pointer to be valid before using it in updateHoveredInset(). For now, just set it to zero, so that this critical won't find its way into alpha-2.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34117 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-12 08:10:54 +00:00
Richard Heck
b79d8e5e2d Make members of FuncRequest private, per the FIXME there. Again, this is
basically a massive renaming, with no real changes.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34106 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-09 19:00:42 +00:00
Richard Heck
4c7a5d0024 This is just a giant renaming of member variables in FuncRequest,
preparatory to making them private.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34105 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-09 18:15:17 +00:00
Jean-Marc Lasgouttes
e8529a2ecf Get rid of all-insets-toggle and explain how to replace it with inset-forall.
Change inset-forall so that screen is not repainted at each iteration, since this lead to very slow opeartion on large files. This is not a problem for current uses, but can potentially lead to crashes.

See ticket #6641 for more thoughts and possible solutions.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34092 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-08 12:39:41 +00:00
Vincent van Ravesteijn
33f28623e5 * BufferView.cpp: typo again.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34087 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-08 09:17:00 +00:00
Uwe Stöhr
45bffba885 BufferView.cpp: typo
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34085 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-08 01:23:04 +00:00
Vincent van Ravesteijn
0b450f40e7 Refactorization: I don't like nested ?: constructions. Especially not followed by an if statement which is a special case for the deepest level of the nested ?: construction.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33910 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-29 15:32:45 +00:00
Vincent van Ravesteijn
6a9f44eaa2 Refactorization: Buffer::changed() can update the metrics as well, so we don't have to do it in scrollToCursor if we call Buffer::changed() anyway.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33909 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-29 15:29:26 +00:00
Vincent van Ravesteijn
71c1ad3517 Fix bug #3900: Insets painted as hovered without mouse hover.
When updating the screen, moving the mouse, or scrolling the buffer, we check whether the hovering status of the insets.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33908 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-29 15:21:10 +00:00
Tommaso Cucinotta
3b4bb219d6 No more bookmarks in internal buffers (addresses #6605).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33842 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-23 00:45:37 +00:00
Richard Heck
6f624ab79b Change updateLayout() to updateDocumentClass(), since that is what it
does.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33682 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-08 20:37:11 +00:00
Richard Heck
d65020b293 s/updateLabels/updateBuffer/g, per a suggestion of Abdel's.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33613 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-03 22:13:45 +00:00
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
Vincent van Ravesteijn
83b1b2c578 Revert unwanted commit (r29683) and some cosmetics.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29750 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-20 19:54:29 +00:00
Vincent van Ravesteijn
33c44db749 Fix bug #3706: Mathed builtin/macro expansion not performed when clicking away.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29688 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-15 22:49:20 +00:00
Vincent van Ravesteijn
22e8bd3c3e Partial fix for bug #5465. This will enable scrolling down past a very large inset. With this code, LyX will scroll up everytime you try to scroll past the inset, because the cursor is set on the uppermost row.
see:
http://thread.gmane.org/gmane.editors.lyx.devel/118449


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29683 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-15 21:24:08 +00:00
Vincent van Ravesteijn
8996be1208 Restore Object.Event order for:
- LFUN_LABEL_COPY_AS_REF,
- LFUN_LABEL_INSERT_AS_REF.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29680 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-15 21:05:19 +00:00
Vincent van Ravesteijn
3c976db90b Fix bug #5948: Copy as reference for equation labels.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29678 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-15 20:54:15 +00:00
Vincent van Ravesteijn
4c9fe33c83 * Move handling of LFUN_INSET_SETTINGS to Inset,
* Remove the EDITABLE enum,
* add functions hasSettings() for all insets.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29375 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-22 20:55:13 +00:00
Vincent van Ravesteijn
2d40854a46 Move handling of LFUN_INSET_SETTINGS to Inset.cpp
* Inset
Handle LFUN_INSET_SETTINGS.

* LyXAction
Use the AtPoint command flag.

* BufferView
* Text3
Remove code that handled LFUN_INSET_SETTINGS. The inset/next-inset part is handled by the AtPoint lfun flag. showInsetDialog is called by Inset::doDispatch and getStatus will be handled by all insets themselves.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29171 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-09 23:17:20 +00:00
Vincent van Ravesteijn
81f1aa7597 Where did that go ?
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29128 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-06 18:29:19 +00:00
Vincent van Ravesteijn
b9aa501051 Fix LFUN_MARK_TOGGLE, which actually did set the mark in stead of toggling it, remove some duplicated code (clearSelection() already calls resetAnchor()), and do some cosmetics.
(Is LFUN_MARK_TOGGLE actually used by anyone ?)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29127 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-06 18:25:23 +00:00
Richard Heck
4daf7b5dfc The Buffer::dispatch() patch.
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
2009-04-06 12:12:06 +00:00
Vincent van Ravesteijn
58b87df638 Fix bug #2213 (part 4): GuiChanges lacks "Previous Change" button.
Also show the Merge dialog when we are behind the last change.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29111 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-05 19:26:26 +00:00
Vincent van Ravesteijn
03671821d3 Fix bug #2213 (part 1): GuiChanges lacks "Previous Change" button.
Add LFUN_CHANGE_PREVIOUS.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29109 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-05 19:14:37 +00:00
Vincent van Ravesteijn
e207b0250f Make sure that the document is only scrolled to the cursor when the cursor is/was visible before resizing .
Resizing can occur by toggling toolbars (bug 4733), or by creating or closing buffers which causes the tabbar to toggle (e.g. bug 4174, comment 5).



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29066 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-03 21:39:06 +00:00
Jean-Marc Lasgouttes
6c422712e1 Extend the branch-(de)activate functions to work without a parameter. In
this case, when the cursor is on a branch inset (using the AtPoint mechanism)
the branch to which the branch inset belongs will be (de)activated.

This functionality can now be used through the branch inset context menu



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28987 a592a061-630c-0410-9148-cb99ea01b6c8
2009-03-31 09:38:07 +00:00
Jean-Marc Lasgouttes
30afece93d Kill next-inset-toggle and expand inset-toggle to provide the same functionality
* 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
2009-03-30 13:49:52 +00:00
Vincent van Ravesteijn
7ad28349ab Fix bug 4935: Scroll down below document
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
2009-03-27 17:41:58 +00:00
Vincent van Ravesteijn
1bbcd403fc Fix bug 4733: Auto popup of math toolbar hides the math editor
http://bugzilla.lyx.org/show_bug.cgi?id=4733

* GuiWorkArea: This adds "buffer_view_->scrollToCursor();" to GuiWorkArea::resizeBufferView() to make sure that the cursor remains visible. 

* BufferView: Make sure that we can call the scrollToCursor function without causing a new repaint.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28946 a592a061-630c-0410-9148-cb99ea01b6c8
2009-03-27 17:27:38 +00:00
Vincent van Ravesteijn
d0b6aebd39 Fix r28909: check for texted.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28927 a592a061-630c-0410-9148-cb99ea01b6c8
2009-03-26 23:08:47 +00:00
Vincent van Ravesteijn
b0d53e3250 Fix bug 5526: screen-recenter LFUN doesn't work
http://bugzilla.lyx.org/show_bug.cgi?id=5526

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28916 a592a061-630c-0410-9148-cb99ea01b6c8
2009-03-26 00:09:16 +00:00
Vincent van Ravesteijn
7ad10f7403 Fix bug 5434: DEPM not executed for PgUp/PgDown
http://bugzilla.lyx.org/show_bug.cgi?id=5434

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28909 a592a061-630c-0410-9148-cb99ea01b6c8
2009-03-25 21:00:34 +00:00
Vincent van Ravesteijn
1827aeda46 Fix scrolling regression (http://www.lyx.org/trac/changeset/28397).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28730 a592a061-630c-0410-9148-cb99ea01b6c8
2009-03-08 21:23:31 +00:00
Vincent van Ravesteijn
708e38ddb3 Fix bug 5744: http://bugzilla.lyx.org/show_bug.cgi?id=5744.
Crash with completion in mathed.

When deleting an inset, the stored DocIterator might contain a reference to a non-existent Inset and Text. Therefore, if we detect that the depth has changed, we are (for sure) not in the same paragraph, but we should make sure not to ask for the innerParagraph.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28596 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-25 00:39:55 +00:00
Pavel Sanda
e59dbac2ed Introduce jump-back navigation through bookmark 0
http://bugzilla.lyx.org/show_bug.cgi?id=898
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg147949.html


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28478 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-13 13:46:08 +00:00
Pavel Sanda
8044f9e4f3 Cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28469 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-12 23:46:16 +00:00
Vincent van Ravesteijn
24cd681863 Fix bug 5573. http://bugzilla.lyx.org/show_bug.cgi?id=5573.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28397 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-08 12:35:14 +00:00
Uwe Stöhr
b742ff6406 support for the LaTeX commands \*phantom, fileformat change
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28292 a592a061-630c-0410-9148-cb99ea01b6c8
2009-01-30 00:56:37 +00:00
Vincent van Ravesteijn
7da84afa62 Adjust the comment for r28242.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28244 a592a061-630c-0410-9148-cb99ea01b6c8
2009-01-18 15:28:25 +00:00
Vincent van Ravesteijn
83f13982fc Avoid crash due to an infinite recursive loop when inset is NULL.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28242 a592a061-630c-0410-9148-cb99ea01b6c8
2009-01-18 15:21:57 +00:00
Jürgen Spitzmüller
743a29799b * use ulem instead of soul for change tracking
(fixes bugs 5091, 5480, 5647).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28114 a592a061-630c-0410-9148-cb99ea01b6c8
2009-01-12 08:01:28 +00:00
Jürgen Spitzmüller
c65ed50ced * BufferView.cpp:
- record undo for LFUN_NEXT_INSET_MODIFY.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27891 a592a061-630c-0410-9148-cb99ea01b6c8
2008-12-16 09:04:27 +00:00
Vincent van Ravesteijn
550f1d9ce8 Do not paint an invisible cursor.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27631 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-18 23:57:26 +00:00
André Pönitz
6192345f60 add Buffer * member to DocIterator
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27603 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-17 11:46:07 +00:00
Stefan Schimanski
412f520892 * "Goto label" in reference dialog works with master and child documents
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27590 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-16 21:28:06 +00:00
Stefan Schimanski
19b000287f * compile fix for vc++
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27578 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-16 19:25:22 +00:00
Stefan Schimanski
5a10add52e * "Copy as Reference" in the context menu of a label
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27575 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-16 19:19:07 +00:00
André Pönitz
f8f5a7b28d move updateLables to buffer
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27562 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-16 16:43:49 +00:00
Abdelrazak Younes
4209cbc631 Tommaso patch, part 5, lots of thing to cleanup still but I'll do that afterwards.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27521 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-16 00:12:21 +00:00
Stefan Schimanski
e2f312f8f0 * save one redraw on each change of the scrollbar.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27471 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-15 18:17:20 +00:00
Stefan Schimanski
481aff5aff * notifyCursorEnters called on insets when the cursor entered
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27465 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-15 17:11:01 +00:00
André Pönitz
f1cba8ff64 more latin1..utf8 schanges. all of src/* should be utf8 now
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27425 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-14 15:58:50 +00:00
Pavel Sanda
e4808961c9 Another selection painting patch, PainterInfo::backgroundColor introduced.
Patch by Vincent.

http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg145438.html



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27097 a592a061-630c-0410-9148-cb99ea01b6c8
2008-10-25 10:47:38 +00:00
Jean-Marc Lasgouttes
754ead5010 Fix bug 5310: http://bugzilla.lyx.org/show_bug.cgi?id=5310
* BufferView.cpp (dispatch): make sure to repaint the document after
	jumping to a new change.
	* lyxfind.cpp (findNextChange): do not ignore the last character when 
	a change extends to the end of an inset.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27083 a592a061-630c-0410-9148-cb99ea01b6c8
2008-10-24 15:46:44 +00:00
Jean-Marc Lasgouttes
709df05d9f Fix properly bug 5287: http://bugzilla.lyx.org/show_bug.cgi?id=5287
* BufferView.cpp (setCursorFromInset): do not ignore the first inset 
	of the document; revert first tentative patch for this bug.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26645 a592a061-630c-0410-9148-cb99ea01b6c8
2008-09-30 13:47:16 +00:00
Uwe Stöhr
54d81dd012 BufferView.cpp: fix http://bugzilla.lyx.org/show_bug.cgi?id=5287, patch by Vincent
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26630 a592a061-630c-0410-9148-cb99ea01b6c8
2008-09-29 22:55:24 +00:00
Pavel Sanda
42693547f7 Find-next fallback to search dialog when no string was entered before.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26573 a592a061-630c-0410-9148-cb99ea01b6c8
2008-09-26 10:07:10 +00:00
Pavel Sanda
7b1bf23337 Finish the cleanup in graphics.
LFUN_GRAPHICS_GROUPS_UNIFY is not needed anymore.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26550 a592a061-630c-0410-9148-cb99ea01b6c8
2008-09-25 20:50:33 +00:00
André Pönitz
4c7fdddd74 streamlining setter syntax. using mutable references seems a bit
outlandish compared to the rest of LyX


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26527 a592a061-630c-0410-9148-cb99ea01b6c8
2008-09-24 21:27:41 +00:00
Jean-Marc Lasgouttes
b0a3273bac BufferView::mouseDispatch: make sure to create an undo group
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26440 a592a061-630c-0410-9148-cb99ea01b6c8
2008-09-18 13:44:54 +00:00
Jean-Marc Lasgouttes
7b9bfecb2f another recordUndoFullDocument bits the dust
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26439 a592a061-630c-0410-9148-cb99ea01b6c8
2008-09-18 10:47:28 +00:00
Jean-Marc Lasgouttes
fafc1b1d3d re-implement correctly undo for graphics groups unification
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26429 a592a061-630c-0410-9148-cb99ea01b6c8
2008-09-17 14:54:37 +00:00
Jean-Marc Lasgouttes
d585528d50 fix properly http://bugzilla.lyx.org/show_bug.cgi?id=2040
* BufferView.cpp (setCursorFromInset): new method, useful to find
	an inset that is known to be in the document.

	* frontends/qt4/GuiView.cpp (dispatch): do a proper recordUndo
	befire appplying changes to an inset. The insets are responsible
	for recording additional undo steps that could be needed.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26428 a592a061-630c-0410-9148-cb99ea01b6c8
2008-09-17 14:51:27 +00:00
Jean-Marc Lasgouttes
aa67d5eb64 Fix bug 5065: DEPM fails with "cursor follows scrollbar"
http://bugzilla.lyx.org/show_bug.cgi?id=5065

	* BufferView.cpp (setCursorFromScrollbar): makes sure that the mouse is 	set using mouseSetCursor (so that dEPM can trigger). 



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26158 a592a061-630c-0410-9148-cb99ea01b6c8
2008-08-14 09:59:04 +00:00
Jean-Marc Lasgouttes
1b2c73c555 * BufferView.cpp (contextMenu): If there is a selection, return the
containing inset menu


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26157 a592a061-630c-0410-9148-cb99ea01b6c8
2008-08-14 09:45:42 +00:00
Richard Heck
1c71a1019b Revert another unintentional commit.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25774 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-21 16:41:29 +00:00
Richard Heck
e4c7a9a677 Fix bug 5075, I hope.
If Trolltech ever fixes this, then we can put an upper bound onto the #if.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25773 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-21 16:39:46 +00:00
Pavel Sanda
7565a5934f Another debugs for selection engine.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25737 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-20 20:16:33 +00:00
Pavel Sanda
f01c52da7d Revert http://www.lyx.org/trac/changeset/25553 and try better fix for bug
http://bugzilla.lyx.org/show_bug.cgi?id=5008



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25719 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-19 18:35:48 +00:00
Richard Heck
e40196edbc Temporary fix for crash due to r24526. Jurgen, please do whatever needs doing.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25714 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-19 16:03:04 +00:00
Pavel Sanda
4813fe32bb Add debug message.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25626 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-15 00:33:37 +00:00
Abdelrazak Younes
79beb91e3a Sanitize LyX singleton access by getting rid of ref() and cref() methods.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25597 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-14 08:35:00 +00:00
Abdelrazak Younes
647ac4a221 safeguards:
- move Previews singleton to LyX
- LyX.cpp: set singleton to zero at destruction.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25594 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-14 07:16:00 +00:00
Abdelrazak Younes
29253a74d5 Fix http://bugzilla.lyx.org/show_bug.cgi?id=5023
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25560 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-11 09:03:09 +00:00
Pavel Sanda
08165a71bb Fix bug http://bugzilla.lyx.org/show_bug.cgi?id=5008 .
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25553 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-10 23:35:12 +00:00
Richard Heck
780bce0f96 Rename empty layout stuff to plain layout stuff.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25541 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-10 17:41:52 +00:00
Abdelrazak Younes
979f5211a4 Fix PageDown/Up when at bottom/top of the document. Now the cursor moves to the bottom/top position. This also fixes http://bugzilla.lyx.org/show_bug.cgi?id=4384
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25441 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-04 11:33:28 +00:00
Pavel Sanda
78356819ea Move LFUN_ALL_INSETS_TOGGLE dispatch to BufferView.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25371 a592a061-630c-0410-9148-cb99ea01b6c8
2008-06-24 07:52:49 +00:00
Pavel Sanda
4080b7cc24 Move LFUN_GRAPHICS_GROUPS_UNIFY dispatch to BufferView.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25370 a592a061-630c-0410-9148-cb99ea01b6c8
2008-06-24 07:43:47 +00:00
Pavel Sanda
397afb607f Move LFUN_NOTES_MUTATE dispatch to BufferView.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25368 a592a061-630c-0410-9148-cb99ea01b6c8
2008-06-24 07:18:06 +00:00
Abdelrazak Younes
f29a8f54a4 Fix initial cursor visibility problem.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25322 a592a061-630c-0410-9148-cb99ea01b6c8
2008-06-19 13:10:25 +00:00
Bo Peng
f5101ebec8 InsetInfo: allow select and copy of text inside InsetInfo, trigger the info dialog correctly
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25151 a592a061-630c-0410-9148-cb99ea01b6c8
2008-06-06 03:25:36 +00:00
Abdelrazak Younes
f276338227 Preliminar InsetInfo dialog. This was done as an exercise to show Bo (an others) how easy it is to create a new dialog. This dialog needs to be filled in, right now, there is just an OK button.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25144 a592a061-630c-0410-9148-cb99ea01b6c8
2008-06-05 15:08:46 +00:00
Richard Heck
77ed747114 FuncStatus::enabled(bool) --> FuncStatus::setEnabled(bool)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24999 a592a061-630c-0410-9148-cb99ea01b6c8
2008-05-29 15:14:00 +00:00
Richard Heck
8921a18a89 Add LFUN_BRANCH_ACTIVATE and LFUN_BRANCH_DEACTIVATE, fixing bug 4341.
These have been added to BufferView::dispatch() and BufferView::getStatus() for now. Shortly, we'll be making wider use of Buffer::dispatch() and introducing Buffer::getStatus() and moving these and some other LFUNs there.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24979 a592a061-630c-0410-9148-cb99ea01b6c8
2008-05-28 16:02:09 +00:00
Abdelrazak Younes
2dfc84a22c More accurate toc navigation (LFUN_PARAGRAPH_GOTO).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24798 a592a061-630c-0410-9148-cb99ea01b6c8
2008-05-16 12:48:13 +00:00
Jean-Marc Lasgouttes
d16ca201e6 Fix Settings entry for space insets.
* inset/inset.cpp (doDispatch, getStatus): handle LFUN_INSET_TOGGLE.

	* BufferView.cpp (getStatus): cleanup
	(dispatch): do not call Inset::edit() explicitely.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24752 a592a061-630c-0410-9148-cb99ea01b6c8
2008-05-13 14:44:53 +00:00
Abdelrazak Younes
3a62e23018 Fix http://bugzilla.lyx.org/show_bug.cgi?id=4821
Allow LFUN_INSET_SETTINGS with enclosing inset if this particular dialog has been explicitely requested.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24618 a592a061-630c-0410-9148-cb99ea01b6c8
2008-05-05 15:34:10 +00:00
Jean-Marc Lasgouttes
66837f5af5 * BufferView.cpp (getStatus): fix NEXT_INSET(TOGGLE|MODIFY) in order
to make context menus work.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24560 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-30 13:03:19 +00:00
Jürgen Spitzmüller
fa2f8d159b * merge LFUN_EDIT_EXTERNAL and LFUN_EDIT_GRAPHICS to one LFUN_EDIT_INSET (bug 3975)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24526 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-27 16:20:12 +00:00
Richard Heck
8a69ffd3bf Complete the removal of the embedding stuff. Maybe. It's hard to be sure we got everything, but this does compile, and it seems to work at least reasonably well. Any problems should of course be reported to the list.
For the record, this developer is sorry that the problems with this code were not noticed much earlier. It's not fun to do so much work and then have it all reverted.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24373 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-20 03:08:11 +00:00
André Pönitz
b8c086b363 a leak in DocumentClassBundle.
However, I am not really sure we should care about these. It's not much
difference, except that application shutdown in slower after 'fixing'
them.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24305 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-16 21:23:45 +00:00
André Pönitz
f227ebb021 style
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24303 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-16 20:43:30 +00:00
André Pönitz
bdc6d56cc7 initialize scrollbar parameters to some sensible dummy values.
valgrind reported conditional jumps on uninitialized values
in BufferView.cpp:1920


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24298 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-16 18:18:12 +00:00
André Pönitz
7f461f4392 infrastructure for 'graceful asserts'
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24216 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-10 21:49:34 +00:00
Richard Heck
2ce335e013 A couple cosmetic changes. Move the unicode problem where it belongs.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24036 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-29 14:49:13 +00:00
Pavel Sanda
89a58051e1 Make Richard happy (Find Next via LFUN_WORD_FIND).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23983 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-26 19:20:17 +00:00
Jürgen Spitzmüller
499d2a991d * src/BufferView.cpp:
- reintroduce check for dispatch state

* src/insets/InsetCaption.cpp:
	- disable LFUN_INSET_TOGGLE

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23929 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-24 18:22:54 +00:00
Jürgen Spitzmüller
241a8442d7 fix the general collapsable context-menu:
* src/InsetCollapsable.cpp (getStatus):
	- fix the logic

* src/BufferView.cpp:
	- fix next-inset-toggle
	- don't require argument for inset-settings

* lib/stdmenus.inc (context-collapsable):
	- use next-inset-toggle instead of inset-toggle
	- add (optional) inset-settings

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23928 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-24 16:33:56 +00:00
Jürgen Spitzmüller
bb51488435 * src/BufferView.cpp:
* src/Text3.cpp:
	- fix LFUN_INSET_SETTINGS so that it also works at cursor position.

* LyXAction.cpp:
	- doxy.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23923 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-24 14:12:19 +00:00
Jürgen Spitzmüller
e1ac6d4118 Some context menu work:
* src/BufferView.cpp:
* src/FuncCode.h:
* src/LyXAction.cpp:
	- new LFUN_NEXT_INSET_MODIFY

* src/insets/InsetBox.{cpp, h}:
* src/insets/InsetCommand.{cpp,h}:
* src/insets/InsetNote.{cpp,h}:
* src/insets/InsetSpace.{cpp,h}:
* src/insets/InsetVSpace.{cpp,h}:
	- implement context menu and access to some changes

* lib/ui/stdmenus.ui:
	- new context menus for Box, Space, VSpace, Note.
	- extend the context menu for InsetRef.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23920 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-24 13:33:48 +00:00
Bo Peng
057dd755f5 Move LFUN_GRAPHICS_EDIT and LFUN_EXTERNAL_EDIT from LyXFunc.cpp to BufferView.cpp so that a valid inset can be retrieved and called upon; add context-menu for InsetGraphics and InsetListings
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23910 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-24 04:27:43 +00:00
Richard Heck
f2cd36e8ad Change the signature of forceEmptyLayout(), so that we can pass a cell index with it. We'll need this to get tables right.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23829 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-19 16:21:33 +00:00
Bo Peng
6dc7cbe1e7 Continue working on the embedding feature. An additional parameter updateFile is passed to
EmbeddedFile::enable() and EmbeddedFiles::enable() to differentiate different usages.
A member variable bibfiles_ is added to InsetBibtex because it is not efficient to obtain
EmbeddedFileList each time from params()['bibfiles'] and params()['embed'].


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23576 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-09 06:05:22 +00:00
Abdelrazak Younes
22aa0137d3 Transfer general edit context menu from BufferView to InsetText.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23574 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-08 22:57:22 +00:00
Abdelrazak Younes
5da55588f2 * Buffer::getLabelList(): Speed up and simplify by using the tocBackend.
* Inset and derived class: get rid of getLabelList()
* BufferView::gotoLabel(): Speed up and simplify by using the tocBackend.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23541 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-07 19:46:04 +00:00
Abdelrazak Younes
a4d5b78430 Transfer and bug fix LFUN_BUFFER_BEGIN/END_SELECT to BufferView.cpp
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23512 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-06 15:39:30 +00:00
Abdelrazak Younes
5a9653203f Fix PageUp/Down select when at the top/bottom of a document.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23510 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-06 12:41:38 +00:00
Abdelrazak Younes
2cf1154734 Fix bug http://bugzilla.lyx.org/show_bug.cgi?id=4599
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23401 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-02 19:07:15 +00:00
Stefan Schimanski
8c4b08920e * bug fix to only do paragraph redraws, not fullscreen
* avoid an extra redraw due to completion when typing


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23349 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-29 09:18:46 +00:00
Richard Heck
d8a6b5bfd0 Remove TextClassPtr without losing the type safety it provided.
See these threads:
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg136112.html
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg136062.html
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg135997.html
for some background.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23299 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-28 01:42:02 +00:00
André Pönitz
1cca0a86bd API cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23295 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-27 23:03:26 +00:00
André Pönitz
db8c16d554 progress on buffer-reference-in-insets. beware of instabilities...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23289 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-27 20:43:16 +00:00
Stefan Schimanski
4413bf3783 * Update::SinglePar is enough, Update::Force is a fullscreen update
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23251 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-26 14:22:56 +00:00
Richard Heck
0362c6aae7 Andre's s/getTextClass/textClass/ cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23190 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-24 15:06:35 +00:00
Richard Heck
2e7d1199df Revert 23154.
Sorry, Andre, but this broke not only the modules stuff but the general handling of TextClasses. I'm not opposed to doing this sort of thing, but it's going to be a little more complicated. I'll do it when I get a bit of time, or I can explain what the issue is here if you want to do it.

I'll separately re-commit some of the cleanup here.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23189 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-24 14:59:23 +00:00
André Pönitz
b306e9a2e1 Replace the text class shared ptr by good old index-into-global-list.
Also a few cosmetical changes where I xould not resist.

Would be nice if the 'modules people' could verify that their baby 
is strill alive... 



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23154 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-23 11:36:15 +00:00
Stefan Schimanski
f2837e7bcb * remove debug output
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23149 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-23 03:13:54 +00:00
Stefan Schimanski
8527a08903 * simplify notifyCursorLeaves logic: We now only call it from strategic
places, i.e.
  - BufferView::setMouseCursor,
  - BufferView::mouseEventDispatch
  - LyXFunc::dispatch
  Before it was called from several dispatch handlers in the middle of the
  dispatch process. Because the cursor might get invalidated, this is
  not a good idea. We had plenty of crashes and odd behaviours because
  of this as nobody really understood those cases.

  This fixes (at least) #2069 and #4163.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23140 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-22 20:45:18 +00:00
Stefan Schimanski
833f0bab52 * minimize redraws during completion
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23105 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-21 19:43:16 +00:00
Stefan Schimanski
1bf7b59d60 * completion infrastructure
* completion support for mathed
* experimental completion support for text


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23104 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-21 19:42:34 +00:00
Abdelrazak Younes
f27c3fde43 * BufferView::resize() Remove showCursor() call when resizing.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23085 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-21 09:23:01 +00:00
Abdelrazak Younes
2a42f56b4e following revert of 23068: Better fix for bug 4044
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23076 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-20 14:53:19 +00:00
Abdelrazak Younes
3d3a55386d revert 23068 as this was causing a recursive repaint.
Warning for the future: *no* painting activity should happen inside a paint event.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23071 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-20 13:32:03 +00:00
Pavel Sanda
72b270ab4b Improve fullscreen mode (bug 4146).
- added toolbars/tabbar/scrollbar toggling
- added text width control
- added GUI preferences & menu & shortcut

Known problems:
- Outliner in Mac is seeking some Mac devie to fix (see hints here:
  http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg135382.html ) 
- Toolbars visibility is shared between windows (views)
  (needs toolbars overhaul).
- Adding new tab items does not reflect fullscreen mode
  (i.e. margins and tabbar get visible)



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23069 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-19 21:51:55 +00:00
Pavel Sanda
1ab314f8e6 Update cursor and scrollbar after resize.
Fixes bug 4044.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23068 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-19 21:27:18 +00:00
Richard Heck
040f3431e7 Fix bug 4037 and related problems. The patch has been cleaned up a bit
from the one posted to the list.

The basic idea has two parts. First, we hard code an "empty layout"
(called PlainLayout, for want of a better name) in TextClass and read it
before doing anything else. It can therefore be customized by classes,
if they want---say, to make it left-aligned. Second, InsetText's are
divided into three types: (i) normal ones, that use the "default" layout
defined by the text class; (ii) highly restrictive ones, such as ERT and
(not quite an inset) table cells, which demand the empty layout; (iii)
middling ones, which default to an empty layout and use the empty layout
in place of the default. (This is so we don't get the same problem we
had with ERT in e.g. footnotes.) The type of inset is signaled by new
methods InsetText::forceEmptyLayout() and InsetText::useEmptyLayout().
(The latter might better be called: useEmptyLayoutInsteadOfDefault(),
but that's silly.) The old InsetText::forceDefaultParagraphs() has been
split into these, plus a new method InsetText::allowParagraphCustomization(). 
A lot of the changes just adapt to this change.

The other big change is in GuiToolbar: We want to show LyXDefault and
the "default" layout only when they're active.

There are a handful of places where I'm not entirely sure whether we
should be using forceEmptyLayout or !allowParagraphCustomization() or
both. The InsetCaption is one of these. These places, and some others,
are marked with FIXMEs, so I'd appreciate it if people would search
through the patch and let me know whether these need changing. If they
don't, the FIXMEs can be deleted.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22966 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-12 17:31:07 +00:00
Abdelrazak Younes
2f54e2b75f LFUN_PARAGRAPH_GOTO: break/continue early. Force a full redraw.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22954 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-12 08:04:59 +00:00
Abdelrazak Younes
76ec27281b * BufferView::putSelectionAt(): Ensure a redraw in any case.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22927 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-10 19:18:57 +00:00
Abdelrazak Younes
149778a0a5 Ensure that the cursor is visible when searching text. Should fix the spellchecker and a few other bugs.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22926 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-10 19:05:09 +00:00
Abdelrazak Younes
02e8322c79 Fix LFUN_WORD_FIND
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22925 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-10 18:52:32 +00:00
Abdelrazak Younes
288b939274 More sensible default margins for fullscreen mode.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22913 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-10 10:01:16 +00:00
Abdelrazak Younes
6cdf6bd6ab Support full screen in BufferView
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22899 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-09 17:20:23 +00:00
André Pönitz
24fdfc7d5e start work on less-likely-to-misuse iterators.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22898 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-09 15:23:05 +00:00
José Matox
03fb3b0aec Patch to please gcc 4.3. Less bloat in the include headers means that
we need to include explicitly some header files now.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22846 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-07 17:04:06 +00:00
Abdelrazak Younes
28826a461c header cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22826 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-07 08:58:35 +00:00
Stefan Schimanski
bfd3a964b3 * show anchor paragraph completely if the whole buffer is visible.
We need some better handling of the case when the cursor is in the
very first line, but the line is not completely visible. If the line
is not heigher than the BufferView we should scroll up to show it
completely.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22790 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-05 14:23:59 +00:00
Stefan Schimanski
0364c6c3cb * Make sure the cursor is completely visible when the BufferView get's its initial size.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22786 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-05 13:14:53 +00:00
Abdelrazak Younes
ddec18ca01 * BufferView::scrollDocView(): take care of the general case before the particular top and bottom cases as those don't work very well when the document starts or ends with a big inset.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22710 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-29 13:34:18 +00:00
Abdelrazak Younes
b78acb0b9d * BufferView::scrollDocView(): simplify by using showCursor() and add some comments.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22708 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-29 10:17:41 +00:00
Abdelrazak Younes
81e06f7bc9 Fix scrolling to top and bottom of the document.
* BufferView
- showCursor(DocIterator): new DocIterator argument.
- showCursor(): use above method.
- scrollDocView(): take care of top and bottom special cases early in the method.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22707 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-29 09:51:12 +00:00
Stefan Schimanski
ab1a045d10 * fix random jumps when scrolling very fast using a touchpad or mouse wheel.
The problem was this: The value in BufferView::scrollDocView(int value) is
relative to the d->scrollbarParameters_.min/max interval and _not_ absolute.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22675 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-26 00:47:22 +00:00
Pavel Sanda
f0f485e40d Get rid of ugly strings in .po file
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22625 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-18 22:50:19 +00:00
Abdelrazak Younes
ae0667c112 More scrolling work. Now the scrollbar parameters are normalized against the screen geometry and coordinates. This simplifies the logic and the code significantly.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22614 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-17 17:06:55 +00:00
Abdelrazak Younes
68d11a0b29 scrolling tweaks...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22600 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-16 15:15:26 +00:00
Abdelrazak Younes
bc3029bcf4 scrolling tweaks... asymptotically tending towards scrolling correctness...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22599 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-16 14:31:00 +00:00
Abdelrazak Younes
2db839d7bb Scrolling fixes...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22598 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-16 09:06:36 +00:00
Bo Peng
c20f5a64d9 Embedding: simplify the interface of EmbeddedFiles, which will be later merged to EmbeddedFileList
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22444 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-08 18:33:43 +00:00
Abdelrazak Younes
e40499d5df BufferView::showCursor(): better fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22438 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-08 15:49:03 +00:00
Pavel Sanda
922aa7b1e8 Add characters counting.
Introduce LFUN_STATISTICS.
see http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg134033.html .


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22433 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-08 15:18:00 +00:00
Abdelrazak Younes
8379c2b70f Fix anchor bug.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22432 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-08 14:55:11 +00:00