Commit Graph

4095 Commits

Author SHA1 Message Date
Vincent van Ravesteijn
21992716e5 Revert r37704. It enabled SET_TABULAR_WIDTH for all longtables (new fix coming soon)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37705 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-16 23:06:43 +00:00
Enrico Forestieri
4c44ddad01 Don't disable apply button if one (or more) of vertical alignment, rotation,
or long table settings are changed. Fixes bug #7308.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37704 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-16 22:19:49 +00:00
Jürgen Spitzmüller
1f21f0f2dc * src/InsetTabular.cpp: revert r36415.
This went in without discussion and is IMHO wrong (bug #7055 is invalid).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37676 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-15 11:43:04 +00:00
Enrico Forestieri
46028a6914 Due to the increased accuracy of line counting and registering, when a
latex error occurs inside a table, the exact faulty table row is spotted.
However, if all cells of a table row are output on the same line, lyx is
not able to tell what cell caused the error and highlights the last cell
of the row. This patch allows to output each cell of a table on its own
line, such that the exact point where the error occurred can be highlighted.
Note that this is only done when exporting for preview, and in normal (nice)
exports everything goes as usual.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37643 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-14 01:02:12 +00:00
Vincent van Ravesteijn
1f99db08a9 Correct the return and parameter types to match the type of RenderBase::state_.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37623 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-13 09:56:54 +00:00
Vincent van Ravesteijn
bc2dd1c50c Remove unused funcion Inset::scroll().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37617 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-13 09:41:13 +00:00
Pavel Sanda
e5677802b2 Fix gcc 4.6 compilation.
If no initializer is specified for an object, and the object is of (possibly
cv-qualified) non-POD class type (or array thereof), the object shall be
default-initialized; if the object is of const-qualified type, the underlying
class type shall have a user-declared default constructor.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37603 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-12 22:08:32 +00:00
Jürgen Spitzmüller
e9cfa82c9f * InsetTabular.cpp: multirow does not allow paragraph breaks (bug 7051).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37597 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-11 09:42:33 +00:00
Enrico Forestieri
d866717ef7 Integrate texrow with otexstream in order to perform automatic line
counting when exporting to latex. This is done for the code comprised
between \begin{document} and \end{document}, while the preamble code
still needs manual calls to TexRow::newline() for registering new lines.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37584 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-10 20:02:48 +00:00
Pavel Sanda
1b3c9e54c5 We have lyx_version, for PACKAGE_VERSION.
(Introduced in r34186.)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37577 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-09 17:23:20 +00:00
Richard Heck
2bb01af413 Output width and height parameters for XHTML images. Thanks to Rob Oakes
for the patch.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37554 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-07 23:47:43 +00:00
Edwin Leuven
119ea9cd24 support for tabular*
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37471 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-03 23:11:26 +00:00
Richard Heck
636440b8a8 Finally, disentangle IsPredefined and UsesFloatPkg. Now achemso gives us
the option to insert a List of Schemes, etc.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37436 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-02 22:57:00 +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
Jürgen Spitzmüller
4b91536197 * InsetFloat.cpp (getCaption):
- Protect content which has a "]" in subfloat captions.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37416 a592a061-630c-0410-9148-cb99ea01b6c8
2011-02-02 11:05:56 +00:00
Enrico Forestieri
1ef605f625 Introduce a wrapper class for odocstream to help ensuring that no
blank lines may be inadvertently output. This is achieved by using two
special iomanip-like variables (breakln and safebreakln) in the lyx::
namespace. When they are inserted in the stream, a newline is output
only if not already at the beginning of a line. The difference between
breakln and safebreakln is that, if needed, the former outputs '\n'
and the latter "%\n".
In future, the new class will also be used for counting the number of
newlines issued. Even if the infractrure for doing that is already in
place, the counting is essentially still done the old way.
There are still places in the code where the functionality of the
class could be used, most probably. ATM, it is used for InsetTabular,
InsetListings, InsetFloat, and InsetText.
The Comment and GreyedOut insets required a special treatment and a
new InsetLayout parameter (Display) has been introduced. The default
for Display is "true", meaning that the corresponding latex
environment is of "display" type, i.e., it stands on its own, whereas
"false" means that the contents appear inline with the text. The
latter is the case for both Comment and GreyedOut insets.
Mostly, the only visible effects on latex exports should be the
disappearing of some redundant % chars and the appearing/disappearing
of null {} latex groups after a comment or lyxgreyedout environments
(they are related to the presence or absence of a space immediately
after those environments), as well as the fact that math environments
are now started on their own lines.
As a last thing, only the latex code between \begin{document} and
\end{document} goes through the new class, the preamble being directly
output through odocstream, as usual.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37360 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-29 02:41:13 +00:00
Richard Heck
782e68aeb6 Fix thinko from r37328.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37329 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-26 14:27:16 +00:00
Jean-Marc Lasgouttes
370044551c Unify handling of pass thru insets and paragraphs by introducing Paragraph::isPassThru. Many lfuns are now disabled in sweave chunks.
Also, fix #7175 (do not output \noindent in passthru pars)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37328 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-26 11:04:42 +00:00
Enrico Forestieri
e0dfcdbdda Fix bug #7254 (LyX may insert a blank line when ending an environment)
The quick solution is to output a % sign before \n. The better one
would be doing as in mathed, but it is not so straightforward.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37320 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-24 23:58:58 +00:00
Jürgen Spitzmüller
172b915518 * InsetBox.cpp: framed boxes can have paragraph breaks and environments.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37258 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-19 11:18:52 +00:00
Richard Heck
1b263187cd Proper longtable support for XHTML output. This fixes bug #6995.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37206 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-13 21:04:52 +00:00
Richard Heck
eb26d1f2d2 These do sometimes get called when we do not know whether it is a
longtable or not, e.g., in the docbook and xhtml output routines.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37204 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-13 20:19:15 +00:00
Richard Heck
4b1777d2fa Inset::addToToc() can and should be const. It wasn't, I take it, because
of things like:
  pit.push_back(CursorSlice(*this));
which I've had to change to:
  pit.push_back(CursorSlice(const_cast<InsetCaption &>(*this)));
and similarly in a few other places.

If anyone thinks we should instead have:
  explicit CursorSlice(Inset const &);
then we can also do that.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37192 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-12 22:23:27 +00:00
Richard Heck
ee351906e0 Fix bug #7230. Changes at r36974 had not been done properly. But this is
better than what we had, anyway, since we do not calculate the tocstring
unless we need it.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37190 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-12 21:25:45 +00:00
Georg Baum
a89dbd75e6 Fix crash in lyx -e latex lib/doc/Shortcuts.lyx: theApp() is 0 in batch mode.
Unfortunately the commandline export of InsetInfo is still broken for MENU_INFO.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37134 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-06 18:40:39 +00:00
Jürgen Spitzmüller
06b84910e5 * InsetCommand.cpp (decodeInsetParam):
- use correct params for INDEX_CODE and INDEX_PRINT_CODE (bug 7180).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37104 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-04 11:32:04 +00:00
Vincent van Ravesteijn
3ac28c69e8 Fix bug #7050: Assert when using DecimalAlignment in tables.
The problem is/was that when copying an InsetTableCell?, the macrocontext_position_ and the buffer_ were not copied. That's why in InsetTabular?@splitCell@521 and in InsetTabular::TeXRow() and in InsetTabular::metrics we manually copy this into the new object.

However, splitCell() returns the object by-value. So, when we call

InsetTableCell tail = splitCell(head, column_info[c].decimal_point, hassep);

the new object is copied into tail and we lose the buffer_ and macro_contextposition. Later we will crash.

What does *nix in this case ? Apparently they don't make buffer and/or macro_contextposition 0.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37072 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-03 14:12:53 +00:00
Vincent van Ravesteijn
693bdf8447 Fix bug #7198: Assertion when calling inset-modify for a InsetSpace with a different argument than "space"
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37032 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-29 06:00:22 +00:00
Richard Heck
1f44b8a5c0 Mini-optimization: We do not need really long tooltips for the TOC.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36989 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-22 01:29:17 +00:00
Enrico Forestieri
89c1d25250 Avoid const casts by making mutable the usermacros member.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36984 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-21 14:52:18 +00:00
Richard Heck
a2111a1c50 Simplify InsetRef::forToc().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36978 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-20 22:47:09 +00:00
Richard Heck
2b39534042 Greyed out notes do produce output, which means that their counters need
to be treated as part of the document. For example, the footnote numbers
in LyX are wrong prior to this patch.

This will also affect word and character count, but should not affect
anything else. If that seems wrong, we can either (a) explicitly exclude
notes from the word count or else (b) introduce 
  bool countWordsInInset() const;
and call that, instead.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36976 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-20 22:33:12 +00:00
Richard Heck
68aa0b5b91 Add comment.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36975 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-20 22:29:41 +00:00
Richard Heck
9e9c96035c Finish disentangling tocString(). We introduce a new method, forToc(),
that also makes sure it doesn't do more work than it needs to do, by
limiting the size to 40 characters. Previously, InsetBranch::addToToc()
would have added a string representing the entire contents of the
branch! It's hard to imagine that having to recalculate that sort of
thing doesn't cause some problems with speed, especially in documents
with lots of notes and branches and such.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36974 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-20 21:55:09 +00:00
Vincent van Ravesteijn
8adcffff0c Fix bug #7166: Insets that shouldn't appear in the TOC were included. From now on use AS_STR_INTOC as an option for Paragraph::asString() for insets that should not be included in the strings for the TOC, like IndexInset.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36969 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-20 19:18:56 +00:00
Enrico Forestieri
8b88c3edde Refine fix for bug #7183.
Using updateMacros() entails a performance hit when loading a document
with really a lot of macros. So, revert to the original strategy of
tracking macros at creation time. In order to also account for macros
defined in a child document, the child is now loaded by the include inset
at construction time instead of after the master has finished loading.
This strategy mimics what updateMacros() was accomplishing without
incurring in its drawbacks, such that loading time is practically
unchanged even with a thousand macros.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36968 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-20 18:15:39 +00:00
Abdelrazak Younes
8e092e6ca6 greatly simplify and comment TeXEnvironment():
* only one for loop
* uses runparams.par_end

InsetInclude and InsetIext: initialize runparams.par_begin and runparams.par_end

Except for a few additonal empty lines the LateX exports are identical for all help files. The reason for the additional empty lines is the more consistent TeXEnvironment() call.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36934 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-18 13:49:39 +00:00
Stephan Witt
c7e6a677c4 fix compiler warnings in pedantic mode: remove trailing comma after last enum member
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36923 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-17 19:56:51 +00:00
Vincent van Ravesteijn
b90de3dc5c Fix bug #7176: Clicking TOC doesn't bring up outline
Previously LFUN_INSET_SETTINGS was misused to show the outliner. As a TOC doesn't have settings, it was no longer showed after a refactorization of LFUN_INSET_SETTINGS/LFUN_MOUSE_RELEASE because InsetToc::hasSettings() returns false.

As this is a special case, we should handle this special case in InsetTOC itself.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36907 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-17 13:12:43 +00:00
Richard Heck
832d6cd7e1 Begin undoing the tocString() mess by renaming that routine.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36889 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-15 01:34:04 +00:00
Richard Heck
de1655f92b Use the layout defined label for the TOC, too.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36888 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-14 23:50:50 +00:00
Richard Heck
7bc133b0a2 Abdel thinks we should just get rid of this.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36887 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-14 23:43:45 +00:00
Richard Heck
807fc94597 Trivial cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36885 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-14 23:18:48 +00:00
Richard Heck
d1e0a0e4ed Allow customization of label string for note insets. We actually had
strings in the layout file, but they were not used.

Question: Should we just remove InsetNote::setButtonLabel() now? The
only purpose it is serving is to provide a backup in case no label is
defined.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36884 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-14 23:16:19 +00:00
Enrico Forestieri
573694da5f Fix bug #6538 (Figure: relative path changed to absolute on copy/paste)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36835 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-11 23:04:24 +00:00
Richard Heck
c0bb9707cb Remove support for viewing URLs from hyperlinks. This is a security
risk, due to our lack of control over the links and the program used to
view them.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36789 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-09 17:55:11 +00:00
Jean-Marc Lasgouttes
838af80834 Try to finally fix #6930. All the paths that did not come from context
menus were (intentionally) missing, and it turns out they were needed.

Normally all invocations of INSET_MODIFY should trigger a recordUndo now.
Of course all cases have not been tested, but it should be working.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36770 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-08 09:24:04 +00:00
Pavel Sanda
c420c81ec2 Replay r36748
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36757 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-07 00:13:19 +00:00
Pavel Sanda
c68d754a74 Revert commits from 36745
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36749 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-07 00:05:40 +00:00
Stephan Witt
430d03811e #7026 substitute isDigit() by isDigitASCII() and ditch isDigit(); introduce isNumber() and use it in spell checker; change isdigit() to isDigitASCII() otherwise
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36748 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-06 22:35:15 +00:00