Commit Graph

259 Commits

Author SHA1 Message Date
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
Abdelrazak Younes
694399b16c Simplify Buffer::spellCheck() by using Paragraph::spellCheck().
Paragrah::isMisspelled() is split in two.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30222 a592a061-630c-0410-9148-cb99ea01b6c8
2009-06-22 16:38:11 +00:00
Jürgen Spitzmüller
5a54d11157 * Pop up error dialog if issuing master-buffer-[view|update] and errors occured.
Navigating in such dialogs does not work yet, but at least the user is informed
  at all that LaTeX wasn't succesful.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30209 a592a061-630c-0410-9148-cb99ea01b6c8
2009-06-21 12:26:41 +00:00
Jürgen Spitzmüller
9388e76dc0 * Buffer.cpp:
- make LaTeX logfile dialog work for child documents and master-buffer-[view|update]:
	  if there's only a master file log or if the master file log is newer, it is displayed.
* Buffer.h: typo.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30206 a592a061-630c-0410-9148-cb99ea01b6c8
2009-06-21 09:44:10 +00:00
Richard Heck
92a69bb790 Basic output routines for HTML.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29950 a592a061-630c-0410-9148-cb99ea01b6c8
2009-06-05 17:44:35 +00:00
Vincent van Ravesteijn
aa4c7e7ef5 Fix bug #5879 (try 2): Move the autosave file of a buffer when the filename changes.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29507 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-03 10:21:21 +00:00
Jürgen Spitzmüller
25a14730ed * First step towards default view format.
The icons could be replaced by something nicer.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29134 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-07 05:01:08 +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
Abdelrazak Younes
a4169da139 More SpellChecker cleanups.
* Buffer::spellCheck() new method constructed from mutiple bits of GuiSpellchecker.cpp.

* GuiSpellchecker: lots of simplifications.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29090 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-04 16:40:47 +00:00
Richard Heck
876dc0d54e Fix up a few little things after r29065. If we're calculating the autosave
filename in a different way, we need to make sure we always do it the same
way. Makes more sense to do this in Buffer anyway.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29073 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-04 03:13:46 +00:00
Richard Heck
292b27e74b Routine no longer exists.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29071 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-04 03:10:38 +00:00
Abdelrazak Younes
1ec0b390f5 Transfer some general code from GuiSpellchecker to Buffer and DocIterator.
* Buffer::nextWord(): new method to search for next word.
* DocIterator.cpp: new function isLetter() moved from GuiSpellchecker.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28963 a592a061-630c-0410-9148-cb99ea01b6c8
2009-03-28 19:02:49 +00:00
Vincent van Ravesteijn
74741ca5b9 Some cleanup in InsetInclude:
* use the UpdateScope, introduced recently, to prevent the 'strange' calls to setParent which also causes the update mechanism to run,
* remove the buffer parameter of loadIfNeeded and all function,
* remove doubled code from getChildBuffer.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28919 a592a061-630c-0410-9148-cb99ea01b6c8
2009-03-26 00:48:32 +00:00
Richard Heck
22ba8256b2 So we do, sometimes, need the setBuffer calls that were removed in r28720.
This patch encapsulates the needed call in Buffer::setBuffersForInsets(),
and calls it from Undo::Private::textUndoOrRedo(). As noted in the FIXME,
this is still a bit of a "hammer" and ought to be replaced with the sort of
more refined approach taken in r28709. But I don't at the moment see how to
do that. The place to do it, though, is in doTextUndoOrRed().
 


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28757 a592a061-630c-0410-9148-cb99ea01b6c8
2009-03-12 20:10:46 +00:00
Richard Heck
3aecc2c4ff Use an enum to make things a little clearer here.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28756 a592a061-630c-0410-9148-cb99ea01b6c8
2009-03-12 20:02:12 +00:00
Jürgen Spitzmüller
d7601a684b fix bug 5833
* Buffer.{cpp, h}:
	- new method getChildren() that returns included (and sub-included) files

* GuiView.cpp (closeEvent):
	- do not just close dirty child documents.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28712 a592a061-630c-0410-9148-cb99ea01b6c8
