1049 Commits

Author SHA1 Message Date
Jean-Marc Lasgouttes
bbbc2b6541 Fix to #8159: Undo doesn't restore environment depth correctly
The idea is to record undo at the place where the document is modified:

1/ in Buffer::updateBuffer, add a recordUndo, with the caveat that a
   const_cast has to be used (because updateBuffer is const but
   modifies the document, go figure).

2/ in GuiApplication::dispatch, add an extra undo group that
   encompasses the updateBuffer call. Some other undo groups may be
   redundant now, but it is not a problem since they do not cost
   anything.
2012-06-29 15:25:47 +02:00
Juergen Spitzmueller
6de47fa873 fix bug #8209: polyglossia commands ignored partial source preview 2012-06-28 18:15:43 +02:00
Juergen Spitzmueller
f84c8c56f5 Whitespace 2012-06-08 20:31:20 +02:00
Richard Heck
b7ac2d69e7 Allow LyX format to be written to View>Source window. 2012-06-05 10:24:15 -04:00
Richard Heck
cfc43d772d Move TexRow stuff near where it is used. 2012-06-05 10:24:15 -04:00
Jean-Marc Lasgouttes
9a3b6733c0 Revert "Second tentative fix to #8159: Undo doesn't restore environment depth correctly"
Did not mean to commit that.

This reverts commit 8f01556236591a1d72c427159974d261b71198ee.
2012-06-05 12:55:37 +02:00
Jean-Marc Lasgouttes
8f01556236 Second tentative fix to #8159: Undo doesn't restore environment depth correctly
In this version, the idea is to record undo at the place where the document is modified, which is definitely cleaner.

1/ in Buffer::updateBuffer, add a recordUndo, with the caveat that a
   const_cast has to be used

2/ in GuiApplication::dispatch, add an extra undo group that
   encompasses the updateBuffer call. Some other undo groups may be
   redundant now, but it is not a problem since they do not cost
   anything.
2012-06-05 11:32:56 +02:00
Jean-Marc Lasgouttes
a756403301 "Performance" fixes suggested by cppcheck
While cppcheck did not turn out any suspicious error messages, using
the "performance" flag highlighted several nitpicks in three categories
 * do not use it++ for iterators, ++it is better
 * do not use size() to test for emptyness, empty() is here
 * do not use "const T" as a function parameter, "const & T" is better

I doubt that any of these is a real performance problem, but the code is cleaner anyway.
2012-05-28 22:42:44 +02:00
Richard Heck
288c1e0faa Add "nice" flag for converters, addressing final problem with bug #4624. 2012-05-22 08:56:05 -04:00
Juergen Spitzmueller
ab1434dce3 If a file is saved as, reset its master if it has any, thus preventing a crash (bug 8161) 2012-05-19 10:16:28 +02:00
Enrico Forestieri
93ebb7a863 Fix bug #7982: LyX does not work if working directory a hard disk drive like D:\
In this case, the working dir has already a slash at the end.
Appending another one would result in a path ending with a double slash,
which has a special meaning when used in TEXINPUTS (all subdirs would
be recursively scanned). So, avoid doing that.
2012-05-14 13:08:30 +02:00
Vincent van Ravesteijn
5279d5a8a5 Properly mark a buffer as internal
Checking the extension of the temporary filename doesn't work anymore
since the naming of temporary files was corrected.
2012-05-06 20:12:17 +02:00
Richard Heck
631abb2da0 Allow viewing full file of plaintext source. 2012-04-27 21:17:08 -04:00
Richard Heck
db71ec4477 Re-organize logic of getSourceCode() routine, so we can see XHTML
for DocBook files.
2012-04-27 21:14:25 -04:00
Richard Heck
e56ee0b2e6 Don't output extra body tags with included files. 2012-04-23 13:55:13 -04:00
Enrico Forestieri
3285ce1d5c Use the right latex backend when a converter needs aux files.
If a converter specifies the needaux flag, latex (or xelatex) is
always run to produce the needed auxiliary files. This is wrong
because there are documents that can only be compiled with a specific
backend and thus the conversion may fail. On the other hand, even if
the document specifies the backend to be used, LyX ignores this info.

This commit rectifies this behavior by letting LyX run the same flavor
of the latex backend that shall be used for previewing the document
also for producing the auxiliary files.
2012-04-11 18:38:32 +02:00
Vincent van Ravesteijn
91bc04946f Fix a copy-paste error introduced in b754fb02 2012-04-08 21:47:40 +02:00
Richard Heck
33f34e8ffb Clear local layout before reading BufferParams. Otherwise, you can't
delete the local layout.
2012-04-03 15:53:56 -04:00
Georg Baum
1a6c599917 Extend the notermination flag to math as well.
Math commands need it as well as text commands. At the same time, this
further unifies the checking for termination and fixes cases of wrong
output (e.g. for 0x2005).
2012-03-25 15:57:38 +02:00
Vincent van Ravesteijn
1d5204315e Clear the error list from previous errors
We only copied the error list to the cloned buffer when makeLatexfile
failed. This means that a second try will never clear the error list and
the user will be presented the same list again.

