Commit Graph

247 Commits

Author SHA1 Message Date
Vincent van Ravesteijn
a7eb3c4c6e Simplify the public interface of Buffer::doExport
All calls to doExport from outside of Buffer have the same algorithm to
determine whether the included children parameter should be true. Moreover,
this decision is only based on information from the Buffer itself.

Now, Buffer only has 1 public function doExport and preview.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40041 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-27 15:50:50 +00:00
Vincent van Ravesteijn
cf06a12e00 Remove the unused default parameter of Buffer::doExport().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40040 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-27 15:50:46 +00:00
Enrico Forestieri
d703d90574 Fix bug #7835 (Relative paths are not supported by the TEXINPUTS prefix)
This restores \input@path handling, which turns out to be necessary, as
the TEXINPUTS mechanism is not used with relative paths. It turns out
that both methods must be used, because \input@path does not work in all
cases (most notably with tikz).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39918 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-22 15:10:43 +00:00
Tommaso Cucinotta
eff76bd3ab Added -E option to specify export format and destination file-name (and export folder).
Addressing #4501.
See also http://comments.gmane.org/gmane.editors.lyx.devel/138329


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39678 a592a061-630c-0410-9148-cb99ea01b6c8
2011-09-15 01:07:49 +00:00
Enrico Forestieri
7c17e970b1 Fix bug #6170 (Latex Compiler error when lyx file is located in a path which contains a "#")
This removes \input@path handling.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39563 a592a061-630c-0410-9148-cb99ea01b6c8
2011-08-29 17:02:27 +00:00
Vincent van Ravesteijn
3bd87e5a64 Make the Buffer class non-copyable, otherwise LyX crashes when 'Impl * const d' is deleted while deleting a copy of the Buffer.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39515 a592a061-630c-0410-9148-cb99ea01b6c8
2011-08-24 19:10:40 +00:00
Abdelrazak Younes
c57dc64116 gcc compile fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39277 a592a061-630c-0410-9148-cb99ea01b6c8
2011-07-12 13:41:42 +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
c53971b07e Remove unused optional variable.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39157 a592a061-630c-0410-9148-cb99ea01b6c8
2011-06-20 21:08:56 +00:00
Richard Heck
5c264ebdf3 Modify r38980 in response to Vincent's comments.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39021 a592a061-630c-0410-9148-cb99ea01b6c8
2011-06-12 18:03:32 +00:00
Richard Heck
6efabf807e Fix problem with static error list.
It's amazing we haven't seen problems with this before. The basic problem is that buf.errorList("whatever") would always return the same global, static error list, if it did not already exist. So, to a significant extent, there was only one global error list!

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38980 a592a061-630c-0410-9148-cb99ea01b6c8
2011-06-08 00:12:52 +00:00
Richard Heck
60b1a06ac8 Revert previous commit, which committed too much.
This reverts commit 4369e725b17fede013eb26bfd797e917eaf6f4ea.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38979 a592a061-630c-0410-9148-cb99ea01b6c8
2011-06-07 23:52:22 +00:00
Richard Heck
cd2e50a275 Fix problem with static error list.
It's amazing we haven't seen problems with this before. The basic problem is that buf.errorList("whatever") would always return the same global, static error list, if it did not already exist. So, to a significant extent, there was only one global error list!

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38978 a592a061-630c-0410-9148-cb99ea01b6c8
2011-06-07 23:45:33 +00:00
Richard Heck
2d6173d810 Fix problem first reported by Diego: If you try to view a child document,
the macros declared in the parent do not work. This is because we were
cloning only the child, which then didn't have a parent.