2009-03-07 16:33:03 +00:00
Pavel Sanda
45134ce20b gcc compil fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28553 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-19 04:05:44 +00:00
Vincent van Ravesteijn
0aca981637 Fix bug 5699 (crash when using outliner in child document while the master is not opened).
The problem was that, if the master is not opened, no respective guiDelegate exists, and the functions that update the toc do not trigger. The fix is to update the child's toc backend and toc items directly in such cases. 


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28551 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-19 00:29:04 +00:00
Jürgen Spitzmüller
93aff2c611 * Buffer.h: cosmetics.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28489 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-14 13:52:10 +00:00
Jean-Marc Lasgouttes
9622577c60 fix faulty documentation
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28344 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-04 09:52:10 +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
André Pönitz
32a53f8d6a move more stuff from buffer_func to Buffer
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27565 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-16 17:49:00 +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
Jean-Marc Lasgouttes
0778007050 rename [io]docfstream to [io]fdocstream
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27530 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-16 12:21:29 +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
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
792ece8130 Fix whitespaces so the diff between branches is not so huge.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26881 a592a061-630c-0410-9148-cb99ea01b6c8
2008-10-13 11:25:37 +00:00
Abdelrazak Younes
7bd33462a0 Avoid a complete Toc reset in case when only a toc item update is needed.
* Buffer: new updateTocItem() signal (with Delegates and GuiView associates).
* TocBackend: take care of the signal emission instead of the Cursor::checkBufferStructure()
* TocModel: new updateTocItem() method.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26636 a592a061-630c-0410-9148-cb99ea01b6c8
2008-09-30 09:50:54 +00:00
Abdelrazak Younes
03e76f0651 constify
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26619 a592a061-630c-0410-9148-cb99ea01b6c8
2008-09-29 10:48:49 +00:00
Abdelrazak Younes
d861ab947f Move child document closing from InsetInclude dtor to Buffer parent dtor. Fix http://bugzilla.lyx.org/show_bug.cgi?id=5047
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25731 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-20 17:52:55 +00:00
Richard Heck
8a64579d9c More cache fixing. Similar fix as for InsetBibtex, and I've renamed the key routine.
Unfortunately, we can't do a one-short fix for InsetCommand, requiring that it take
a Buffer & in the constructor, due to problems in mathed, specifically, here:
void InsetMathHull::label(row_type row, docstring const & label)
{
...
label_[row] = new InsetLabel(p);
if (buffer_)
label_[row]->setBuffer(buffer());
}
If InsetLabel has to have a Buffer, then buffer_ has to be set, which means InsetMathHull needs a Buffer. But then truckloads of these are created in Parser, where we don't really seem to have access to a Buffer.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25137 a592a061-630c-0410-9148-cb99ea01b6c8
2008-06-05 06:55:34 +00:00
Richard Heck
2ea039ba99 Fix some of the BibTeX cache issues. We need to be able to invalidate the cache when
InsetBibtex's get created and destroyed, or modified.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25136 a592a061-630c-0410-9148-cb99ea01b6c8
2008-06-05 06:42:53 +00:00
Richard Heck
2193a50605 Implement a cache for BibTeX data. There was a cache of sorts already in InsetCitation, but that was being used only to cache the labels. So that has been moved to Buffer, and everything else that needs access to BibTeX data should call either Buffer::localBibInfo(), which gives you the BiblioInfo for this Buffer, or Buffer::masterBibInfo(), which gives you the BiblioInfo for the Buffer's master, if it has one, or for it, otherwise. Normally, what you want is masterBibInfo().
Thanks to Andre for help with linking problems.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24505 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-25 20:03:03 +00:00
André Pönitz
8abc77f860 cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24398 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-20 21:27:42 +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
Richard Heck
5cadecf3f6 Remove embedding stuff from InsetBibtex.
There might be some header cleanup that can be done here, or some uses of forward declarations and such. This was pretty quick and dirty, just to get it done.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24357 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-19 15:52:35 +00:00
Stefan Schimanski
98787bbec6 * corrected handling of validation of math macros. The macro instances
will require the needed LaTeXFeatures of their definition and their
  paramenters.
* Require the "xargs" package when there is a macro with optional
  parameters which is prepended to a child document which is rendered alone.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23971 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-26 12:55:36 +00:00
