Commit Graph

78 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
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
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
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
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
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
Pavel Sanda
b3870eac50 typo
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34338 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-28 21:50:06 +00:00
Pavel Sanda
11e7cc2344 Unify QQaud strings.
Inside math toolbars we use "Quadratin". Dunno if this difference is intention.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34336 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-28 21:48:08 +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
5d235f5251 Migrate GuiHSPace to InsetParamsDialog.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33525 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-21 09:28:33 +00:00
Richard Heck
603b94966a InsetQuote works again.
Is this simple stream modifier thing OK?


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32112 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-19 23:29:07 +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
Uwe Stöhr
0b33b9d090 allow to use glue lengths in the HSpace dialog; file format change
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30724 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-21 11:51:43 +00:00
Jürgen Spitzmüller
03270dd2a6 * InsetSpace.cpp: prevent another (potential) null pointer.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30666 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-18 12:19:31 +00:00
Jürgen Spitzmüller
87b701a06b * attempt to fix polytonic Greek (with mutli-accents) [bug 5976].
* add extended Greek chars to unicodesymbols [bug 4997].

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30619 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-16 06:19:25 +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
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
80228965b1 Move handling of LFUN_MOUSE_RELEASE up to Inset and remove the edit() functions for insets that do not derive from InsetCollapsable.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29184 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-10 12:38:32 +00:00
Vincent van Ravesteijn
cc11c6803c Make the insets accept LFUN_INSET_SETTINGS. These insets did not yet respond to LFUN_INSET_SETTINGS. One had to use LFUN_INSET_TOGGLE to show the settings dialog. Now, this dependency on LFUN_INSET_TOGGLE can be removed.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29176 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-10 00:20:12 +00:00
Jürgen Spitzmüller
6525a79188 * InsetSpace.cpp: typo.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28071 a592a061-630c-0410-9148-cb99ea01b6c8
2009-01-10 17:07:52 +00:00
Georg Baum
ac1fd9b37f fix bug 2558: hspace support in math
The basic idea was to reuse the corresponding text space inset in the same
fashion as is already done for references. The dialog displays a different
selection for math than for text. If wanted, the additional spaces could
also be enabled for text, but that would be a file format change.
Constructs like \hspace{\mylengthvariable} that are not supported are
treated by the math parser as ERT as before.

For reasons I don't know the context menu does not work, but this is not so
important IMHO (since a left click opens the dialog).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27954 a592a061-630c-0410-9148-cb99ea01b6c8
2008-12-22 18:12: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
b83564d82c Inset::textString --> Inset::tocString
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27378 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-10 22:45:14 +00:00
Jean-Marc Lasgouttes
3387e437a8 Length::inBP returns big postscript points, not pixel width
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26373 a592a061-630c-0410-9148-cb99ea01b6c8
2008-09-12 14:38:03 +00:00
Abdelrazak Younes
f3f99c354c add const
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25590 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-14 05:33:14 +00:00
Abdelrazak Younes
e93fd11d41 Fix MSVC warning
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25589 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-14 05:19:39 +00:00
Jürgen Spitzmüller
47e6b74e74 * src/insets/InsetSpace.cpp:
- proper visualization for negative hspaces, in analogy to negative vspaces.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25557 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-11 08:46:05 +00:00
Uwe Stöhr
3ceba1f8e4 InsetSpace.cpp:
- use another color for negative spaces to be able to distinguish it from "normal" positive one
 - don't swap the inset drawing as this inconsistent to the other negative spaces and the ones in math mode

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25544 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-10 22:01:57 +00:00
Jürgen Spitzmüller
f10b67b09f * src/insets/InsetSpace.cpp:
- comment

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25531 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-10 07:45:33 +00:00
Jürgen Spitzmüller
21f3fadbc1 * src/insets/InsetSpace.cpp:
- (simple) visual indication for negative hspaces.
	- minimal metrics width for hspaces.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25530 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-10 07:43:21 +00:00
Jürgen Spitzmüller
0160b75b4d * src/insets/InsetSpace.cpp:
- use abs().

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25516 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-09 10:31:16 +00:00
Jürgen Spitzmüller
01fb1898ad * src/insets/InsetSpace.cpp:
- correct metrics for negative hspaces (bug 5009).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25512 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-09 08:12:38 +00:00
Richard Heck
2a47858dda Fix remaining issues with InsetSpace. The identifier "Space" used in the .lyx
file has been changed to "space" to match the identifier used for the inset in
Inset.cpp and for the dialog in GuiView.cpp.

In future, we will want to get a similar uniformity elsewhere: The identifier
used in the LyX file should match the one used as inset identifier. The easy
way to do this, in the code, is to have insets write themselves this way:
	os << insetName(lyxCode()) << " ";
rather than at present:
	os << "space ";
Similar things could then happen elsewhere. E.g., if the dialog names are in
sync with the inset names, then we could do something like:
	hideDialogs(insetName(lyxCode()), this);
rather than
	hideDialogs("space", this);
and perhaps even put that into the Inset destructor rather than have specific
versions in each inset---with a test for whether there is such a dialog, of
course.

But this is all for later.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25016 a592a061-630c-0410-9148-cb99ea01b6c8
2008-05-30 15:38:43 +00:00
Richard Heck
afbc6bd2b9 Fix some of the InsetSpace problems.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25014 a592a061-630c-0410-9148-cb99ea01b6c8
2008-05-30 15:18:13 +00:00
Jürgen Spitzmüller
48e6184e84 * InsetSpace.cpp:
- brace/arrowfill drawing cosmetics, by Helge.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25002 a592a061-630c-0410-9148-cb99ea01b6c8
2008-05-30 09:31:06 +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
Jürgen Spitzmüller
2e60364941 * InsetSpace drawing cosmetics, from Helge.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24621 a592a061-630c-0410-9148-cb99ea01b6c8
2008-05-05 17:58:16 +00:00
Jürgen Spitzmüller
95767b840b support for rightarrowfill, leftarrowfill, upbracefill, downbracefill, by Helge Hafting.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24567 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-30 20:11:57 +00:00
André Pönitz
e1453ef687 lexer cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24134 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-05 21:24:57 +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
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
André Pönitz
0e09045e08 small simplification
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24023 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-28 23:46:47 +00:00