Commit Graph

111 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
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
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
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
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
bd47057c20 Fix 'inset-toggle assign' for InsetBranch.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36610 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-30 00:21:08 +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
Vincent van Ravesteijn
dc9d39dafe Add missing cur.forceBufferUpdate() to LFUN_BRANCH_(DE)ACTIVATE.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36598 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-29 16:50:22 +00:00
Richard Heck
897404e34d Simplify more of the tooltips. There will be some speed improvements
here, but not very noticeable, I think, as these ones aren't called by
the addToToc stuff.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36347 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-17 17:25:22 +00:00
Richard Heck
5577e877bb Try to move all updateBuffer() calls to a central location. We now use
DispatchResult to store a flag that tells us whether we need a buffer
update or not. 

So: If you find a missing one, go to an appropriate place in the
dispatch and call cur.forceBufferUpdate() or, if you don't have a cursor
but do have a DispatchResult, call dr.forceBufferUpdate().

There is one remaining call I could not move, in
TextMetrics::redoParagraph. But this looks like an emergency call when
the macro context has not been set. There are also a couple calls that
are connected with buffer creation that I commented out, since the same
call is done again almost immediately. But I'm not positive about those.

Now the nice thing would be to do the same for updateMacros().


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34826 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-09 14:37:00 +00:00
Vincent van Ravesteijn
c6c0559be0 Fix bug #6672 (part 2): Add tooltips to the outliner.
At some point we should implement that the tooltips are only shown when they are not completely shown in the outliner. However, this requires extending the QTreeView class. 

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34287 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-26 00:43: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
Vincent van Ravesteijn
bad0d577e8 Fix the InsetBranchParams::read function after that the '\n' was removed from params2string in r33710.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33720 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-11 21:11:03 +00:00
Richard Heck
f44ee9937a Finish fixing the problem with "New Inset" in branches noticed by
Vincent.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33710 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-11 12:56:25 +00:00
Richard Heck
e50264577c Fix part of a problem reported by Vincent.
The asymmetry between how "Branch" is read and written still needs to be
addressed, as does the fact that InsetBranchParams ought to be created
with a param string.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33706 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-10 20:56:45 +00:00
Abdelrazak Younes
4db2685cbe Migrate Branch dialog to InsetParamsWidget
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33521 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-19 20:57:25 +00:00
Vincent van Ravesteijn
6b96abd211 Correctly paint the background of the instant preview of a displayed equation.
For a displayed equation, the height is artificially increased by a displayMargin() in InsetMathHull::metrics if it is a displayed equation and there is a preview. 

This extra height is not covered by the preview image and what one can see is the background as drawn by the MathHull inset. The color of this background should be either Color_mathbg or Color_background depending on whether the preview is shown or not.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32560 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-17 14:09:37 +00:00
Richard Heck
3d07ead18b InsetBranch works again.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32138 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-21 23:24:21 +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
Pavel Sanda
4a7bb9541f Fix setting via context menu.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30458 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-11 00:11:59 +00:00
Pavel Sanda
29ff62face Fix status check of branch (de)activation from the child, when master
has no info about that branch.

Context menu still does not work.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30457 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-11 00:10:18 +00:00
Jürgen Spitzmüller
7d1b297e7e * InsetBranch.cpp:
- fix display of "child only" suffix, and "undefined" suffix.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30423 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-09 11:45:19 +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
c6d26a3ddd Fix the placement of the cursor when right-clicking on an inset inside a branch inset.
see:
http://www.mail-archive.com/lyx-users@lists.lyx.org/msg74184.html

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29892 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-30 20:57:43 +00:00
Richard Heck
675925f659 This patch introduces wrapped tooltips for some more insets.
New method wrapParas() in support, deployed in various
insets.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29564 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-07 18:04:05 +00:00
Jean-Marc Lasgouttes
36a811cba2 keep a cast for later
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29551 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-06 13:41:35 +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
Jürgen Spitzmüller
1c738a37fb * InsetBranch.cpp:
- indicate branch status in the tooltip.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29197 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-11 07:11:37 +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
Richard Heck
920bfedf1f Manage the initial setting of Default or Plain Layout more simply.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29093 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-04 19:34:14 +00:00
Pavel Sanda
9420fbedf4 Revert unintended commit
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29078 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-04 09:31:34 +00:00
Pavel Sanda
5806be1528 Fix bug http://www.lyx.org/trac/ticket/5812
(Icons replacement broken)

Patch from Martin Engbers.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29057 a592a061-630c-0410-9148-cb99ea01b6c8
2009-04-03 17:00:09 +00:00
Jean-Marc Lasgouttes
67bafed7bb Mark status of branches in the Button. This uses two dingbat symbols (check
and cross). I'll revert if people do not like it (otherwise it is candidate
for branch).



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28988 a592a061-630c-0410-9148-cb99ea01b6c8
2009-03-31 10:31:28 +00:00
Jean-Marc Lasgouttes
6c422712e1 Extend the branch-(de)activate functions to work without a parameter. In
this case, when the cursor is on a branch inset (using the AtPoint mechanism)
the branch to which the branch inset belongs will be (de)activated.

This functionality can now be used through the branch inset context menu



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28987 a592a061-630c-0410-9148-cb99ea01b6c8
2009-03-31 09:38:07 +00:00
Jean-Marc Lasgouttes
827c72e1f5 Simplify and fix the TOGGLE_INSET code for branch inset. If it turns out
that the extra complexity was intended, I would be interested to know
what the idea was.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28979 a592a061-630c-0410-9148-cb99ea01b6c8
2009-03-30 12:45:33 +00:00
Jürgen Spitzmüller
88421aaeda Fix bug 5851: Branch definitions not shown in Insert>Branch menu if master is set.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28934 a592a061-630c-0410-9148-cb99ea01b6c8
2009-03-27 11:44:40 +00:00
Pavel Sanda
627f08f9f1 Revert r28853
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg148960.html


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28866 a592a061-630c-0410-9148-cb99ea01b6c8
2009-03-19 15:57:12 +00:00
Pavel Sanda
e8e363338c Context-branch menu uselessly shows both open/close items.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28853 a592a061-630c-0410-9148-cb99ea01b6c8
2009-03-18 13:21:06 +00:00
Vincent van Ravesteijn
36aa11863b Fix bug 5806: http://bugzilla.lyx.org/show_bug.cgi?id=5806.
Branch names with spaces impossible

Read the whole line to catch the whole branch name.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28620 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-26 00:24:12 +00:00
Vincent van Ravesteijn
7eb04d61d9 Fix the fix for bug 4346: http://bugzilla.lyx.org/show_bug.cgi?id=4346.
Synchronizing insets asserts with two views open

This finishes the change of http://www.lyx.org/trac/changeset/28587.

Replace the setButtonLabels functions that need a BufferView by buttonLabel functions. These functions modify the label at drawing time. 

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28610 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-25 22:35:41 +00:00
Vincent van Ravesteijn
aedfb81808 Fix bug 4346: http://bugzilla.lyx.org/show_bug.cgi?id=4346.
Synchronizing insets asserts with two views open

It changes the autoOpen_ member of InsetCollapsable into a map, such that an autoOpen value can be specified for each bufferView. Now, the assertion is avoided and insetCollapsable can be open in one bufferview and be closed in the other in very special cases that the cursor end up in a closed inset.

Compare with the MathMacro::editing_ member. 

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28573 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-21 16:27:00 +00:00
André Pönitz
20d5148dca move ColorSet to a header of its own to reduce #include dependencies
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28426 a592a061-630c-0410-9148-cb99ea01b6c8
2009-02-09 23:30:24 +00:00