Stefan Schimanski
76dc2c0d30 * make macros global. This is conceptionally much easier for the user,
and moreover simplifies the code a lot.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23616 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-10 12:49:02 +00:00
Abdelrazak Younes
258cca4b3b Delete child buffer at InsetInclude destruction.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23521 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-06 20:58:59 +00:00
Abdelrazak Younes
af6e88250a Load child documents unconditionally at updateLabels() time.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23513 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-06 18:13:04 +00:00
Abdelrazak Younes
8e9dc9bd2a Introduce a labels&references cache at buffer level. This cache uses the already existing updateLabels() mechanism and thus speedups labels&references toc generation. As a bonus, duplicates labels and broken references are detected and tagged with "DUPLICATE:" and "BROKEN:" in the outliner (or the navigator).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23389 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-02 15:27:35 +00:00
Stefan Schimanski
cd5bad62e0 * paragraph support for the global word list. To make it buffer
dependent, we need the buffer pointer. In fact we already have a
  pointer to the text inset. So as soon as inset know their buffer we
  can easily switch to a buffer local word list.
* there might be missing some more places to update the words from a
  buffer, like for example after backspace or more important when the
  cursor leaves a paragraph.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23244 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-26 13:07:59 +00:00
Stefan Schimanski
f8d516c7af Revert "* compile fix"
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23234 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-25 22:02:48 +00:00
Stefan Schimanski
1669c17c0f * compile fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23233 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-25 21:53:16 +00:00
Stefan Schimanski
323e3b0207 * Moved std::sets out of Buffer.h to reduce overall LyX compile time
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23163 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-23 18:11:35 +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
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
André Pönitz
225bf49cf9 some refactoring.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22890 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-09 10:41:49 +00:00
André Pönitz
e69b723bf9 There was a bit too much copying of dociterators gpoing on leading to an
avoidable ~5% overhead when loading the UserGuide. This is an attempt on
rectifying the situation.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22532 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-12 21:38:51 +00:00
Bo Peng
b5153b3d26 Embedding: merge lyx::EmbeddedFiles to lyx::support::EmbeddedFileList
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22448 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-08 18:55:34 +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
Bo Peng
52cd35cd5f Embedding: add embedding support for InsetBibtex. (params["embed"] is added, use EmbeddedFileList instead of FileNameList for bibtex handling, use checkable items in GuiBibtex)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22443 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-08 17:02:09 +00:00
Stefan Schimanski
36dbec4506 * Lazy MathData to avoid unneeded interpretation of macro definitions
* DocIterator as MacroPosition
* Iterative search for macro in scope until a visible one is found.
This include the ability to resolve macro inside nested text insets.
* Speed up macro lookups by factor 2: only getMacro(name) call, no
further hasMacro(name) call before
* Both way child/master support
* Correct macro scope for multi-paragraph environments
* Correct macro scope for multi-depth-paragraphs
* Buffer::updateMacros made const
* Update macros when loaded (of master and child)
* Do not remove too many braces when unfolding a macro. This could
lead to a data loss because the relationship between arguments of
macros can be mixed up if nested macros are unfold at once.
* Reduce dependencies to MetricsInfo in MathMacro   
* Update macros when needed. Normally it's done just before doing
metrics. But in cases without a brace around some constructs (like
\left(bla\right)) there is some help needed.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22241 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-21 20:42:46 +00:00
Abdelrazak Younes
1447a7bf98 Now that exceptions are allowed, handle gracefully the case where a Buffer temp directory could not be created. As a bonus, the user will get an informative message.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22196 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-17 18:37:13 +00:00
Abdelrazak Younes
e017570aa8 Introducing FileNameList, cleanup some headers and put back dirList() into FileName.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21965 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-05 10:32:49 +00:00
Abdelrazak Younes
ac08e89095 Sanitize the way Buffers are saved, renamed and closed.
* LyXFunc: Transfer and simplify LFUN_BUFFER_WRITE, LFUN_BUFFER_WRITE_AS  and LFUN_BUFFER_WRITE_ALL to GuiView.

* BufferList: Transfer quitWriteAll() and close() to GuiView.

* Buffer: Transfer writeAs() and menuWrite() functionalities to GuiView.

