Commit Graph

178 Commits

Author SHA1 Message Date
Georg Baum
56ece75ad9 Fix bug #8464: stackrel with subscript.
The fix is basically mechanical, the additional code for fraction like insets
with three arguments was stolen from \unitfrac. As any math package,
stackrel.sty needs a buffer parameter to switch it off.
I also added the two stackrel flavours to the toolbar.
2012-12-28 20:08:43 +01:00
Richard Heck
ae7bc12ab6 Disentangle moduleCanBeAdded for ordinary layout modules and the
new (but not yet functioning, it seems) citation modules. This
fixes a bug reported on the list:
  http://marc.info/?l=lyx-users&m=135456590710371&w=2
2012-12-05 11:16:21 -05:00
Lars Gullik Bjønnes
62394258da WS cleanup, remove extraeneous spaces 2012-10-27 01:25:38 +02:00
Juergen Spitzmueller
8f9898994d Basic UI for math (TeX) fonts
This addresses #6543 by adding an option to prevent fonts such as Palatino and Times to automatically adapt the math font (IOW it lets you load the text font only for a bunch of fonts where this is easily possible).

Furthermore it adds an interface to select a specific math font, which is defined in latexfonts. Currently, this is only euler (the only one I know), but if there are other math-only tex fonts, they can be added easily (but note that this changes the file format).

Non-TeX math fonts are not yet supported. Eventually, unicode-math support can use the existing UI, but this is not on my agenda.
2012-09-22 17:44:00 +02:00
Juergen Spitzmueller
89df1de885 No need to pass these 2012-09-22 12:14:24 +02:00
Juergen Spitzmueller
11f7efe2eb Set the appropriate quote style when switching the main language 2012-07-01 11:27:42 +02:00
Richard Heck
7ef8df460a Fix crash reported by Tommaso:
http://marc.info/?l=lyx-devel&m=133876924408431&w=2
The problem here is that the copy_params() routine in FindAndReplace.cpp
created a new DocumentClass, but it never updated its Buffer to reflect
that new DocumentClass. So its Paragraphs still contained points to the
Layouts in the old DocumentClass which, since ead697d4b6, gets garbage
collected once it is no longer needed. So the Layout doesn't exist, and
we crash.
2012-06-04 13:39:24 -04:00
Richard Heck
ead697d4b6 Deal with memory issue reported some time ago in connection with DocumentClass
objects. The problem that led to the leak is that these objects can be held in
memory long after the Buffer that created them is gone, mostly due to their
use in the CutStack. So they were previously held in a storage facility, the
DocumentClassBundle. Unfortunately, they were now being created too often,
especially by cloning. It's not really a leak, because they're accessible, but
we weren't ever destroying them.

This new approach uses a shared_ptr instead.

Thanks to Vincent for pointing out const_pointer_cast.
2012-05-31 12:34:29 -04:00
Richard Heck
02f28635d3 Change the backends() routine so it only gives us backends that
are appropriate for the current document.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40899 a592a061-630c-0410-9148-cb99ea01b6c8
2012-03-09 22:24:17 +00: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
Georg Baum
6be6d9a947 First step towards a more generic package off/auto/on handling:
Internal machinery, no file format change and no UI change yet


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40562 a592a061-630c-0410-9148-cb99ea01b6c8
2012-01-03 20:51:07 +00:00
Julien Rioux
0f30a858f8 Add a document-wide default bibliography style \biblio_style.
This holds the name of a BibTeX style file for now. Any BibTeX inset
can set the style to "default" to use the document-wide style.

LyX format incremented to 420.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40484 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-12 14:40:34 +00:00
Richard Heck
5a7672adec Fix bug #5805 and similar requests. Adds a document setting that
tells LyX not to show BLOCK text as justified, but still keeps
the usual paragraph indentation.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40427 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-07 22:33:25 +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
Uwe Stöhr
30de1c744e - UI support for the LaTeX-package undertilde, fileformat change, fixed the remaining part of bug #6622, Georg already implemented the non-UI support
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39464 a592a061-630c-0410-9148-cb99ea01b6c8
2011-08-10 03:37:33 +00:00
Uwe Stöhr
a95e0ee47b BufferParams.h: revert unintended changes from previous commit
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39458 a592a061-630c-0410-9148-cb99ea01b6c8
2011-08-10 02:26:41 +00:00
Uwe Stöhr
cc5cc067a0 new export flavor "DVILUATEX", fixes bug #7713, patch from Jürgen
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39457 a592a061-630c-0410-9148-cb99ea01b6c8
2011-08-10 02:23:44 +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
Tommaso Cucinotta
c23eef3abf Still addressing #6560: instead of cloning the BufferParams, which might cause
a number of unforeseen issues (like the inheritance of the default master, as
pointed out in http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg168225.html),
now we simply set the language into the search & replace buffers.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38647 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-08 23:51:44 +00:00
Richard Heck
6127141d4b Introduce BufferParam to control whether CSS is output in the header of
the XHTML file or to a separate style file.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37682 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-15 17:44:17 +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
f27d5aa9ae * Allow to set language package on a per-document basis (fixes bug 2909).
File format change. Commit approved by Pavel on trac.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37457 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-03 14:17:31 +00:00
Jürgen Spitzmüller
a37190ee62 * BufferParams.{cpp,h}:
- go back to Maping=tex-text for XeTeX and use Ligatures=TeX only for LuaTeX.
	  This gets users of older distributions (such as TeXLive 2009) back into the XeTeX game.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37402 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-01 14:00:23 +00:00