The solution is to clone the whole structure, starting with the master
document. As a side effect, we only clone each child once.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38837 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-26 13:20:11 +00:00
Richard Heck
5db4b7eb16 Move a bunch of code from Buffer to BufferParams. The point of this
is contained in the next commit.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38742 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-13 19:39:56 +00:00
Richard Heck
33ee5c9ae8 Fix bug #7499. The problem here is that there was no way for the
inset to know that the BibTeX data had changed. So we introduce a
Buffer-wide variable that we can query for that information.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38619 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-07 23:02:53 +00:00
Richard Heck
5855043599 Initial work to fix bug involving embedded macros and
XHTML output.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38613 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-07 11:57:08 +00:00
Enrico Forestieri
c6648aaeb9 Complete integration of texrow with otexstream and allow automatic line
counting also when outputting the latex preamble.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37641 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-13 21:41:44 +00:00
Jürgen Spitzmüller
0a34b1e047 fix some typos. Patch by Yuri Chornoivan.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37039 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-29 16:57:04 +00:00
Enrico Forestieri
89c1d25250 Avoid const casts by making mutable the usermacros member.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36984 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-21 14:52:18 +00:00
Enrico Forestieri
8b88c3edde Refine fix for bug #7183.
Using updateMacros() entails a performance hit when loading a document
with really a lot of macros. So, revert to the original strategy of
tracking macros at creation time. In order to also account for macros
defined in a child document, the child is now loaded by the include inset
at construction time instead of after the master has finished loading.
This strategy mimics what updateMacros() was accomplishing without
incurring in its drawbacks, such that loading time is practically
unchanged even with a thousand macros.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36968 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-20 18:15:39 +00:00
Enrico Forestieri
280f7a7ced Fix bug #7183 (User math macros defined in child documents are shadowed on loading)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36930 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-18 02:27:25 +00:00
Stephan Witt
c7e6a677c4 fix compiler warnings in pedantic mode: remove trailing comma after last enum member
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36923 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-17 19:56:51 +00:00
Jürgen Spitzmüller
1e98a4f240 Add the option to select the output format in Source View.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36806 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-10 10:34:24 +00:00
Jürgen Spitzmüller
f255f93b9e * Follow Vincent's advice to keep constness. Thanks Vincent.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36759 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-07 09:00:50 +00:00
Jürgen Spitzmüller
2653011613 * Use default output flavor for View Source.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36758 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-07 08:36:42 +00:00
Richard Heck
3fffe51506 Revert r36696: We can't collect BibTeX information during the
updateBuffer() traversal. The reason is simple: InsetCitation needs
access to the BibTeX info to calculate its label. But we won't have it
until we get to the bibliography.
I don't think there is any way around that.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36710 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-04 03:15:53 +00:00
Richard Heck
840f2baf91 Simplify some of the bibliography update code. There is really no reason
to be passing the BiblioInfo structure around this way. (That's an old
holdover.) That lets us get rid of the non-const masterBibInfo() again.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36697 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-03 20:08:04 +00:00
Richard Heck
66be58b074 Proper fix now for bug #6846. The idea, due to JMarc, is to collect
bibliography information in updateBuffer(), rather than doing a wholly
separate traversal. We still do a separate traversal in two cases, as a
full updateBuffer() call just isn't needed there.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36696 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-03 19:29:46 +00:00
Richard Heck
ab47822680 Towards a proper fix for bug #6846, this just disentangles a couple
things we will ultimately want to do separately.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36694 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-03 19:00:55 +00:00
Vincent van Ravesteijn
f27853ad41 Cosmetics, typos and comments.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36492 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-25 16:53:56 +00:00
Vincent van Ravesteijn
cc84d35ed4 Buffer::saveCheckSum() can be private.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36377 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-18 18:37:17 +00:00
Vincent van Ravesteijn
1f38406536 Buffer::setFileName() can now be private. The only way to change the filename of a buffer is to save it as a different file using Buffer::saveAs().
Change its parameter type to support::FileName for convenience.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36375 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-18 17:50:33 +00:00
Vincent van Ravesteijn
c1a728d8f1 Buffer::moveAutosaveFile can be private.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36330 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-17 03:47:14 +00:00
Vincent van Ravesteijn
ce0304e6f4 Buffer::getAutosaveFileName() can now be private as it should.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36327 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-17 02:25:12 +00:00
Vincent van Ravesteijn
208acbc728 Generalize Buffer::autoSave() for both the threaded as the forked process call. Also move out the resetAutosaveTimers as this is the task of the frontend as the core shouldn't know about any timer.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36325 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-17 02:18:12 +00:00
Vincent van Ravesteijn
8e7d7e4295 Move the buffer related part from GuiView::renameBuffer to Buffer::saveAs.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36202 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-07 21:26:02 +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
3bb31a04dd Remove saveCheckSum from Buffer::reload again. Now, the saveCheckSum call is already in Buffer::readFile, so it is not needed here anymore.
Also move the saveCheckSum declaration to the section of functions involving reading/writing. And note that it should be made private.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35925 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-29 23:51:13 +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
c9a91c5474 Relay the ReadStatus all the way up to the GUI also for Buffer::reload().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35908 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-29 16:26:32 +00:00
Richard Heck
e313d3a12b Move saveCheckSum() call to Buffer::readFile(). Also, remove the
argument from that function. We are always saving the checksum for the
Buffer's file. The argument is a left-over from a time when we did the
wrong thing and saved it for e.g. the emergency file.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35890 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-28 22:12:29 +00:00
Vincent van Ravesteijn
8d10d82392 Buffer: Rename function names:
- rename readFromVC to extractFromVC because this function actually doesn't read anything as compared to readEmergency, readAutosave and so on.