* LyXView::closeBuffer(): new pure virtual method.




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21960 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-04 22:21:25 +00:00
Abdelrazak Younes
4291d4b0ff pimpl_ is too verbose to write.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21880 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-30 17:46:49 +00:00
Abdelrazak Younes
f8b7c56580 * Buffer:
- tocBackend(), errorList(), texrow(), etc: now const.
- masterBuffer(): get rid of non const access.
- setParent(): set parent Buffer, replace setParentName()
- parent(), resetChildDocuments(): new.

* InsetInclude.{h,cpp}: new resetParentBuffer() method.





git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21879 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-30 17:41:27 +00:00
Abdelrazak Younes
f1f7718282 Add FIXMEs
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21876 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-30 09:49:35 +00:00
Abdelrazak Younes
377ae30bd8 lyxlib.h:sum -> FileName::checksum()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21874 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-30 09:23:44 +00:00
Abdelrazak Younes
c886bc68c2 * FileName:
- introduce changeExtension(): the goal is to replace progressively the one in filetools.cpp
- get rid of internal_path() checking for Win32 as the path is always normalized with slashes with QFileInfo.

* BufferParams: get rid of filepath member. This was used only once and was fixing a path in BufferParam was wrong anyway.

* Buffer::filePath(): always regenerate instead of caching it in BufferParams.

 

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21847 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-28 15:25:07 +00:00
André Pönitz
09b7e6e60a some std::string -> filename changes
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21404 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-03 17:37:37 +00:00
André Pönitz
a8cd9a4b8f cosmetics. mainly replace #include "dostring.h" by #include "strfwd.h"
in header files when possible. Adjust .cpp files.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21358 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-01 22:17:22 +00:00
Stefan Schimanski
1231489798 * dynamic macros as described in http://1stein.org/download/dynmacro.pdf
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21328 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-01 11:13:07 +00:00
André Pönitz
b99433e73b cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21157 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-23 21:41:17 +00:00
Bo Peng
f8836d8b12 Embedding: remove the embeddingChanged signal
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21105 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-21 19:08:53 +00:00
André Pönitz
f934b86850 cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21097 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-21 10:50:56 +00:00
André Pönitz
ee005614a3 saner borderline between buffer and exporter
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21080 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-20 10:51:13 +00:00
André Pönitz
f762cbf3c6 mainly cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21079 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-20 10:03:45 +00:00
Abdelrazak Younes
58d8b766bf Header cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21061 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-19 14:32:33 +00:00
Abdelrazak Younes
2cb62f5e8b remove unused declaration
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21032 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-18 12:05:11 +00:00
Abdelrazak Younes
55beda376a Refactor Undo/Redo framework into an Undo class owned by a Buffer. This reduces header dependencies from Undo.h which was including lots of stuff previously. This also solves the bug where undo/redo were reset upon buffer switching. Now, each buffer has a truly independant undo/redo architecture.
In the future, when Cursor has been fixed to work correctly with multiple views of the same Buffer, we could transfer the Undo owner from Buffer to Cursor.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21031 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-18 11:51:17 +00:00
Abdelrazak Younes
f357fb955f Use InsetCode
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20938 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-13 09:11:10 +00:00
Abdelrazak Younes
f7b1c86393 Move Inset::Code to InsetCode.h
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20936 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-13 09:04:52 +00:00
Abdelrazak Younes
a9c2a907c0 Remove "DocIterator.h" header dependencies in Buffer.h.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20901 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-11 12:48:24 +00:00
André Pönitz
df2318f823 move some buffere related stuff from callback.cpp tpo Buffer.cpp.
simpler code.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20694 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-03 11:00:18 +00:00
Abdelrazak Younes
a8cefbcce7 remove unimplemented closing() definition.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20682 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-03 07:46:43 +00:00
André Pönitz
b847b8c7df the delegate patch
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20667 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-02 18:27:20 +00:00
Abdelrazak Younes
f0402e69c6 Fix some issues with buffer closing.
* Switch WorkAreaManager to std::list instead of vector.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20664 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-02 14:39:48 +00:00
Abdelrazak Younes
8c95397b21 Buffer::pimpl_: replace scoped_ptr with a simple pointer.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20657 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-02 09:16:54 +00:00
Abdelrazak Younes
4ce0961b5a Replace Buffer' changed() and closing() signals with a WorkAreaManager before Andre erase everything :-)
The resulting source code is not much bigger actually.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20654 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-02 09:00:08 +00:00
Bo Peng
726c8660f0 Fix another prompt for externally-modified bug with writeAs()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20107 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-06 15:54:17 +00:00
Bo Peng
3611b0ff33 Embedding patch 4: interaction between buffer and the embedding dialog. Emit embeddingChanged signal to update the embedding dialog.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20038 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-04 14:34:42 +00:00
Bo Peng
692363bbca Embedding patch two: read/write embedded files'
*  src/insets/InsetGraphics.h
	*  src/insets/InsetExternal.cpp
	*  src/insets/InsetGraphics.cpp
	*  src/insets/InsetInclude.cpp
	*  src/insets/Inset.h
	*  src/insets/InsetInclude.h
	*  src/insets/InsetExternal.h: register embedded files
	*  src/EmbeddedFiles.h|cpp: core of embedded files
	*  src/Buffer.h|cpp: read/write embed file
	*  src/BufferParams.h|cpp: embedded flag
	*  src/Makefile.am
	*  po/POTFILES.in
	*  development/scons/scons_manifest.py: build system updates


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19924 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-30 20:46:42 +00:00
Abdelrazak Younes
1356543c45 The BufferView/WorkArea/LyXView reorg a.k.a Multiple WorkAreas:
* Buffer:
- get rid of cursor_ and anchor_
- ~Buffer(): update the labels of its master buffer before closing
- closing(): pass the Buffer address.