Richard Heck
4540c4a18e Final batch of BufferParam renaming.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36525 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-26 18:42:53 +00:00
Richard Heck
fc3b06eac8 Rename a bunch of BufferParams to conform to our usual style.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36524 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-26 18:32:29 +00:00
Richard Heck
58978d7bb5 Begin renaming some BufferParams to conform to our usual style.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36523 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-26 18:20:48 +00:00
Jürgen Spitzmüller
2dc2e4770b Implement GUI for LuaTeX. File format change due to the renaming of the \use_xetex buffer param.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36500 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-26 09:42:03 +00:00
Jürgen Spitzmüller
cc5dd37a2a Introduce a new Language option "AsBabelOptions" that specifies whether a language requires to be passed to babel itself (instead of globally to the class).
This allows us to remove some ugly hardcoding of languages in the source.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36292 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-14 10:35:35 +00:00
Vincent van Ravesteijn
f226c9d3fc Fix bug #6058: Change tracking and versioning.
Computes a hash value for the authors when using change tracking.

Text.cpp, BufferParams.h, Author.h:
  Change unsigned int to int because the hash values can be negative.

lyx2lyx:
  Allow to convert negative author_ids.

See also: r30756.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36134 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-05 18:25:29 +00:00
Richard Heck
2a0fcda936 Perhaps this is overkill, but it can't hurt....
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36001 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-02 15:42:45 +00:00
Richard Heck
4645e3c56f Make sure that the members of this enum get the same value on every
platform.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35995 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-02 14:50:07 +00:00
Vincent van Ravesteijn
152491f916 Some cosmetics (from my local cosmetics branch).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35708 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-18 14:20:03 +00:00
Richard Heck
01013c0785 Refstyle support. The user can now choose between prettyref and restyle
for formatted references. Fixes #2295, in so far as it makes it possible
to translate formatted references.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35623 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-13 12:36:53 +00:00
Uwe Stöhr
a2c6c06908 better support for the mathdots package:
technically this package is the same as esint, only for dots instead of integrals -> therefore we can and should handle it the same as esint

-> add "use automatically" checkbox
-> load mathdots if \iddots is inserted

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35251 a592a061-630c-0410-9148-cb99ea01b6c8
2010-08-31 23:34:54 +00:00
Uwe Stöhr
1712e4f35e support to load the mathdots package via the document settings; fixes #5373; fileformat change
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35241 a592a061-630c-0410-9148-cb99ea01b6c8
2010-08-31 02:04:46 +00:00
Richard Heck
fd03b1280e Allow for "Provides babel 1".
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34937 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-17 14:49:30 +00:00
Pavel Sanda
9f9104d9c4 Introduce output_sync ui for forward/reverse search
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34498 a592a061-630c-0410-9148-cb99ea01b6c8
2010-05-25 11:36:00 +00:00
Richard Heck
5678dc566f New XHTML math options. Format change.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34250 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-21 15:18:25 +00:00
Uwe Stöhr
84a2af2edb fileformat change: support to specify the background color of shaded boxes
- new buffer parameter \boxbgcolor