- rename readEmergency and readAutosave to loadEmergency and loadAutosave just like loadLyXFile and loadThisLyXFile. Only in loadThisLyXFile we switch to the actually reading of a file.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35854 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-26 13:27:06 +00:00
Vincent van Ravesteijn
f311377671 Buffer: Make Buffer::readFile() private.
It's strange to have a public interface which has a function loadLyXFile and a function readFile. A user of this class will be confused about the difference.

Therefore, loadThisLyXFile will be next to loadLyXFile to stress that loadThisLyXFile will not load another file ;). I don't know whether all of you like that this function just calls readFile, but it feels good this way. All public paths for loading a file will now go through loadThisLyXFile (i.e. the paths that come from loadLyXFile), while readFile is a pure private function. If this doesn't make sense, just shout.

I think this improves the readability of the class.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35852 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-26 13:17:10 +00:00
Vincent van Ravesteijn
9063402fca Buffer.h: Cleanup, Sorting, and Improvements:
- group the read and emergency/autosave functions,
- add comments to the functions,
- adjust visibility of functions,
- add FIXMEs to some functions which are still unneccesarily public.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35851 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-26 12:54:31 +00:00
Vincent van Ravesteijn
80a09f4ea6 Merge readFile and readFile; and readFile and readString.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35832 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-25 14:14:44 +00:00
Vincent van Ravesteijn
5a30a98346 Buffer.cpp:
Extract convertLyXFormat function that runs LyX2LyX.

(and some compile fixes)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35831 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-25 13:55:39 +00:00
Vincent van Ravesteijn
c1a1d16967 Centralize the generation of the emergency and autosave filenames.
Forgot this one in the previous commit.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35826 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-25 12:46:16 +00:00
Vincent van Ravesteijn
df1c5ef611 Refactor Buffer.cpp: loadLyXFile():
- make a new function readFromVC(),
if the file does not exist, try to extract it from the version control (RCS),

- make a new function readEmergency(),
try to read the emergency file that is associated to the file we are trying to read,

- make a new function readAutosave(),
try to read the autosave file that is associated to the file we are trying to read,

- merge loadLyXFile() and readFileHelper(),
this new function now determines which file to read.

- add more ReadStatus elements to describe failures.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35819 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-25 11:57:56 +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
Richard Heck
5a46224f73 Remove the magic boolean in getChildren() from the public interface.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35538 a592a061-630c-0410-9148-cb99ea01b6c8
2010-09-29 13:05:57 +00:00
Richard Heck
da0f528287 Comment.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35536 a592a061-630c-0410-9148-cb99ea01b6c8
2010-09-29 12:50:45 +00:00
Richard Heck
1def3de92e This doesn't need to be a vector. Should be no change of behavior.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35532 a592a061-630c-0410-9148-cb99ea01b6c8
2010-09-29 12:19:23 +00:00
Richard Heck
7ff1a60d12 Introduce Buffer::hasChildren() and use it.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35531 a592a061-630c-0410-9148-cb99ea01b6c8
2010-09-29 12:17:24 +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
856b01b6da Comments on the caching mechanism.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35113 a592a061-630c-0410-9148-cb99ea01b6c8
2010-08-10 14:26:34 +00:00
Richard Heck
2203d7aa0a Fix some bugs in the bibinfo caching mechanism. Comments to follow.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35112 a592a061-630c-0410-9148-cb99ea01b6c8
2010-08-10 14:12:48 +00:00
Richard Heck
2a6109e972 Minor cleanup. We don't need the deleted call, as that is done at the
beginning of updateBuffer() anyway.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35104 a592a061-630c-0410-9148-cb99ea01b6c8
2010-08-09 17:14:45 +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
Richard Heck
06445c964e Next step in fixing problems noted by Vincent: Remove magic boolean from
updateMacros().


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35000 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-21 21:58:54 +00:00
Richard Heck
2f78698fbd First step towards fixing some issues noted by Vincent. We record in the
Buffer whether we are exporting or not, rather than rely upon isClone(),
which could be adapted to other purposes. And, of course, someone might
choose locally to disable cloning....


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34999 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-21 21:51:33 +00:00
Richard Heck
b8d43b05bc Support for exporting math as images with XHTML. The next step is to
allow this as a fallback. E.g., if we're unable to export as MathML,
then we try to export as an image.