* BufferView():
- BufferView(): needs a valid Buffer (should be const in the future.
- most of the change is about removing all test of buffer_ nullity.
- resize(): deleted.
- setBuffer(): deleted.

* Application:
- newLyXView(): simplification
- updated design description in Application.h

* Gui/GuiImplementation: remove all WorkAreas and BufferView creation/Deletion. Workareas are directly handled by  LyXView/GuiView and BufferView is created/delete by WorkArea.

* LyXView/GuiView: implement the new design

What is not working yet:
- the close tab button: it is implemented but does not show up.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19686 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-21 07:33:46 +00:00
Richard Heck
b3bff4232a Improvements to the citation dialog UI. It is now possible to search particular fields (author, title, etc) and to filter keys by entry types (article, book, etc).
The changes are essentially of three types. 

First, the std::maps previously used here for storing BibTeX data have become full-fledged classes and so what were previously just a bunch of functions have now become methods of these new  classes. This leads to a lot of minor changes in other files, to adapt to the  new signature. The changes in insets/ are mostly of this kind.

Second, there are some slightly more substantial changes in src/insets/InsetBibtex.cpp. We now store lists of the field names and entry types that have been used.

Finally, there are the changes to the citation UI. These are mostly straightforward, though adding the new functionality exposed some inadequacies in the previous code that also had to be fixed.

One other change: BibTeX keys are now docstring. This solves some Unicode issues.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19657 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-20 16:30:02 +00:00
Richard Heck
5bb22d9498 Re-write of the BibTeX representation. The main change is that we now have
a structure representing field->value instead of just a single string with
all the data. The data structures are defined in src/Biblio_typedefs.h, and
the main changes are to the parser code in src/insets/InsetBibtex.cpp.

-src/Biblio_typedefs.h
 Contains typedefs for new representation. Separating them out limits how much 
 gets #include'd by other files, and also resolves a circularity problem with
 Buffer.h.

-src/Biblio.{h,cpp}
 Signature changes and massive simplifications to routines that report
 BibTeX data, since we now have an articulate representation.

-src/insets/InsetBibtex.{h,cpp}
 Re-write the parser code so we store a key->value map of the BibTeX data
 rather than just one long string. This is the main work.

-src/frontends/controllers/ControlCitation.{h,cpp}
-src/insets/InsetBibitem.{h,cpp}
-src/insets/InsetCitation.cpp
 Adaptations and simplifications.

-src/insets/Inset.h
-src/Buffer.{h,cpp}
-src/insets/InsetInclude.{h,cpp}
 Signature changes.

-src/Makefile.am
-development/scons/scons_manifest.py
 Add src/Biblio_typedefs.h


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19598 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-16 01:59:20 +00:00
Bo Peng
95dbcd40f9 Enable File -> Revert when the file is externally modified, rename this menu item to File -> Revert to saved, and check if the .lyx file has been externally modified when a buffer is saved. (Bugs 3766 and 4114)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19380 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-09 20:46:22 +00:00