Commit Graph

101 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
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
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
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
07e8f2e1bc InsetBox.cpp: only shaded boxes can have a non-plain layout when there is no inner box
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34809 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-08 03:01:50 +00:00
Uwe Stöhr
142caff833 InsetBox.cpp: only shaded boxes can have multiple paragraphs when there is no inner box
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34808 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-08 02:42:36 +00:00
Uwe Stöhr
ebcef496a5 - new support for makebox; fileformat change
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34748 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-03 13:14:15 +00:00
Uwe Stöhr
0176f8e04c InsetBox.cpp: fix #4776; the additional \makebox is superfluous because \makebox and \framebox are equivalent, except that the latter draws a frame
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34472 a592a061-630c-0410-9148-cb99ea01b6c8
2010-05-23 18:13:23 +00:00
Peter Kümmel
aaf7bfd231 change was committed by accident.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34261 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-22 12:02:43 +00:00
Peter Kümmel
61b2bd5e7f Using "using namespace std" with msvc10 makes also std::tr1::bind visible and generates conflicts with boost::bind.
Solution: don't use boost::bind for msvc10 (could also be extended  to several GCC versions)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34257 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-22 11:16:58 +00:00
Richard Heck
b79d8e5e2d Make members of FuncRequest private, per the FIXME there. Again, this is
basically a massive renaming, with no real changes.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34106 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-09 19:00:42 +00:00
Richard Heck
4c7a5d0024 This is just a giant renaming of member variables in FuncRequest,
preparatory to making them private.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34105 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-09 18:15:17 +00:00
Abdelrazak Younes
6490dd8636 Factorize showInsetDialog() for InsetParamsDialog based dialogs.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33487 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-16 13:35:40 +00:00
Abdelrazak Younes
175c03336e InsetBox:
* update the button label when a parameter is changed.
* Get rid of unused LFUN_INSET_DIALOG_UPDATE dispatch.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33486 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-16 12:55:05 +00:00
Abdelrazak Younes
1eed486fc4 ERT and Box insets: simplify dialog creation and don't hide the dialogs upon destruction anymore
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33356 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-07 21:46:40 +00:00
Richard Heck
3e654186d2 Move the StartTag, EndTag, and CompTag classes into the html namespace.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33099 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-19 22:08:04 +00:00
Richard Heck
814af09a69 Fix the height output for InsetBox.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32531 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-14 16:52:33 +00:00
Richard Heck
cbe28d9d7a Spacing.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32530 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-14 16:50:17 +00:00
Richard Heck
dc88d6ecd2 Restore XHTML for InsetBox.
I guess that this should be "inline", that is, appear where it appears
in the LyX file, as opposed to being deferred until after the current
paragraph is output. But I'm not sure about this. If anyone has a view,
let me know.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32215 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-26 16:38:26 +00:00
Abdelrazak Younes
82c7e15e64 Uniformize Inset construction (passing Buffer * everywhere). Lots of cleanup to do still...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31901 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-08 15:53:21 +00:00
Jean-Marc Lasgouttes
78c45693ef remove all trace of editMessage
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30585 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-14 18:56:13 +00:00
Jean-Marc Lasgouttes
5bf8df4fbc Remove the layout_ cache in InsetCollapsable.
Remove setLayout methods and all the calls to it.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30560 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-14 12:07:51 +00:00
Jean-Marc Lasgouttes
4dbe411ba9 Remove all BufferParam arguments in InsetXXX methods (since insets know about their Buffer)
Add an assertion in Inset::dispatch that checks that buffer() == *cur.buffer()


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30540 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-13 12:56:20 +00:00
Richard Heck
67e70c6c02 Well, it turns out that we need a different return value for the xhtml
routines, one that allows us to "defer" certain material, e.g., a float
that ought to appear in a div but can't simply be put into the middle
of a paragraph.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30079 a592a061-630c-0410-9148-cb99ea01b6c8
2009-06-12 17:23:17 +00:00
Richard Heck
12f57a57bd The return value for xhtml() is not going to be needed.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30078 a592a061-630c-0410-9148-cb99ea01b6c8
2009-06-12 16:11:33 +00:00
Richard Heck
bd5cccbb34 Lengths for HTML. Use them for InsetBox.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30074 a592a061-630c-0410-9148-cb99ea01b6c8
2009-06-12 14:42:33 +00:00
Pavel Sanda
da3668dd98 Fix compilation on win
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29976 a592a061-630c-0410-9148-cb99ea01b6c8
2009-06-06 00:31:58 +00:00
Richard Heck
f61bebd7fb HTML output code for a handful of easy insets.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29951 a592a061-630c-0410-9148-cb99ea01b6c8
2009-06-05 17:48:14 +00:00
Vincent van Ravesteijn
4c9fe33c83 * Move handling of LFUN_INSET_SETTINGS to Inset,
* Remove the EDITABLE enum,
* add functions hasSettings() for all insets.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29375 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-22 20:55:13 +00:00
Vincent van Ravesteijn
9b111ea5a6 Make the insets accept LFUN_INSET_SETTINGS. For these insets, LFUN_INSET_SETTINGS was already used to show the settings dialog (in contrast to the insets in the next commit).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29175 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-10 00:17:34 +00:00
Jean-Marc Lasgouttes
370a4d8cf2 1/ call InsetCollapsable::validate instead of InsetText::validate in several
to allow customization in layout files

2/ do not add preamble chunks for features that are used in inactive insets
  (notes, inactive branches)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27859 a592a061-630c-0410-9148-cb99ea01b6c8
2008-12-12 15:38:52 +00:00
André Pönitz
6192345f60 add Buffer * member to DocIterator
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27603 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-17 11:46:07 +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
f771d9a994 This is a conservative fix for the layout setting bug discussed in
this thread:
  http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg145547.html
The more dramatic fix suggested there can wait.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27164 a592a061-630c-0410-9148-cb99ea01b6c8
2008-10-28 14:11:24 +00:00
Jürgen Spitzmüller
e2fc0d4385 Box fixes from Vincent and me.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26711 a592a061-630c-0410-9148-cb99ea01b6c8
2008-10-04 09:24:40 +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
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
dcc50a2454 Fix include orderings.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25309 a592a061-630c-0410-9148-cb99ea01b6c8
2008-06-18 18:54:31 +00:00
Richard Heck
77ed747114 FuncStatus::enabled(bool) --> FuncStatus::setEnabled(bool)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24999 a592a061-630c-0410-9148-cb99ea01b6c8
2008-05-29 15:14:00 +00:00
Jean-Marc Lasgouttes
050ec93722 remove some useless workarounds in getStatus
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24942 a592a061-630c-0410-9148-cb99ea01b6c8
2008-05-26 10:23:07 +00:00
André Pönitz
e7645f2439 use simpler parser interface
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24122 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-05 10:34:29 +00:00
Jürgen Spitzmüller
981dedfe6b * src/insets/InsetBox.cpp:
- allow paragraph breaks in Framed boxes.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24117 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-04 15:01:56 +00:00
Jürgen Spitzmüller
a210f17a19 * src/frontends/qt4/GuiBox.cpp:
* src/insets/InsetBox.cpp:
	- assure that framed boxes do not contain an inner box.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24116 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-04 13:33:52 +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
Edwin Leuven
0ae4b20a28 clean-up after andré ;-)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24004 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-27 11:14:17 +00:00
André Pönitz
3069acd6de remove InsetBoxMailer.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24001 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-27 07:26:37 +00:00