(I'm still working on the remaining issue #6626 as this affect not only this feature.)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34083 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-08 00:14:08 +00:00
Uwe Stöhr
9b072f6e64 don't use any longer the page background color white as being the default (equal no color) because document classes might have other colors as default
(The default color is still internally white because we have to set a color but the color is only used when the user explicitly specified it.)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34058 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-05 20:31:10 +00:00
Uwe Stöhr
4e2cd30657 fileformat change: support to specify a document-wide font color
- new buffer parameter \fontcolor
- the default color is internally black because we have to set a color
- the font color is only used when the user explicitly specified a color

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34042 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-02 23:39:36 +00:00
Pavel Sanda
a5cb2afc1b Next headers
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33976 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-31 19:38:05 +00:00
Uwe Stöhr
33978c0b1b fileformat change:
- support to change the greyed-out note font color (fixes #3865)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33962 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-31 00:46:50 +00:00
Richard Heck
72d110bb6e Add a math-as-LaTeX option, and fix some issues with lyx2lyx.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33801 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-19 15:02:12 +00:00
Richard Heck
d8a1720d56 Give ourselves a little more flexibility about math output under XHTML.
I think it will be worth implementing a version of pure HTML output, for
some uses, a la eLyXer.

Note that at present none of this does anything, and there is no UI to
set it. I just want to make sure it's in the file format, in case I do
not get to this before 2.0.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33794 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-18 20:35:08 +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
Jürgen Spitzmüller
1ccfe14914 * Add native support for \includeonly (bug 5360).
File format change.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32826 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-07 10:01:26 +00:00
Richard Heck
28e9474f7a Some BufferParams for XHTML output.
These are not actually implemented yet, but I wanted to make sure to get
them into the format now, so even if I can't implement them before the
1.7 release, I can do so during the release cycle, without a format
change. I don't expect that to happen, but you never know....


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32683 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-30 22:22:33 +00:00
Jürgen Spitzmüller
df329341aa * Add support for per-document fontenc setting (bug 5730)
File format change.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32228 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-29 14:43:00 +00:00
Uwe Stöhr
d5099c8605 - introduce option to suppress the LaTeX package mhchem, fileformat change
The fileformat change is also needed because of our mistake that we load mhchem since LyX 1.6.4 automatically so that files created with LyX 1.6.4 won't compile under LyX 1.6.3. Now at least all files created or opened with LyX 1.7 can be reverted to the fileformat of LyX 1.6.x and can therefore be read by all LyX 1.6.x versions.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31941 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-11 01:48:07 +00:00
Uwe Stöhr
33eec90086 new document option to suppress the default date, fileformat change, fixes #5823
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31028 a592a061-630c-0410-9148-cb99ea01b6c8
2009-08-14 00:52:33 +00:00
Vincent van Ravesteijn
cbb0829728 Fix a gcc error and warning for r30756.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30757 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-23 20:34:16 +00:00
Vincent van Ravesteijn
966687d98b Fix bug #6058: Change tracking not usable in version control.
This patch makes sure that there are minimal changes when loading and saving a file with change tracking.

- the authors are assigned a buffer_id, such that when the file is saved, they get the same id,
- the authorlist is sorted according to the buffer_id,
- the buffer_id is written to the file in the author list (file format change)
- the ids start with 1, because 0 is internally reserved for the current Author,
- when writing the file, the current author is assigned an id if he didn't already have it.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30756 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-23 20:08:05 +00:00
Uwe Stöhr
53e7a92494 support to specify the paragraph indentation in the document settings dialog; introduces the new class HSpace; - file format change
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30694 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-19 21:13:27 +00:00
Jürgen Spitzmüller
7ba2bfb81d * Per-document setting for bibtex and makeindex.
File format change.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29774 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-22 07:20:00 +00:00
Jürgen Spitzmüller
c52bd08442 Introduce splitindex support. File format change.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29255 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-16 07:29:01 +00:00
Uwe Stöhr
4d30bc7579 support for \pagecolor, fileformat change
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29220 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-11 21:40:11 +00:00
Jürgen Spitzmüller
60d2b3295a * new per-document default output format. File format change.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29181 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-10 11:06:53 +00:00
Jürgen Spitzmüller
737e9b2c20 start XeTeX support.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29119 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-06 06:58:30 +00:00
Richard Heck
f946b6ed0b Move some more code around so as to make module-related routines available
to tex2lyx.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28574 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-21 16:45:37 +00:00
Richard Heck
084de459fb Make Andre a little happier.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28560 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-19 19:10:59 +00:00
Richard Heck
52d3a1e426 Move some code around in an effort to make information about modules
available to tex2lyx. The point is to move the crucial routines that 
deal with modules out of BufferParams.cpp, which tex2lyx does not have,
and into TextClass.cpp, which it does.

This is all cleanup that makes a lot of sense independently.

Note that LayoutModuleList will shortly become a real class.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28456 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-11 23:22:10 +00:00
Jürgen Spitzmüller
3d48607f1a * BufferParams.{cpp,h}:
- pass graphics driver to geometry (bug 5613)
	- put papersize options to package call, not in \geometry
	  which broke compilation in some cases (bug 3838)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27917 a592a061-630c-0410-9148-cb99ea01b6c8
2008-12-19 09:32:04 +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
Richard Heck
362d6e468f This patch fixes a set of bugs reported by Philippe relating to excluded
and default modules. The lesson, in the end, is that we need to do all the
removal of modules that no longer `fit', for whatever reason, before we
do anything else. So the patch basically just moves the `removal' code
into a new routine that gets called before the routines that add default
modules and then check consistency.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27281 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-05 19:42:16 +00:00
Richard Heck
5e45cd4c44 Revert the last few patches. I'll commit a more general fix all at once.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27280 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-05 19:32:37 +00:00
Richard Heck
b0035f07b1 Fix bug reported by Philippe relating to excluded modules: Excluded
modules need to be removed before anything else is done.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27276 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-05 19:01:59 +00:00
Richard Heck
9dfac74265 This patch introduces ProvidesModule and ExcludesModule layout tags.
See http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg145129.html.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27041 a592a061-630c-0410-9148-cb99ea01b6c8
2008-10-23 00:27:03 +00:00
Richard Heck
2351615f0a Fix LFUN_LAYOUT_MODULE_ADD: We need to make sure that the module
isn't already added, that its requirements are satisfied, and that
it doesn't conflict with any loaded modules. Mostly, this just
moves existing code into a new routine where we can get at it.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26995 a592a061-630c-0410-9148-cb99ea01b6c8
2008-10-20 19:48:32 +00:00
Richard Heck
297d5d1f4e Factorize out some of this. Just a bit more cleanup, prior to the patch
I've been promising....


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26923 a592a061-630c-0410-9148-cb99ea01b6c8
2008-10-16 17:14:46 +00:00
Richard Heck
a707ac75ac Change some vectors to lists. This is preparatory for a real patch later.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26899 a592a061-630c-0410-9148-cb99ea01b6c8
2008-10-14 14:04:21 +00:00
Uwe Stöhr
4331cbf30f babel handling: revert r26857 and r26858 for the reasons I posted o the list
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26870 a592a061-630c-0410-9148-cb99ea01b6c8
2008-10-12 17:21:18 +00:00
Jürgen Spitzmüller
d45ca67d1d ** fix bug 2114. Fileformat change.
** fix bug 5343 (patch from Richard, prerequisite for the other fix)

* Buffer.cpp:
	- increment format to 343
* src/BufferParams.{cpp,h}:
	- new param \use_default_options that allows to select/deselect
	  the "Other" class options defined in the layout file.
* src/frontends/qt4/GuiDocument.cpp:
* src/frontends/qt4/ui/LaTeXUi.ui:
	- add GUI to set \use_default_options, display predefined options in the dialog
	- update dialog correctly on class change.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26860 a592a061-630c-0410-9148-cb99ea01b6c8
2008-10-12 09:36:00 +00:00
Abdelrazak Younes
4d4ee5d7a6 Factorize out the hardcoded babel tests. This whole thing is a real mess...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26858 a592a061-630c-0410-9148-cb99ea01b6c8
2008-10-12 07:56:06 +00:00
Richard Heck
163d827729 Support for removing "default" modules.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25917 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-27 17:46:27 +00:00
Jürgen Spitzmüller
d7eaaba900 ** support for CJK font argument. File Format change **
* src/BufferParams.{cpp,h}:
	- new param fontsCJK (font_cjk).

* src/output_latex.cpp:
	- use fontsCJK param.

* src/Buffer.cpp:
	- increase file format

* src/frontends/qt4/GuiDocument.cpp:
* src/frontends/qt4/ui/FontUi.ui:
	- GUI for the CJK font param

* lib/lyx2lyx/lyx_1_6.py:
	- remove font_cjk param on reversion.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25135 a592a061-630c-0410-9148-cb99ea01b6c8
2008-06-05 06:18:34 +00:00
Richard Heck
3e28f0fc57 Add some constness where we can.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24883 a592a061-630c-0410-9148-cb99ea01b6c8
2008-05-22 14:02:35 +00:00
Jürgen Spitzmüller
764b5cf859 support for default master document.
file format change.

This is the last feature for today. Promised.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24540 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-28 16:38:56 +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
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
700af7e701 Add support for document-local layout information. GUI is to follow.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23913 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-24 12:31:07 +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
Stefan Schimanski
f5a02d060a * compile fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23746 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-15 00:18:48 +00:00
Bo Peng
48f9225e27 Embed: allow the use of embedded layout and class (.cls, .sty) files.
* src/EmbeddedFiles.h|cpp: add validate() function to validate loaded .lyx file.
	* src/LayoutFile.h|cpp: add Layout_Type parameter to addLayoutFile to load an embedded layout.
	* src/BufferParams.h|cpp: read layout from temp directory, then local directory.
	* src/frontends/qt4/GuiDocument.cpp: handle embedded layout type
	* src/LyXFunc.cpp: handle embedded layout when a layout is re-read.
	* src/Buffer.cpp: validate after a buffer is read. handle exceptions properly.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23667 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-11 18:31:38 +00:00
Bo Peng
932998494b Embedding: add option \extra_embedded_files to buffer params. This increase
LyX file format to 318. The Embedded files panel of document settings has
been simplied, with working add and remove buttons. Note that bease BufferParams
lacks buffer path information, extraEmbeddedFiles are vector<string>, instead
of EmbeddedFileList (as previously planned).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23606 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-09 23:04:14 +00:00
Richard Heck
0bd0fbf2e3 Cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23345 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-29 02:50:12 +00:00
Richard Heck
2b3bd7b5f4 This is the last of the commits that hopes to enforce the distinction between "layout files" and "document classes" that was introduced by the modules code. For the most part, these changes just refactor code from TextClass between: (a) a TextClass base class; (b) a LayoutFile subclass, which represents the information in a .layout file; and (c) a DocumentClass subclass, which represents the layout information associated with a Buffer---a LayoutFile plus Modules. Methods from TextClass have been apportioned between the three classes depending upon what is needed where, and signatures have been changed where necessary so that the right kind of class is required.
At this point, there are no simple TextClass objects in the main LyX code, and it is impossible to create them, since the TextClass constructor is protected. Only LayoutFile and DocumentClass objects can be constructed, and for the most part these are constructed only by their respective containers: BaseClassList and DocumentClassBundle. There is an exception: LayoutFile does have a public default constructor, but if anyone knows how to make it go away, please do.

There will be one or two more commits along these lines, but these will be simple renamings. For example, BaseClassList should be LayoutFileList.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23343 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-29 02:45:33 +00:00
Richard Heck
2c382f2f47 More work towards type safety regarding TextClass's. A couple bugs have been fixed here, too, discovered along the way.
Note that we no longer rely upon BaseClassList to be sorted. This would allow layout descriptions---such as "article (AMS)"---to be translated, and the ordering of the list in Document>Settings will then follow the translations.



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



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23299 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-28 01:42:02 +00:00
Richard Heck
4c6180d209 Try to make the distinction between base classes and text classes clearer in the code.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23198 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-24 16:59:49 +00:00
Richard Heck
69de04feac Restore Andre's TextClassIndex, but now in the form of BaseClassIndex. It seems worth distinguishing more clearly than we do at the moment between TextClass's and BaseClass's. The latter correspond to *.layout files; the former are based upon *.layout files but may be modified by modules.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23197 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-24 16:29:40 +00:00
Richard Heck
ebd4f002af Andre's s/getBaseClass/baseClass/ cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23191 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-24 15:12:41 +00:00
Richard Heck
0362c6aae7 Andre's s/getTextClass/textClass/ cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23190 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-24 15:06:35 +00:00
Richard Heck
2e7d1199df Revert 23154.
Sorry, Andre, but this broke not only the modules stuff but the general handling of TextClasses. I'm not opposed to doing this sort of thing, but it's going to be a little more complicated. I'll do it when I get a bit of time, or I can explain what the issue is here if you want to do it.

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


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

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



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23154 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-23 11:36:15 +00:00
Richard Heck
4ab6f265e9 Add support for column separation in page margins. Fixes bug 3337.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23059 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-19 05:24:48 +00:00
Jürgen Spitzmüller
f62fbd05d2 * src/BufferParams.{cpp,h}:
- (paperSizeName): add missing paper sizes. Add an argument to the function
	  that returns context-sensitive information (depending on the purpose)
	- (paperSizeName): Do not hardcode "letter" for default paper size (bug 2098).
	- (dvips_options): pass purpose DVIPS to paperSizeName
* src/Converter.cpp:
	- (dvipdfm_options): pass purpose DVIPDFM to paperSizeName.
* src/Format.cpp:
	- (view): pass purpose XDVI to paperSizeName (fix bug 4432).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22664 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-25 12:54:25 +00:00
Richard Heck
0fce3ff6bd Pass by const reference. Thanks Andre and Peter.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22405 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-06 18:17:25 +00:00
Richard Heck
ef86256c39 Remove commented out code.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22402 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-06 17:23:19 +00:00