There are several ways, I am sure, in which this implementation is not
ideal.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34993 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-21 13:19:52 +00:00
Pavel Sanda
88635c7e77 Buffer::getAutosaveFilename -> Buffer::getAutosaveFileName
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34243 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-21 01:19:33 +00:00
Pavel Sanda
594849bb4e Next header
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33981 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-31 20:06:16 +00:00
Richard Heck
42a2a0f289 Cheap fix for #6554. When we save a Buffer to a new location, we check
the included insets and make sure that the files they reference are
still where they are supposed to be.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33686 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-09 03:25:47 +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
Jürgen Spitzmüller
a61eeb1fb2 Allow to switch buffer languages via the menu.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33366 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-08 17:15:00 +00:00
Jürgen Spitzmüller
7bbd67eb26 * Implement updateLabels in mathed and add the MathRef insets to the references cache.
This fixes bug #1560.

The diverse setBuffer / updateLabels calls need auditing. See FIXMEs.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33249 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-28 17:37:22 +00:00
Abdelrazak Younes
9eabfb51ac Buffer: Pimpl private methods and fix a few constness issue.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33227 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-25 18:39:08 +00:00
Abdelrazak Younes
a4e56ba613 Buffer: Pimpl gui_ and remove unused code. support/SignalSlot* should
probably go also as we agreed that if we need signal/slot in src/ we'll
directly use Qt's.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33224 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-25 14:32:39 +00:00
Abdelrazak Younes
d9f22c0233 Get rid of mostly unused methods.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33223 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-25 14:13:04 +00:00
Abdelrazak Younes
11474f6b89 Get rid of Buffer::setReadOnly() pseudo signal.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33222 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-25 13:31:07 +00:00
Richard Heck
caa4e94bf0 Get rid of some magic booleans in updateLabels() and related routines.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33110 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-20 19:42:12 +00:00
Richard Heck
ce87e6767c Check the bibliography cache only when we really need to do so. This (a)
prevents weirdness that might happen if the .bib file were to change
during updateLabels(), (b) prevents even further weirdness that might
happen if it changed during the output routines, and (c) ought to avoid
slowness caused by the repeated calls to QFileInfo::refresh() needed to
check the cache status.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32972 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-11 16:29:26 +00:00
Jürgen Spitzmüller
7a7ab8f14b Add an option to assure that all aux files are maintained when using the includeonly feature, so that the
page numbering and the references of the master file are maintained in the included children (bug 1005).

I made this optional since some people use \includeonly to save compilation time, but a proper aux file update
needs a full compilation of the complete master prior to the compilation of the \includeonly master.

Hence, a new buffer param is introduced (file format change). 

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32936 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-10 13:25:41 +00:00
Abdelrazak Younes
cda980db51 Fix multipart document background compilation. I am not fully satisfied with this solution (see FIXME in Buffer::clone()). There might be some memory leaks...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32910 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-09 14:47:47 +00:00
Richard Heck
012be55afd Move the collection of citations and sorting routines into BiblioInfo.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32887 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-08 16:40:41 +00:00
Vincent van Ravesteijn
d95aaa0e5b Move reloadBuffer from GuiView to Buffer.
This fixes bug #6314: reloading master document makes emergencies of modified children.

Now also the version control handling could be moved to Buffer as well, and the hack in ensureBufferClean is removed.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32875 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-08 02:15:56 +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
Tommaso Cucinotta
5da4ccb931 Implemented the "Current Buffer" & "Current (Master) Document" scopes in the Advanced Find and Replace feature.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32678 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-30 18:40:18 +00:00
Abdelrazak Younes
bea0925f8c Converter: add a safe guard to Alerts because those cannot be called from another thread. The whole Alert system must be rethought I am afraid.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32585 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-18 22:59:59 +00:00
Abdelrazak Younes
4ed0169064 Detach Buffer preview and update preview in a new thread. Only for Qt4.4 users. This new feature can be disabled by setting EXPORT_in_THREAD to 0 in GuiView.cpp.
Two things are missing (but are fixable):
- the lack of feedback of the background latex compilation
- the error list is not shown in case of compilation error.

