Commit Graph

322 Commits

Author SHA1 Message Date
Juergen Spitzmueller
cfeddb9293 Add ObsoletedBy tag to InsetLayout
Fixes: #9000.
2014-12-08 09:08:45 +01:00
Juergen Spitzmueller
a25569ebb3 Add a layout tag ForceOwnlines that assures an inset is started and terminated by a line break in the LaTeX output.
Fixes: #8875.
2014-12-01 14:56:47 +01:00
Georg Baum
f110ef2f41 Convert updatelayouts.sh to python
This makes the script usable on windows and speeds it up by an order of
magnitude, since no new process needs to be forked for each layout file.
It also does not conevrt .old files again.
2014-11-16 12:43:52 +01:00
Georg Baum
f09a9fe2e6 Remove unsafe method FileName::tempName()
FileName::tempName() created a new temp file name by using qt to create a
temporary file with a unique name, and then deleting that file and returning
the name. This was unsafe, since other processes or even other threads of the
running LyX could create files with the same name between deletion and then
using the temp name.
This is fixed by using the TempFile class instead. As a side effect, a few
cases where the temp files were not deleted after usage were fixed as well.
The only place that is still unsafe is createTmpDir().
2014-06-09 13:05:50 +02:00
Georg Baum
953a4d13d9 Add missing bits of layout file format update
This is needed so that the new format number is actually used. Since the
conversion is a noop I did not update the layout files (more updates will
come).
2014-05-29 21:25:08 +02:00
Enrico Forestieri
c668ebf611 Fix bugs #8546 and #9055, and introduce new separator inset.
The algorithm used for breaking a paragraph in LaTeX export is changed
for avoiding spurious blank lines causing too much vertical space.
This change is tied to the introduction of a new inset (with two
different specializations) helping in either outputing LaTeX paragraph
breaks or separating environments in LyX. Both of the above goals were
previously achieved by the ---Separator--- layout and can now be
accomplished by the new inset in a more natural way. As an example,
after leaving an environment by hitting the Return key for two times,
a third return automatically inserts a parbreak inset, which is
equivalent to the old separator layout, i.e., it also introduces a
blank line in the output. If this blank line is not wanted, the
parbreak separator can be changed to a plain separator by a right
click of the mouse. Of course, an environment can still be separated
by the following one by using the Alt+P+Return shortcut (or the
corresponding menu key), but now the plain separator inset is used
instead of the old separator layout, such that no blank line occurs in
the LaTeX output.

Old documents are converted such that the LaTeX output remains unchanged.
As a result of this conversion, the old separator layout is replaced by
the new parbreak inset, which may also appear in places where the old
algorithm was introducing blank lines while the new one is not.
Note that not all blank lines were actually affecting the LaTeX output,
because a blank line is simply ignored by the TeX engine when it occurs
in the so called "vertical mode" (e.g., after an alignment environment).
The old ---Separator--- layout is now gone and old layout files using it
are also automatically converted.

