Commit Graph

2650 Commits

Author SHA1 Message Date
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
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
Georg Baum
3d4f76cf2d Fix bug #7252
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37288 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-21 19:18:27 +00:00
Richard Heck
790f75759b This should be const.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37203 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-13 18:30:24 +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
645f9fdf6d Fix bug #6894. We save counter information during updateBuffer(), and
then output \setcounter macros during snippet generation, so that we get
the right equation values.

Note: It would be possible to use this same machinery to fix bugs in
instant preview, e.g., that you always get things like (0.3) as equation
numbers, if you use equations numbered by section. I'll perhaps post a
patch for that.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37186 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-12 16:04:59 +00:00
Richard Heck
f1a54ebe18 Complete fix for bug #7225.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37185 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-12 13:50:46 +00:00
Richard Heck
f3c472e769 Remove obsolete comments.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37184 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-12 13:40:47 +00:00
Richard Heck
68c43a2b18 XHTML output was a mess for grids output as LaTeX. This will probably
still be a mess in many cases, but hopefully we won't have to go here
very often.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37181 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-11 23:55:20 +00:00
Richard Heck
fe9aabf34a Fix equation number output for MathML+HTML.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37180 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-11 23:34:59 +00:00
Richard Heck
7ef3d12a80 Fix equation number output for XHTML+MathML. HTML to come.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37179 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-11 23:18:56 +00:00
Richard Heck
47ca44e296 Record and use equation numbers. This is towards getting equation
numbering in XHTML output, but it's just as easy to fix this in the LyX
display.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37177 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-11 19:35:52 +00:00
Vincent van Ravesteijn
bd3d6369c2 Fix bug #7106: iterator out of range while copying multi-row math.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37108 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-04 19:43:52 +00:00
Enrico Forestieri
9687f9beb6 Correctly show in italic shape the uppercase greek letters inserted in
a \mathit inset.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37060 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-01 19:24:16 +00:00
Stephan Witt
ab9de435b4 fix typo: double semicolon at line end of code
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36985 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-21 15:28:55 +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
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
Enrico Forestieri
280f7a7ced Fix bug #7183 (User math macros defined in child documents are shadowed on loading)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36930 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-18 02:27:25 +00:00
Stephan Witt
d2c3a5c727 fix compiler warnings in pedantic mode: remove trailing comma after last enum member
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36925 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-17 20:51:44 +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
Pavel Sanda
e1636b9f24 Report disabled BREAK_PARAGRAPH in MathHull getStatus so we can use command-alternatives.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36882 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-14 17:33:38 +00:00
Enrico Forestieri
116c20a203 Trying to be too smart by reducing the number of regenerated previews, may
cause to miss some regeneration. So, better too much than less.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36872 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-13 22:20:29 +00:00
Enrico Forestieri
f3e3655091 Really fix bug #7090.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36857 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-13 04:46:39 +00:00
Enrico Forestieri
14cbb6cb3d Fix bug #7090 (Segfault in refreshing instant preview when math macro changes)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36832 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-11 18:15:34 +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
Georg Baum
4736356bf9 fix remaining bits of bug #6709
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36718 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-04 16:43:41 +00:00
Vincent van Ravesteijn
328e8b2627 Fix bug #2100: No display equations allowed in a non-fixed width tabular cell.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36673 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-03 02:44:16 +00:00
Vincent van Ravesteijn
36986009d1 Fix bug #4849: Split cell always enabled in (context) menu.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36622 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-30 09:32:30 +00:00
Vincent van Ravesteijn
e7f2bbe1ee Rename InsetXXX::contextMenu to InsetXXX::contextMenuName. Now this function doesn't need all the parameters and we split the functionality of choosing which context menu to return, from the functionality of supplying the name for the Inset itself. Now, the InsetText context menu is returned for InsetCollapsables when the button is not hit by the mouse. There is no (intended) change in functionality for insets without a button, collapsed insets. This fixes partly bug #6642. A fix for InsetTabular and for insets with no button will follow.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36604 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-29 21:27:25 +00:00
Jean-Marc Lasgouttes
574931dcdb Fix bug #6930: no undo for inset type changing
THis is a consequence of the new AtPoint mechanism. In the old
world, recordUndoInset was called before INSET_MODIFY. I reintroduced
manual recordUndoInset calls in all places that matter. I suspect
that this issue should be revisited later.

Note that recordUndoInset can now take an optional parameter that tells
what inset is concerned. This is useful because the cursor can be
either just inside the inset or in front of it.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36580 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-29 09:47:46 +00:00
Uwe Stöhr
5524485856 InsetMathSubstack.cpp: fix #2498
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36567 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-29 03:18:02 +00:00
Georg Baum
c8ec2c0a03 Fix bug #7088
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36557 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-28 17:16:11 +00:00
Vincent van Ravesteijn
f27853ad41 Cosmetics, typos and comments.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36492 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-25 16:53:56 +00:00
Uwe Stöhr
f69929850d InsetMathGrid.cpp: whitespace
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36471 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-25 05:04:38 +00:00
Richard Heck
a81bf77314 Change the escaping mechanism for XHTML output and so allow a fix for
bug #7061.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36455 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-24 15:27:36 +00:00
Georg Baum
7edd656f21 Fix inserting subscript/superscript with nonempty selection by creating a dedicated lfun:
inset-insert simply swallows the selection, while box-insert, note-insert etc.
put the selection inside the new inset.
As a side effect the toolbar icons get better names, as requested by Uwe.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36451 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-23 20:09:08 +00:00
Enrico Forestieri
d43cdfa5ef Fix bug #7058 (Crash when invoking CAS on a multiline AMS context)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36447 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-23 15:36:58 +00:00
Georg Baum
d89bde0652 Load mhchem if it is requested unconditionally, fix some typos
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36425 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-21 18:07:04 +00:00
Georg Baum
dea050cb93 fix bug 3008: Add subscript/superscript inset for text
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36424 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-21 17:00:12 +00:00
Richard Heck
ff79d11bb7 Style.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36398 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-19 13:27:51 +00:00
Richard Heck
b9e83e76ca Another warning.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36387 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-18 22:02:46 +00:00
Richard Heck
60da156ffd Squash some warnings.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36386 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-18 22:01:54 +00:00
Enrico Forestieri
a1927c00d2 Correctly set the breakline guard.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36381 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-18 21:15:59 +00:00
Enrico Forestieri
6e41d3006d Output end of math environments at the beginning of a new line,
as now this should be blank line safe.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36372 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-18 14:20:19 +00:00
Enrico Forestieri
8cd4ef18c8 Make sure that no blank line can (unintentionally) slip in when exporting
math to latex. This also fixes bug #6733.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36371 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-18 14:05:50 +00:00
Enrico Forestieri
04fb3f0d06 Remove a MathStream and HtmlStream member which is used nowhere.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36368 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-18 09:58:35 +00:00
Richard Heck
da1e7e14ce Squash warning.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36159 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-06 03:17:23 +00:00
Enrico Forestieri
79ef98205d Fix bug #7019 (Math labels should not be escaped on saving)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36156 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-06 02:53:29 +00:00
Vincent van Ravesteijn
dad3c8ce74 Fix compilation for platforms besides Windows
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35948 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-31 14:39:50 +00:00
Vincent van Ravesteijn
aafe985042 Remove the now unused parameter of createDialogStr();
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35892 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-29 00:42:40 +00:00