Commit Graph

71 Commits

Author SHA1 Message Date
Richard Heck
fdbe775b9f This is the result of an audit of all static variables, looking
for possible thread conflicts, of the sort Georg resolved at
6a30211f. I have made static variables const where possible,
and marked cases that looked potentially problematic with the
comment:
	// FIXME THREAD
Many of these definitely are vulnerable to concurrent access, such
as the static variables declared at the start of output_latex.cpp.
Suppose, e.g., we were outputting latex and also displaying the
source of a different document.

I'd appreciate it if others could grep for "FIXME THREAD" and see
if some of these are harmless, or what.
2014-04-21 11:51:57 -04:00
Scott Kostyshak
51c380440b Constify some catches and others 2012-09-17 04:05:34 -04:00
Julien Rioux
1e947e3a18 Move the citation engine machinery to layouts.
Add a new layout syntax CiteEngine to define the citation commands
available for a given citation engine.

Also extend the CiteFormat syntax to allow more customization. This
mechanism, previously used to produce bibliography entries in the
citation GUI based on the BibTeX entrytype, is now also used to
produce the textual labels for citation insets in the buffer view.

Thus citation styles are almost completely customizable by modules.
Modules for the basic, jurabib and natbib engines are implemented.

Layout format incremented to 37.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40820 a592a061-630c-0410-9148-cb99ea01b6c8
2012-03-01 00:41:30 +00:00
Julien Rioux
e3f65fd088 Buffer param \cite_engine_type (authoryear|numerical).
To avoid duplicity, remove natbib_authoryear and natbib_numerical
and replace them by natbib, and keep track of the engine `type'
in the new \cite_engine_type document setting. This will make it
easier to add more citation engines.

LyX format incremented to 424.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40592 a592a061-630c-0410-9148-cb99ea01b6c8
2012-01-09 13:16:38 +00:00
Julien Rioux
0c4e88b8a0 Minor improvements to the citation GUI: some dimensions and tab ordering.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40350 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-03 22:24:51 +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
Tommaso Cucinotta
e410730dd9 We use the main document's buffer() instead of the current buffer(), so as to catch the citations
defined there, also while using the dialog from the Adv F&R WAs.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38866 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-27 21:54:23 +00:00
Tommaso Cucinotta
492d837e62 Use the main document's buffer(), when scanning for citations from within the citation dialog.
This allows to pick and search for citations present in the main document.

This was started to be discussed in a relatively unrelated bug #7581, then the patch
was proposed here: http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg169277.html


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38847 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-26 17:33:36 +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
Richard Heck
f3ff65f4df Fix bug #7066.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36454 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-24 14:45:27 +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
Peter Kümmel
615d42d357 TR1: use std::tr1 regex with msvc10
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34725 a592a061-630c-0410-9148-cb99ea01b6c8
2010-06-29 17:09:40 +00:00
Richard Heck
f1912e1c33 Read the citation formats from a file, rather than hardcoding them. This
allows for layout- or module-level customization of the display in the
citation dialog and of the XHTML bibliography output.

There is more of this to come, by the way. The next step is to allow
macros. That will make it easier to deal with translation issues, which
ought to be the final step.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33920 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-29 18:37:25 +00:00
Richard Heck
5696be2a66 Allow the use of rich text in citation formats. And use them in the
citaton dialog.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33880 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-27 13:54:14 +00:00
Richard Heck
869f6d33c6 Revert r33852 and try something else. The problem here, which can be
seen in branch, too, is that if you change the style combo and then do
anything else, such as click on an entry, the combo reverts.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33858 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-24 15:49:06 +00:00
Richard Heck
625144c193 Block signals to the combo box when we update it. This fixes a problem
with flashing.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33854 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-24 14:50:20 +00:00
Richard Heck
a02114dcea Only restore the last applied style on initialization.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33852 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-24 14:34:05 +00:00
Richard Heck
559da350f0 Fix bug #6486. Patch inspired by work by John McCabe-Dansted.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33851 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-24 13:51:47 +00:00
Richard Heck
adf858ebcc Refactor a bit. This will be needed a bit later.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33849 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-24 12:04:24 +00:00
Vincent van Ravesteijn
f792df16b3 GuiCitation.cpp:
CitationUi.ui:
   - fix the casing
   - replace some informal expressions by some proper sentences (I don't like things like "Delete key works, too"

BiblioUi.ui:
   - "man bibtex" has no value in the non-linux world
   - stick to the BibTeX convention compared to bibtex

FindAndReplaceUi.ui:
   - fix the casing
   - remove the "current file" annotations
   - some other fixes


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33208 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-24 19:16:44 +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
Richard Heck
833e7085dd A little cleanup of some of the BibTeX info access.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32915 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-09 16:57:08 +00:00
Uwe Stöhr
b2f0d517e2 GuiCitation.cpp: fix #5987
OK also for branch?

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30061 a592a061-630c-0410-9148-cb99ea01b6c8
2009-06-12 00:17:13 +00:00
Richard Heck
69e95a3ed9 The comment preceding getValueForField() reflected an earlier implmentation.
There is now no reason not to use operator[] here, which is more natural.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27635 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-19 04:16:12 +00:00
André Pönitz
1fc477efac thrid attempt at changing the naming pattern of the intermediated 'mocced' files
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27420 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-14 14:28:50 +00:00
Jürgen Spitzmüller
9d2f8a4c34 * GuiCitation.cpp:
- set initial focus (bug 5448).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27245 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-04 07:27:02 +00:00
Richard Heck
419642ad9e Fix citation bug: In certain circumstances, attempts to insert a new citation
would instead change an old one. The problem was that we were hiding the dialog
with hide(), which does not trigger closeEvent(). So we have to implement
hideEvent().

http://marc.info/?l=lyx-devel&m=121278861019829&w=2



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26143 a592a061-630c-0410-9148-cb99ea01b6c8
2008-08-13 14:32:30 +00:00
Richard Heck
83f0903b4a Optimize GuiCitation a bit by not checking the cache so often.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25716 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-19 17:23:13 +00:00
Richard Heck
55238f4dfd Don't need to do this check, as getInfo() will return an empty string in this case, anyway.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25715 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-19 16:36:14 +00:00
Richard Heck
7f6721a4e9 Clean up a bit.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25170 a592a061-630c-0410-9148-cb99ea01b6c8
2008-06-06 16:02:52 +00:00
Richard Heck
08d8a8034f Fix citation dialog bug.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25169 a592a061-630c-0410-9148-cb99ea01b6c8
2008-06-06 15:53:02 +00:00
Abdelrazak Younes
2cf301033e Add session to citation dialog.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24768 a592a061-630c-0410-9148-cb99ea01b6c8
2008-05-14 14:37:33 +00:00
Abdelrazak Younes
44c3b0e07f Some more house cleaning.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24641 a592a061-630c-0410-9148-cb99ea01b6c8
2008-05-06 14:33:38 +00:00
Abdelrazak Younes
39276a1254 A bit of house cleaning.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24638 a592a061-630c-0410-9148-cb99ea01b6c8
2008-05-06 13:50:37 +00:00
Edwin Leuven
6226f89571 fix leak
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24553 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-29 13:57:07 +00:00
Jürgen Spitzmüller
37aefe13ff improvements to the Citation UI.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24507 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-26 08:07:46 +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
Richard Heck
45eee3cbbb Add "Search as You Type" option to citation dialog.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24504 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-25 19:38:31 +00:00
Richard Heck
022ea0feb6 Fix part of bug 4775. We need to search here only when the user requests it, and not try to do "search as you go". This is too slow, even on fast machines, if you have more than a handful of entries.
I've also added some tooltips to direct people to the keyboard shortcuts.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24495 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-24 18:30:31 +00:00
André Pönitz
b35b731fbf move citation enums into header of their own
remove biblio:: namespace


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24385 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-20 15:00:11 +00:00
André Pönitz
5158ef3ee9 merge GuiCommand into its users.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24376 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-20 09:24:14 +00:00
André Pönitz
f9b81e51e9 remove remaining MailInsets.
please check your favourite insets, I am sure I broke _something_...



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24006 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-27 22:26:24 +00:00
André Pönitz
f2c9b56fb4 cosmetics/#include cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23747 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-15 00:22:54 +00:00
Abdelrazak Younes
2bf1c09376 header cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23049 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-18 07:14:42 +00:00
Abdelrazak Younes
9f3c7cf1ea Factorize closeEvent() for GuiDialog based dialogs.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23045 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-17 20:16:14 +00:00
Richard Heck
14d7b57487 Cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22996 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-14 07:10:12 +00:00
Richard Heck
485478e47c Do not inherit from std::map.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22993 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-14 05:00:54 +00:00
Abdelrazak Younes
6bb94129d8 Factorize out the way window titles are handled.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22784 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-05 12:43:19 +00:00
Richard Heck
e285d2a7d8 Support for nocite, provided by Bernhard Reiter.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22217 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-20 15:46:14 +00:00
Abdelrazak Younes
7c392af6ea getting rid of superfluous lyx::support:: statements.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22106 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-12 19:57:42 +00:00