Round trip conversions between old and new format should leave a document
unchanged. This means that the new behavior about paragraph breaking is
not "carried back" to the old format. Indeed, this would need introducing
special LaTeX commands in ERT that would accumulate in roundtrip
conversions, horribly cluttering the document. So, when converting a
modified document to old formats, the LaTeX output may slightly differ in
vertical spacing if the document is processed by an old version of LyX.
In other words, forward compatibility is guaranteed, but not backwards.
2014-05-10 23:25:11 +02:00
Richard Heck
065db68067 Fix a bunch of minor issues discovered by the cppcheck script. 2014-04-21 11:52:00 -04:00
Georg Baum
6b49b6b129 Fix conflicting inset font defaults (bug #8874)
This makes the defaults of Inset::inheritFont() and Inset::resetFontEdit()
compatible. There is no user visible change except for the Chunk inset which
does not produce invalid LaTeX after editing operations anymore.
This is the safe version for 2.1.0, for later there are still open questions:
- All insets with ResetsFont true should be audited: Is this really needed,
  or do they show similar editing problems as the Chunk inset?
- Does inheritFont() need to be customizable in the layout file as well?
- Is resetFontEdit() != !inheritFont() needed at all?
I did not use change tracking for the docs, since I updated all existing
translations.
2014-02-10 22:06:32 +01:00
Juergen Spitzmueller
fa6b388cb3 Do not issue module warnings when just cloning a buffer (#8864) 2014-02-09 11:16:20 +01:00
Richard Heck
2374229cc6 Introduce InitialValue tag for counters. Fixes bug #8707. 2013-06-01 17:42:08 -04:00
Richard Heck
f34394460a Whitespace. 2013-05-23 09:39:16 -04:00
Richard Heck
1230372566 Add support for package options in layout files. E.g.:
PackageOption tipa safe will load tipa with the
 "safe" option, if we load it.
2013-05-23 09:34:40 -04:00
Julien Rioux
cde541d785 New \cite_engine_type default.
The default citation capability of LaTeX is not a true numerical
citation engine, rather it uses a mixture of labels/numbers. Thus
we now distinguish them: "numerical" always increments the bibitem
counter and uses its value as a numerical citation label, while
"default" only uses the bibitem counter when no label is provided.

LyX file format incremented to 471.
2013-05-16 20:39:23 +02:00
Georg Baum
7bdc34a987 Implement forced local layouts
These should be used if any new style needs to be introduced in the stable
2.1 series: If the ForceLocal flag of the style is set, it will always be
written to the document header, so that even older 2.1 versions can read
and correctly output the document.
2013-05-15 07:19:49 +02:00
Richard Heck
5636646134 Don't consider unnumbered sections for tocdepth. 2013-05-03 17:49:19 -04:00
Richard Heck
1b1f8dd235 Audit all the LASSERT calls, and try to do something sensible at
each failure.

There are several places I was not sure what to do. These are marked
by comments beginning "LASSERT:" so they can be found easily. At the
moment, they are at:

Author.cpp:105: // LASSERT: What should we do here?
Author.cpp:121: // LASSERT: What should we do here?
Buffer.cpp:4525:        // LASSERT: Is it safe to continue here, or should we just return?
Cursor.cpp:345:         // LASSERT: Is it safe to continue here, or should we return?
Cursor.cpp:403:         // LASSERT: Is it safe to continue here, or should we return?
Cursor.cpp:1143:                // LASSERT: There have been several bugs around this code, that seem
CursorSlice.cpp:83:     // LASSERT: This should only ever be called from an InsetMath.
CursorSlice.cpp:92:     // LASSERT: This should only ever be called from an InsetMath.
LayoutFile.cpp:303:                     // LASSERT: Why would this fail?
Text.cpp:995:           // LASSERT: Is it safe to continue here?
2013-04-25 17:27:10 -04:00
Georg Baum
eb53c60a8f Complete the NoInsetLayout format change 2013-02-21 21:57:59 +01:00
Richard Heck
06cac41193 Add "NoInsetLayout" tag for Uwe. Fixes bug #8545. 2013-02-12 10:13:41 -05:00
Richard Heck
a95ed3a2b9 Use std::map::find() instead of iterating ourselves. 2013-02-09 14:40:22 -05:00
Richard Heck
d6709df3d7 Layout changes for changes to LabelType:
LabelType Counter --> LabelType Static
	LabelType Top_Environment --> LabelType Above
	LabelType Centered_Top_Environment --> LabelType Centered
2013-02-09 13:44:06 -05:00
Juergen Spitzmueller
c246076ed5 Fix the 'caption inset mess' (bug #4647) 2012-12-30 18:29:02 +01:00
Juergen Spitzmueller
b0aa0db10a Bump layout format 2012-12-22 11:39:04 +01:00
Juergen Spitzmueller
32d2e30e3d Increase Layout format also in the source 2012-11-23 10:27:30 +01:00
Lars Gullik Bjønnes
6b2232a29c src/*.cpp: reformatting to increase consistency 2012-10-28 17:42:07 +01:00
Richard Heck
98656dd15b Bump layout format to 40, in preparation for conversion of layout
categories.
2012-10-10 13:22:54 -04:00
Juergen Spitzmueller
f18af303fe Introduce textclass categories
The categories are ascribed by \DeclareCategory{<category>} in the layout file header.
UI follows.
2012-10-09 07:17:36 +02:00
Richard Heck
894569e601 Fix a long-standing FIXME by resetting only the counter for top-level
sectioning when we see an appendix. This fixes bug #8271, whose root
cause was the fact that we were resetting all the counters inside ERT.
2012-07-21 14:19:10 -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
Jean-Marc Lasgouttes
a756403301 "Performance" fixes suggested by cppcheck
While cppcheck did not turn out any suspicious error messages, using
the "performance" flag highlighted several nitpicks in three categories
 * do not use it++ for iterators, ++it is better
 * do not use size() to test for emptyness, empty() is here
 * do not use "const T" as a function parameter, "const & T" is better

I doubt that any of these is a real performance problem, but the code is cleaner anyway.
2012-05-28 22:42:44 +02:00
Pavel Sanda
dce6c8875c Allow Insetlayout for Branch inset (#8106).
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg173659.html
2012-04-19 11:56:32 +02:00
Georg Baum
a2e8cb758b Translations for listings insets
The listings inset and include inset of type listings use two english terms
that are not localized yet: "Listing" for the caption and "Listings" for the
list of listings (not supported natively by LyX yet). The existing layout
translation mechanism has been extended to translate these terms as well:

1) Support [[stuff]] context in lib/layouttranslations
2) Support BabelPreamble and LangPreamble in InsetLayout
3) Use a InsetLayout for InsetInclude of type listings
4) Define BabelPreamble and LangPreamble in the layouts for InsetInclude
   and InsetListings
2012-04-10 20:21:01 +02: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
Georg Baum
187790135b Fix bug #5029: Support \smash, \mathclap, \mathllap and \mathrlap.
Also improve lyx2lyx roundtrip for automatically loaded packages.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40589 a592a061-630c-0410-9148-cb99ea01b6c8
2012-01-08 12:34:12 +00:00
Richard Heck
157319b3f6 New layout tags specifically for CSS information.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40411 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-06 22:38:46 +00:00
Julien Rioux
dfdcc56cba Remove extra whitespace.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40346 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-03 22:15:11 +00:00
Richard Heck
b436d85783 Fix bug #7517. This restores some code removed when we started adding basic layouts we didn't recognize.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38981 a592a061-630c-0410-9148-cb99ea01b6c8
2011-06-08 00:12:57 +00:00
Richard Heck
60b1a06ac8 Revert previous commit, which committed too much.
This reverts commit 4369e725b17fede013eb26bfd797e917eaf6f4ea.

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

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38978 a592a061-630c-0410-9148-cb99ea01b6c8
2011-06-07 23:45:33 +00:00
Richard Heck
1493191f77 Fix bug #7500: There is presently no way in the GUI to update local
layout to the current format.

This probably isn't needed for branch, since local layout was a
"hidden feature" prior to 2.0, and one can update local layout by:
  (a) copying to a file
  (b) running layout2layout on that file
  (c) pasting back into LyX
So we should probably just leave this in trunk.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38622 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-08 00:54:17 +00:00
Richard Heck
ebe6c9287f Fix bug #7080.
- Have InsetFlex::layoutName() report "Flex:" + the inset name.
- Do some layout2layout work so that user insets that do not have
  the "Flex:" prefix get it.

Note that this will break some CopyStyle stuff, but we do not have any
decent way to do that, so users will have to make that change for
themselves. I guess we should add that to the release notes.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38112 a592a061-630c-0410-9148-cb99ea01b6c8
2011-03-28 23:11:54 +00:00
Richard Heck
a72642a174 Remove obsolete layout tags.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38096 a592a061-630c-0410-9148-cb99ea01b6c8
2011-03-28 15:11:57 +00:00
Richard Heck
5d774518c6 Remove obsolete comment.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37648 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-14 12:43:56 +00:00
Richard Heck
d4db266a68 Forgot this.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37433 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-02 22:34:23 +00:00
Richard Heck
4c95238626 Change NeedsFloatPkg to UsesFloatPkg and introduce a new float tag
IsPredefined.

The point of this is that the current tag is doing both of these jobs,
and they are different. The achemso class shows this, since it uses
float.sty to define three different kinds of floats internally. We have
to set NeedsFloatPkg to false to prevent LyX from trying to redefine
them, but then we complain that there is no list command defined and so
do not enter it in Insert>List/TOC.

The new tag is not yet functional, just there.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37430 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-02 22:28:47 +00:00
Richard Heck
57deff6c3d Just some renaming, preparatory to disentangling two jobs the current
NeedsFloatPkg tag does.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37429 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-02 22:15:52 +00:00
Richard Heck
a5b01f8f96 More related to #7224: It's OK for layouts not to provide a ListCommand
if a float writes to the same auxfile as an existing float. E.g., in the
aguplus classes, we have a plate float that writes to lof and so is just
treated as a figure, for TOC purposes.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37427 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-02 17:32:59 +00:00
Enrico Forestieri
6919ddf078 Bump layout format for the new Display tag used in Comments and Greyedout notes.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37381 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-30 22:22:18 +00:00
Pavel Sanda
2c2ec0bbf6 String cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37282 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-21 13:08:21 +00:00
Richard Heck
35540efe52 Allow the warning to be disabled.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37209 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-13 21:31:14 +00:00
Richard Heck
28e08b23e2 Fix bug #7044: Better error messages when modules are unavailable. Patch
from Julien Rioux, modified by me.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37207 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-13 21:19:14 +00:00
Richard Heck
49436e4c2d Add NoCounter layout tag. When working on output of equation numbers, I
noticed that article, for example, still has a counter "chapter". This
surprised me.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37193 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-12 22:53:41 +00:00
Pavel Sanda
0bce203b5c Kill translations for this string.
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg163897.html


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36637 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-30 18:52:53 +00:00
Richard Heck
db5713332a Immediate but dumb partial fix for #7044.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36385 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-18 22:01:34 +00:00
Richard Heck
85904c550d Add ResetsFont tag to InsetLayout, toward fixing bug #5657.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35626 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-13 15:54:39 +00:00
Richard Heck
d4634167cc Get rid of "CharStyle:", "Custom:", and "Element:" prefixes, per a
suggestion of JMarc's. Docs to follow.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35608 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-12 14:46:17 +00:00
Jean-Marc Lasgouttes
6aa26820fd Introduce new tag ParbreakIsNewline in Layout and InsetLayout (not yet used)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35110 a592a061-630c-0410-9148-cb99ea01b6c8
2010-08-09 21:20:29 +00:00
Richard Heck
5ee70976de Renaming.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35057 a592a061-630c-0410-9148-cb99ea01b6c8
2010-08-05 20:25:04 +00:00
Richard Heck
0903700db3 Update comment a bit further.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34972 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-18 12:04:36 +00:00
Richard Heck
88329a656c Fix problem reported by Vincent, that absence of python can cause
failure to load the empty class.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34971 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-18 11:58:38 +00:00
Richard Heck
9034323d59 Renaming and typo.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34970 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-18 11:52:12 +00:00
Richard Heck
b0097bcddb Introduce a new "RequiredArgs" tag for layouts. This functions much as
the OptionalArgs tag does and is implemented by the now misnamed
InsetOptArgs, except that its content gets wrapped in "{}" rather than
"[]". Required arguments do not actually have to be provided, but they
are always output. 

This will allow e.g. beamer's Block environment to be implemented
without ERT.

Documentation to follow.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34591 a592a061-630c-0410-9148-cb99ea01b6c8
2010-06-04 21:50:08 +00:00
Pavel Sanda
62ca7f3ae5 Proper camel case for FileName.absFilename
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34234 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-21 01:19:09 +00:00
Richard Heck
6d7788fde0 Stupid, stupid, stupid.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34210 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-18 22:21:21 +00:00
Richard Heck
287612cfba A final bit of cleanup with the TextClass reading functions.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34206 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-18 21:06:38 +00:00
Richard Heck
6d7cffbd71 A little more cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34205 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-18 20:42:04 +00:00
Richard Heck
d0b52ce0aa Minor fixes to TextClass::read().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34204 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-18 20:37:07 +00:00
Richard Heck
f9b81a16c0 Do not throw exceptions here either. See r22806.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34193 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-17 22:49:38 +00:00
Richard Heck
dcc7497bde Fix crash reported by Bennett. We could try to catch these exceptions
elsewhere, but I actually don't know why I put them here in the first
place.

The tex2lyx stuff allows us not to wrap the calls to
frontend::Alert::warning in "#ifdef TEX2LYX" blocks.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34192 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-17 22:36:31 +00:00
Vincent van Ravesteijn
f4467be057 Fix bug #6651: No error messages when module dependencies are not fulfilled.
We need to throw the ExceptionMessage's.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34130 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-14 11:54:12 +00:00
Richard Heck
3504b0a807 Whitespace.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34077 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-07 13:25:44 +00:00
Jean-Marc Lasgouttes
b8fb599130 Fix ticket #6634: LyX should pass the "noae" option to Sweave.sty
We pass it as a global document option.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34009 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-01 21:34:22 +00:00
Richard Heck
808ff6650c Introduce a simple macro facility for citation formats. Also introduce
simple, translatable units for use in such formats.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33924 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-29 20:01:28 +00:00
Richard Heck
0c135d1c4e Make the default format translatable, and load the cite formats in
paper.layout.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33921 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-29 18:50:31 +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
1577c83484 Improve yet further the error reporting when we try to load a document
class that is unavailable. 

In addition, add some explanations about this kind of thing to the User
Guide, to which we can direct the user in the error message. This kind
of question comes up often enough that we need something right up front
about it. It isn't enough to have it in the other manuals.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33864 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-25 00:44:15 +00:00
Richard Heck
4cd5bcefe9 Introduce a RefPrefix tag for Style, InsetLayout, and Float, that
indicates what prefix to use when constructing formatted references.
Documentation to follow.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33784 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-17 12:23:24 +00:00
Vincent van Ravesteijn
f225a6d8b6 Remove superfluous std::.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33700 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-10 17:01:40 +00:00
Richard Heck
abc81b5c07 Rework and partially revert r33631.
This patch introduces a "ListCommand" tag for Float layout. This tag
defines the command used to generate a list of such floats, in the cases
where float.sty is not used (i.e., where NeedsFloatPkg is true). We were
previously hardcoding the commands \listoftables and \listoffigures. But
in other cases, such as achemso.layout, which defines lists of schemes,
charts, etc, we could not output such lists.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33633 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-05 22:58:29 +00:00
Richard Heck
b64e2d4103 Change the LaTeXBuiltin tag to a NeedsFloatPkg tag. Discussion on the
list revealed that the former is confusing to people. The latter
indicates more clearly what the tag does.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33626 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-05 17:24:38 +00:00
Jürgen Spitzmüller
8168e27362 * new InsetLayout tag to disallow spell checking. This actually brings Inset::allowSpellCheck() to use.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33467 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-13 15:44:17 +00:00
Richard Heck
c2ac70552c Introduce a "formatted counter" for use with formatted reference during
XHTML output.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33113 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-20 20:33:36 +00:00
Richard Heck
9f2e85d565 Revert r33039, which did not work at all.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33045 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-14 23:45:53 +00:00
Richard Heck
e0eaa73224 Minor InsetLayout cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33039 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-14 21:31:27 +00:00
Richard Heck
777717c33b Fix TOC section detection.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32995 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-12 19:51:32 +00:00
Richard Heck
fdbd6064e9 New layout tag for specifying the style used for TOCs, etc, in XHTML
output.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32991 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-12 19:38:31 +00:00
Richard Heck
ebfb4c09ad Make the float interface for XHTML consistent with the others.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32846 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-07 17:32:04 +00:00
Richard Heck
08b63ad3c6 Enhance LyX by fixing bug 5587. We add a new ContentAsLabel tag to
InsetLayout, per Jurgen's suggestion, so that insets can be told to
display an abbreviated form of their content when closed.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32575 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-18 00:29:22 +00:00
Richard Heck
9929f89856 Fix bug 5842: Add InPreamble tag for layouts.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32277 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-01 14:34:05 +00:00
Richard Heck
d88e9655be A bit of renaming, plus default values for htmlTag() and htmlClass().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32244 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-30 17:08:56 +00:00
Richard Heck
9afbd6d68d Update layout format.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31774 a592a061-630c-0410-9148-cb99ea01b6c8
2009-10-27 19:03:30 +00:00
Peter Kümmel
bdd92ac7a2 fix merged build
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31589 a592a061-630c-0410-9148-cb99ea01b6c8
2009-10-11 10:30:00 +00:00
Richard Heck
ea0501025e s/moduleList/theModuleList/ for style purposes.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31036 a592a061-630c-0410-9148-cb99ea01b6c8
2009-08-14 15:37:34 +00:00
Richard Heck
1f8bf874aa IfStyle and IfCounter tags for layout. Docs to follow.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30989 a592a061-630c-0410-9148-cb99ea01b6c8
2009-08-12 14:50:01 +00:00
Richard Heck
4ad536375f XHTML output for floats and captions.
NOTE: Again, I'm not increasing the layout format, though I have added
a couple new things here. If anyone thinks I really do need to do that,
then I will. But I don't think it's necessary, as no-one ought to be using
this.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30178 a592a061-630c-0410-9148-cb99ea01b6c8
2009-06-19 12:49:08 +00:00
Richard Heck
aa2b14afce Forgot to update the layout format when transferring from branch.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29964 a592a061-630c-0410-9148-cb99ea01b6c8
2009-06-05 19:05:48 +00:00
Richard Heck
0dbf7d0d3d Layout infrastructure for HTML output.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29947 a592a061-630c-0410-9148-cb99ea01b6c8
2009-06-05 17:26:30 +00:00
Jean-Marc Lasgouttes
864773d7d9 Allow literate documents other than noweb to work out of the box. Currently
only sweave is supported (for building documentation, not programs).

Layout files allow a new OutputFormat tag 

Modules can be conditionned on a feature of the type from->to, indicating that
it should be possible to convert from format 'from' to format 'to'.

Layout format incremented to 15.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29874 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-28 08:59:25 +00:00
Georg Baum
9aad4bc27f Better fix for bug 1476 (following an idea by Jean-Marc).
Don't go into an endless loop if layout2layout cannot produce the desired file format.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28529 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-17 20:25:56 +00:00
Richard Heck
4ae0333a99 Redundancy.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28467 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-12 15:01:12 +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
Richard Heck
5ee35ace6f Introduce the InToc tag for InsetLayout.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28377 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-06 17:54:33 +00:00
Pavel Sanda
6d74fca5f7 next bit
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28358 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-04 20:25:58 +00:00
Georg Baum
cd27d171d5 Partial fix of bug 1476:
Implement infrastructure to add translations to layout files and translate one .inc file.
Some others are missing.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28356 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-04 20:06:50 +00:00
Richard Heck
fa6d2fd93d Currently, a second InsetLayout declaration of a given inset completely
overwrites the existing definition, instead of updating it, as our Style
declarations do. This patch fixes this behavior, so that e.g.:

#\DeclareLyXModule{ERT}
#DescriptionBegin
#Make ERT Classic
#DescriptionEnd

Format 11

InsetLayout ERT
	Decoration classic
End

will do as advertised.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27900 a592a061-630c-0410-9148-cb99ea01b6c8
2008-12-16 16:11:15 +00:00
Richard Heck
6525159a41 Exit early to avoid indentation.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27897 a592a061-630c-0410-9148-cb99ea01b6c8
2008-12-16 16:01:32 +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
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
2078e09e67 The default modules should be kept in order.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26801 a592a061-630c-0410-9148-cb99ea01b6c8
2008-10-07 15:53:05 +00:00
Richard Heck
d841355b7e Fix bug 5316 properly. The fix is to make the routine that reads a counter
update an existing counter rather than overwrite it.

This turns out to be more complicated than it might seem. There are two 
large parts to the patch. One moves the counter read routine out of TextClass
and into the Counter and Counters classes. The other changes the syntax of 
counters from:
	Counter
		Name whatever
	....
to:
	Counter whatever
	....
This allows us to get the name of the counter right away, so we can decide
whether it is an old one or a new one. So the layout format had to be 
changed (again), with corresponding layout2layout code.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26779 a592a061-630c-0410-9148-cb99ea01b6c8
2008-10-06 14:37:28 +00:00
Richard Heck
63644744fd Whitespace and comment cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26777 a592a061-630c-0410-9148-cb99ea01b6c8
2008-10-06 12:16:17 +00:00
Richard Heck
94bc5c3086 Further to r26743, add CustomPars and ForcePlain layout tags to InsetLayout,
so that the allowParagraphCustomization() and forcePlainLayout() features can
be independently controlled.

At present, these are active only for InsetFlex. In future, they should be made
active for InsetCollapsable, in general. 


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26757 a592a061-630c-0410-9148-cb99ea01b6c8
2008-10-05 19:38:22 +00:00
Pavel Sanda
c1173eb11c Coding style
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26335 a592a061-630c-0410-9148-cb99ea01b6c8
2008-09-08 01:18:33 +00:00
Richard Heck
0a8d713fad A bit more empty-->plain. I've also changed createEmptyLayout() to createBasicLayout(),
as the former could be confusing. It's not really empty....


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26027 a592a061-630c-0410-9148-cb99ea01b6c8
2008-08-01 21:13:03 +00:00
Richard Heck
36ce36f341 More empty-->plain changes.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26026 a592a061-630c-0410-9148-cb99ea01b6c8
2008-08-01 21:03:45 +00:00
Richard Heck
cca78e3c8a Change the "empty layout" to the "plain layout", to try to avoid confusion.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26025 a592a061-630c-0410-9148-cb99ea01b6c8
2008-08-01 20:57:27 +00:00
Richard Heck
5d95df6e39 Add CopyStyle tag for InsetLayout, per request of Steve Litt.
Update documentation for new tag.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25933 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-28 15:14:37 +00:00
Richard Heck
56a35c2c61 Add UseModule tag for layout files. This allows the AMS files, in particular, to "require" the
theorems-ams module, which is what most users will want. A later commit will allow users also
to "exclude" this module, in case they wanted to do that.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25880 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-25 15:51:27 +00:00
Abdelrazak Younes
794aa69fc7 Add masks to temp file names, easier for debugging in case of crash.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25832 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-23 09:41:26 +00:00
Richard Heck
1ca1c0a326 Add a comment about bug 4812.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25641 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-15 18:09:44 +00:00
Richard Heck
8981e0bad6 Some minor upgrades to r25555. Moved addLayoutIfNeeded() to DocumentClass, most importantly. This should not change any functionality, as the calls were via DocumentClass objects, anyway.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25639 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-15 17:51:57 +00:00
Richard Heck
f854295dab 'Default'-->'Empty' in Bo's recent commit. Default means something else in the code.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25556 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-11 03:41:56 +00:00
Bo Peng
763ef015ce Improve the local layout feature by better handling of unknown textclass, unknown layouts, and switch between textclasses.
* src/TextClass.h[.cpp]: add addLayoutIfNeeded() and createDefaultLayout()
	* src/Layout.h[.cpp]: add unknown_ to mark if a layout is a default layout for an unknown one.
	* src/LayoutFile.cpp: add addDefaultClass and change addLayoutFile to addLocalLayout.
	* src/Text.cpp: add unknown layouts that are not recognizable by a new textclass.
	* src/frontends/qt4/GuiToolbar.cpp: display (unknown) for unknown layouts.
	* src/frontends/qt4/GuiDocument.cpp: restore 'browse layout' button.
	* src/frontends/qt4/ui/LaTeXUi.ui: restore 'browse layout' button.
	* src/CutAndPaste.cpp: do not convert unknown layouts from pasted text
	* src/BufferParams.cpp: add a default textclass when a document with unknown textclass is loaded.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25555 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-11 02:43:02 +00:00
Richard Heck
780bce0f96 Rename empty layout stuff to plain layout stuff.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25541 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-10 17:41:52 +00:00
Pavel Sanda
20b9e0ba93 Remove InsetEnvironment. This is unfinished decade old stuff.
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg141609.html


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25479 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-07 16:34:55 +00:00
Jean-Marc Lasgouttes
9b4a26a252 rename assert.h to lassert.h
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24559 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-30 08:26:40 +00:00
André Pönitz
b8c086b363 a leak in DocumentClassBundle.
However, I am not really sure we should care about these. It's not much
difference, except that application shutdown in slower after 'fixing'
them.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24305 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-16 21:23:45 +00:00
Richard Heck
61354cd3b2 Fix comment.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24267 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-15 15:32:46 +00:00
Richard Heck
c4f8a516bd This string cannot be translated here, because it is a layout identifier.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24266 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-15 15:32:02 +00:00
André Pönitz
7f461f4392 infrastructure for 'graceful asserts'
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24216 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-10 21:49:34 +00:00
André Pönitz
cda83b2a62 cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24107 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-03 21:36:57 +00:00
André Pönitz
c88e7a7ef6 simplify Lexer handling a bit more
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24106 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-03 20:55:09 +00:00
André Pönitz
11a0458d3f next try...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24100 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-02 23:06:22 +00:00
André Pönitz
2012beb58e revert last patch. there's something wrong, possibly unrelated to this
patch, but as this was rather largish...


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24099 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-02 22:44:33 +00:00
André Pönitz
7677e9487c simplify Lexer use a bit
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24098 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-02 22:14:45 +00:00
Pavel Sanda
5183c380b7 PlainLayout -> Plain Layout
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23934 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-24 21:08:51 +00:00
Richard Heck
d252730dff New AddToPreamble tag for layout files. This tag will ADD some information to the document premable rather than completely over-write it, as the Preamble tag does.
Increment layout format to 7.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23916 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-24 13:11:16 +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
Abdelrazak Younes
f0771cecc2 MSVC Compile fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23540 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-07 19:43:17 +00:00
Richard Heck
6edb3984bf BaseClassList --> LayoutFileList
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23532 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-07 03:53:21 +00:00
Richard Heck
ac6e5b871c Get rid of the boost::shared_ptr's in TextClass.{h,cpp}. It's not clear what these were really doing here now, and they will cause bugs now that DocumentClass objects are more dynamic.
Abdel suggested it might be worth pimpl'ing the FloatList and Counter objects, to get the header dependencies back down.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23530 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-07 03:41:12 +00:00
Richard Heck
6f1cb456cf Improve performance of TextClass type objects by making BaseClassList and DocumentClassBundle containers of pointers rather than of objects, thus reducing the need to copy. Since these classes are singletons that live the life of the process, there's not much need to worry about memory leaks.
We take the opportunity to make TextClass objects noncopyable, nonassignable, etc.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23526 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-06 23:31:40 +00:00
Richard Heck
f401ce5d29 Changes LayoutList from a vector<LayoutPtr> to a vector<Layout>.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23519 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-06 20:01:30 +00:00
Richard Heck
592f951ba0 Kill indexing into the list of layouts.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23505 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-06 05:59:21 +00:00
Jürgen Spitzmüller
ac1977018b ** subfig support **
* src/Buffer.cpp:
* development/FORMAT:
	- bump format to 316.

* src/insets/InsetFloat.{cpp, h}:
	- let nested floats be subfloats
	  NOTE: docbook support is missing.
* src/insets/InsetCaption.{cpp, h}:
	- handle subfigure captions
* src/insets/InsetGraphics.cpp:
* src/insets/InsetGraphicsParams.{cpp, h}:
	- remove old subfigure support

* lib/chkconfig.ltx:
* lib/doc/LaTeXConfig.lyx:
	- check for subfig instead of subfigure.

* lib/lyx2lyx/LyX.py:
* lib/lyx2lyx/lyx_1_6.py:
	- conversion/reversion routines for subfig -> subfloats
	  NOTE: the reversion routine still has bugs.

* src/Counters.{cpp, h}: 
	- add identifiers for subfloats

* src/LaTeXFeatures.{cpp, h}:
	- support for subfig

* src/TextClass.cpp:
	- set up subfloat counter for all custom floats.

* src/frontends/qt4/GuiGraphics.cpp:
* src/frontends/qt4/ui/GrahicsUi.ui:
	- remove subfigure UI.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23381 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-02 11:30:50 +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
cef5f40f47 Fix oddity in bibtotoc handling.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23339 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-28 21:25:57 +00:00
Richard Heck
058933bb94 Missed this when fixing the TextClass::read() API.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23330 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-28 18:17:59 +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
b2475f6625 Replace boost::shared_ptr<TextClass> with a global cache of sorts of the TextClass's used by Buffers---or, more strictly, constructed by BufferParams::makeTextClass(). The action is in TextClass.{h,cpp}.
I've left the typedef in TextClassPtr.h. At the moment, it's kind of silly. But I've left it mostly because it helps to identify where the TextClass's stored in the TextClassBundle are used, and maybe it'd be worth having some sort of strong typedef like the one for BaseClassIndex here.

I need to check whether the textClass_ member of InsetCollapsable is needed now. I think not.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23232 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-25 19:31:31 +00:00
Bo Peng
1aaa96e6f1 Load local textclass in addTextClass(), reload local layout correctly in LFUN_TEXTCLASS_APPLY and LFUN_TEXTCLASS_LOAD
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23175 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-24 06:14:48 +00:00