Therefore, we unconditionally copy the error list such that we also clear
the list on success.
2012-03-17 19:00:25 +01:00
Richard Heck
fa0c2d9631 Show backends rather than formats in the View>Source combo box.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40900 a592a061-630c-0410-9148-cb99ea01b6c8
2012-03-09 22:24:20 +00:00
Georg Baum
26e5f1a8ec Use libmagic for file format detection if available.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40789 a592a061-630c-0410-9148-cb99ea01b6c8
2012-02-21 20:29:44 +00:00
Richard Heck
9283cbdbcb Fix crash reported on list when renaming a child buffer and
then trying to compile.

    There are really two problems here. One is that the renamed
    buffer needs to be reloaded. All kinds of files, etc, may not
    exist any more, if we've been saved to a new directory; our
    children e.g. may not be in the right place. And, in this case,
    we may no longer be a child of our old parent. Reloading will
    fix all of that.

    On reload, though, we need to clear our parent, since we may
    not have one any more. It will get reset if need be.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40609 a592a061-630c-0410-9148-cb99ea01b6c8
2012-01-13 03:31:01 +00: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
Richard Heck
c3f0e21968 Activate ability to write CSS to a separate file. There is no UI
for this yet, however.

Includes elements of a patch by Rob Oakes.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40409 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-06 22:17:22 +00:00
Richard Heck
986222a754 Collect CSS information in a string before writing it to the header.
This will make it easier to write it to a separate file.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40408 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-06 22:17:18 +00:00
Richard Heck
38b9a4530e New methods in LaTeXFeatures specifically for collection of CSS
information on XHTML output.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40407 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-06 22:17:13 +00:00
Richard Heck
e7877f6fee Math output flavor was not set when viewing source code.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40406 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-06 22:17:06 +00:00
Richard Heck
93146dc614 Need to save a pointer to this list, too.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40360 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-04 03:05:08 +00:00
Richard Heck
8e553c5671 We need to create the clone list here, even though the only thing
in it will be the one Buffer we are cloning.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40358 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-04 02:35:38 +00:00
Richard Heck
1ae948e136 Fix #7923: Don't clone all the children on autosave.
We split Buffer::clone() into various routines that know whether
to clone the children.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40357 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-03 23:20:18 +00:00
Julien Rioux
e93092e72b Remove the .aux and .bbl files when we switch the citation engine or style.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40355 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-03 22:58:38 +00:00
Julien Rioux
dfdcc56cba Remove extra whitespace.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40346 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-03 22:15:11 +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
Richard Heck
74ee5c0e69 Add assertion to check for memory leaks and remove the list when
we are done.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40228 a592a061-630c-0410-9148-cb99ea01b6c8
2011-11-20 18:49:12 +00:00
Richard Heck
7e42cfd690 New attempt to fix Pavel's crash, this modifies r40205 and r40207.
The global list of cloned buffers was a bad idea. We don't have multiple
export threads, but we can have multiple autosave threads. So now we keep
more than one of these lists at the same time, and each cloned buffer has
a pointer to the relevant list. Note that this would make multiple export
possible, if we wanted to do that at some time.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40227 a592a061-630c-0410-9148-cb99ea01b6c8
2011-11-20 18:49:05 +00:00
Richard Heck
14c10e40a8 Fix bug #7872: Mark Buffer dirty after changing branch activation.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40211 a592a061-630c-0410-9148-cb99ea01b6c8
2011-11-18 20:48:54 +00:00
Richard Heck
eecb001e95 Make sure we aren't trying to reuse the global variable, and make
sure we aren't leaking any cloned buffers.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40208 a592a061-630c-0410-9148-cb99ea01b6c8
2011-11-17 18:26:42 +00:00
Richard Heck
a8d12fdd66 Fix crash reported by Pavel. Multiply included children would crash
the destructor since we could, in some cases, end up deleting them
multiple times. So we need to keep a list of the Buffers we need to
delete, kind of like the BufferList.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40205 a592a061-630c-0410-9148-cb99ea01b6c8
2011-11-17 17:58:22 +00:00
Richard Heck
6e15590764 Revert previous patch to get a decent log message.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40204 a592a061-630c-0410-9148-cb99ea01b6c8
2011-11-17 17:58:18 +00:00
Richard Heck
75dc38ca74 Merge branch 'PavelCrash2'
Conflicts:
	src/Buffer.cpp

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40203 a592a061-630c-0410-9148-cb99ea01b6c8
2011-11-17 17:54:20 +00:00
Richard Heck
de3148c7c3 Simplify code slightly.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40202 a592a061-630c-0410-9148-cb99ea01b6c8
2011-11-17 17:29:38 +00:00
Richard Heck
94f0968e92 Minor cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40201 a592a061-630c-0410-9148-cb99ea01b6c8
2011-11-17 17:24:11 +00:00
Richard Heck
d1802a5234 Fix bug reported on user list: <title> not escaped.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40131 a592a061-630c-0410-9148-cb99ea01b6c8
2011-11-02 18:42:10 +00:00
Vincent van Ravesteijn
5cdcc4f7ef Correctly message that the export is cancelled
Uptil now, it was said that the export was succesful.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40099 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-30 19:52:27 +00:00
Vincent van Ravesteijn
098184ba6a Buffer: Make setExportStatus a private member
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40088 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-30 11:43:45 +00:00
Vincent van Ravesteijn
f6246e974f Let all doExport calls have the same behaviour
- Let all doExport calls honor maintain_unincluded_children
- Also don't let the behaviour depend on supplying the result_file parameter

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40085 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-30 08:53:20 +00:00
Richard Heck
9eaa64b2cb Initial work for view source improvements.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40073 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-29 21:00:23 +00:00
Richard Heck
f25e7c340b Improve argument handling for the source generation routines.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40069 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-29 20:14:48 +00:00
Richard Heck
b66e3c6e0f Fix bug #7777. We need a loader when exporting no matter what.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40067 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-29 20:14:36 +00:00