* Buffer:
- create a "cloned buffer" type.
- Transfer LFUN_MASTER_BUFFER_UPDATE, LFUN_MASTER_BUFFER_VIEW, LFUN_BUFFER_UPDATE and LFUN_BUFFER_VIEW to GuiView. This is good itself as these LFUN are GUI oriented.

* GuiView: detach the above LFUNs to a new thread as was already done for autosave. 


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32584 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-18 22:51:06 +00:00
Abdelrazak Younes
622e3b1e4d For Qt4.4 and up: Detach Buffer autosave into a new thread.
* Buffer: new clone() method. When this new autosave method is used the old autoSave() is not of course.

* GuiView: clone the current document buffer and save it in a new thread.




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32512 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-13 21:00:46 +00:00
Richard Heck
69666056ca Cosmetic repairs to my updateLabels() changes, thanks to Andre's
comments. Added comments per Pavel's suggestion.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32453 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-10 13:25:31 +00:00
Richard Heck
025138f30c Minor XHTML fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32378 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-06 22:53:47 +00:00
Richard Heck
996505c2ae This patch introduces an optional argument to Buffer::updateLabels(), so
as to allow us to call the routine when we are preparing for output and
so to do certain things we might not want to do every time. 

This is an abuse of updateLabels(), in a way, but updateLabels() long
ago became the general recurse-through-the-Buffer routine, and to
implement the sort of thing I want to do here in validate(), say, much
of the code in updateLabels()---in particular, the counter-update
code---would have to be duplicated. So I believe this is the best, and
easiest, way to go.

Actual use of the new argument will follow.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32318 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-04 03:03:38 +00:00
Pavel Sanda
7cdf1a0be6 Puzzling doxygen output.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32175 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-24 11:12:23 +00:00
Richard Heck
70f035b189 This can be a private method.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32000 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-15 01:42:49 +00:00
Enrico Forestieri
f83a6cc3af Don't use updateMacros() in the math parser, in order to avoid
performance problems when loading documents with lots of macros.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31907 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-08 18:47:33 +00:00
Vincent van Ravesteijn
d156d11738 Fix part of bug #6251: When closing a buffer, only close the direct children. All grandchildren will be closed recursively by the children _and_ before it will be close by the grandparent.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31797 a592a061-630c-0410-9148-cb99ea01b6c8
2009-10-29 23:28:08 +00:00
Vincent van Ravesteijn
bdf69de113 Don't set the read-only flags of the documents. The GuiCompare is modal anyway, so the user shouldn't be able to change something.
This reverts part of r31736.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31737 a592a061-630c-0410-9148-cb99ea01b6c8
2009-10-25 13:56:44 +00:00
Vincent van Ravesteijn
7227566e86 Call the Compare thread from the GuiCompare dialog.
Furthermore:
- increase safety, 
- improve error handling,
- minor cleanups,
- set documents to read-only while running the thread.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31736 a592a061-630c-0410-9148-cb99ea01b6c8
2009-10-25 13:41:46 +00:00
Tommaso Cucinotta
f3b3f62d5b Added isInternal() method, mapped temporarily on check about ".internal" filename extension (minimum impact on current code).
Replaced various replica of such check with the invocation of the new method.
TocBackend now does not call addToToc() for internal buffers.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31340 a592a061-630c-0410-9148-cb99ea01b6c8
2009-09-08 01:29:07 +00:00
Richard Heck
c5487a3682 Move emergencyWrite() from BufferList to Buffer.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31056 a592a061-630c-0410-9148-cb99ea01b6c8
2009-08-15 16:34:54 +00:00
Abdelrazak Younes
4916bd41d3 Get rid of Buffer::insertStringAsLines().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30948 a592a061-630c-0410-9148-cb99ea01b6c8
2009-08-09 16:37:30 +00:00
Jürgen Spitzmüller
e6f922009f * Add possibility to append active branch names to the output file name (#3105).
File format change.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30546 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-13 14:30:08 +00:00
Jürgen Spitzmüller
808dfaabea * Buffer.{cpp,h}:
- rewrite LFUN_BRANCHES_RENAME with an InsetIterator approach.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30464 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-11 08:18:26 +00:00
Jürgen Spitzmüller
5fdd2daa9c * Add ability to rename branches (bug 4128).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30442 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-10 06:49:51 +00:00
Jürgen Spitzmüller
17986e7509 Ease the pain with unknown branches:
* on paste, ask if unknown branches shall be added to the branch list
	  (entails new LFUN_BRANCH_ADD)
	* add a list of undefined branches to the buffer and the GUI

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30419 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-09 09:48:34 +00:00