Commit Graph

301 Commits

Author SHA1 Message Date
Guillaume Munch
489dca71cd Simplifications, mainly removal of boost::function and useless std::bind 2016-07-03 01:39:32 +02:00
Jean-Marc Lasgouttes
a8cfeb1538 Move one Text::setCursor instance to CursorSlice
This method did access more CursorSlice than Text. It is only a setter for
CursorSlice with some bound checking. The new signature is
setPitPos(pit_type, pos_type).
2016-05-29 17:55:46 -04:00
Jean-Marc Lasgouttes
4fb8e9b639 Use isMainText() instead of doing explicit tests 2016-05-29 17:55:45 -04:00
Jean-Marc Lasgouttes
26308c1d6b Disable LFUN_INSET_DISSOLVE in tabulars
When in a tabular cell, "this" is just a lone InsetText, while cur.inset() is the whole tabular. This makes a big difference, especially when one wants to count cells.

Fixes bug "9954.
2016-05-29 17:55:44 -04:00
Guillaume Munch
bb344452c8 Consistency of ellipses across the UI
Use the function support:truncateWithEllipsis() to shorten a docstring with
... at the end. Actually we use U+2026 HORIZONTAL ELLIPSIS instead of "..." when
automatically shortening strings. This is to be consistent with Qt's own
truncation and is much nicer on the screen.

This includes the bugs #9575 and #9572 regarding broken text elision in the
outliner.

Known issues (non-regressions):

* TocBackend::updateItem() should be rewritten to update all TOCs. (#8386)

* "..." should be replaced with … everywhere else on the interface (including
  translation strings).

* We should prefer to rely on QFontMetrics::elidedText() to truncate strings
  with an ellipsis whenever possible, or an equivalent for the buffer view
  dependent on the font metrics. See the warning in src/support/lstrings.h.
2015-10-05 21:16:16 +01:00
Guillaume Munch
d5a5fbb8ee Enhancements and bugfixes to the TOCs
* New TOC "math-macro". This means that math macros can now be accessed in the
  outline pane in their order of appearance or in alphabetical order, and can be
  searched using the filter.

* Lists of floats now show subfloats deeper in the navigation menu

* The arbitrary 30 element cut-off after which nothing is shown except "Open
  Navigator..." is removed. Menus now have no limit in size, so Qt may display
  them scrollable. In exchange, we always show "Open outliner..." at the
  beginning. I tested for performance issues with a rather complex document and
  it is fine; but this does not exclude corner cases with lots of TOC entries of
  a certain kind. If necessary, populating the navigation sub-menu should be
  delayed like the main menu.

* Elements that do not contribute to the output (e.g. in a note, a disabled
  branch) are now preceded with a symbol indicating this status. (The machinery
  was already there; I wonder why it was not implemented already.) I have chosen
  U+274E NEGATIVE SQUARED CROSS MARK.

* Fix the contextual menus in the outliner (bug introduced at 94e992c5).

* Toc item now move to the caption when present, but first center on the float,
  to prevent the situation where the caption is at the top of the screen and the
  contents of the float is off-screen above the caption.
  (Internally, the action of the toc items can now be customised)

* Fix the LyXHTML output. Disabled captions no longer appear in the list of
  figures.
2015-10-01 21:44:22 +01:00
Juergen Spitzmueller
02ead6a93a restore crucial float information in note insets (bug #9760) 2015-09-15 22:58:49 +02:00
Guillaume Munch
94e992c5ed Better construction of the TOC for floats and captions
We introduce TocBuilder for building TOCs that take into account both float
insets and their captions.

* Floats without caption are shown with their content.

* Floats with a caption are shown with their caption, but clicking the entry now
  correctly moves to the float and not to the caption.

* Subsequent captions produce additional entries in the TOC.

* Figures and subfigures are correctly ordered in the outliner.

* New TOC "senseless" for captions appearing alone (a bit like broken references
are still displayed in the menu and outliner).

* Disable LFUN_CAPTION_INSERT if there is already a caption in a listing

Known issues:

* Inconsistent output for includes located inside floats

* We should record the end of the float in addition of the beginning for a more
  accurate cursor -> outliner entry conversion
2015-09-15 15:25:33 +01:00
Juergen Spitzmueller
897b2e73a1 New (Inset)Layout tag PassThruChars 2015-04-20 18:13:49 +02:00
Jean-Marc Lasgouttes
4dcc73ebf0 Get rid of autoBreakRow, which is obsoleted by allowMultiPar()
The only real user was Text::insertStringAsLine, but this got changed
in commit 2c7152ab.

While not other place did read the value, there is a side effect of
setAutobreakRow that merges exiting paragraphs. However, this is used
in two situations

* some constructors, where the inset is empty;

* InsetTabular::toggleFixedWidth, which actually contains itself some
  code to merge paragraphs.

Therefore the member and all associated code can be removed safely.
2015-03-31 17:02:00 +02:00
Jean-Marc Lasgouttes
67ff68bd02 Improve the check for multiple paragraphs in Text::insertStringAsLine.
Rely only on InsetText::allowMultipar() to get this information.

Implement this method for InsetTabular and InsetBox.

Also rely on this method for disabling LFUN_PARAGRAPH_BREAK.
2015-03-31 14:07:45 +02:00
Jean-Marc Lasgouttes
1e18ab586e Fixes to InsetCaption \protect-ion
* \caption does not need to be protected in general
* the contents of \caption arguments need to be protected, though.

All styles related to caoption inset have been audited and updated.

The special casing of captions in longtables has been removed, since there is no special case.

Fixes bug: #9177
2015-01-10 19:48:56 +01:00
Juergen Spitzmueller
a25569ebb3 Add a layout tag ForceOwnlines that assures an inset is started and terminated by a line break in the LaTeX output.
Fixes: #8875.
2014-12-01 14:56:47 +01:00
Alfredo Braunstein
25cf12d650 Text2.cpp (checkAndActivateInset, checkAndActivateInsetVisual): activate insets on selection if the anchor is inside the inset.
insets/InsetText.cpp (InsetText::edit): do not reset the selection
Fixes #2346.
2014-10-12 10:07:18 +02:00
Richard Heck
8b00b355ca Change forToc() to forOutliner(), to avoid confusion. The old name
is left over from when the outliner really did just display a TOC.
2014-04-21 11:51:59 -04:00
Juergen Spitzmueller
aeb51be944 Re-add removed workaround (fixes #9042).
This code was commented out at [ad94e7bd/lyxgit], since we thought it was not necessary anymore and then removed at [5aede959/lyxgit]. Bug #9042 is the evidence that we were wrong.
2014-03-19 16:21:46 +01:00
Georg Baum
5aede95971 Remove dead code + whitespace 2014-03-08 11:59:39 +01:00
Richard Heck
6a85db2307 Table cells are insets, but not from the point of view of DocIterators
and Cursors. So just calling InsetText::addToToc for the cells causes
problems, because InsetText::addToToc then adds the cell inset itself
as part of the DocIterator. This then leads to assertions, such as bug

The solution is to refactor InsetText::addToToc so that we can call the
iterating part without adding the inset.
2014-02-25 20:54:29 -05:00
Richard Heck
d79225ae98 Remove all messages to user related to assertions. We'll just use
a basic message which is defined in lassert.cpp now.
2013-04-27 17:52:55 -04:00
Richard Heck
1b1f8dd235 Audit all the LASSERT calls, and try to do something sensible at
each failure.

There are several places I was not sure what to do. These are marked
by comments beginning "LASSERT:" so they can be found easily. At the
moment, they are at:

Author.cpp:105: // LASSERT: What should we do here?
Author.cpp:121: // LASSERT: What should we do here?
Buffer.cpp:4525:        // LASSERT: Is it safe to continue here, or should we just return?
Cursor.cpp:345:         // LASSERT: Is it safe to continue here, or should we return?
Cursor.cpp:403:         // LASSERT: Is it safe to continue here, or should we return?
Cursor.cpp:1143:                // LASSERT: There have been several bugs around this code, that seem
CursorSlice.cpp:83:     // LASSERT: This should only ever be called from an InsetMath.
CursorSlice.cpp:92:     // LASSERT: This should only ever be called from an InsetMath.
LayoutFile.cpp:303:                     // LASSERT: Why would this fail?
Text.cpp:995:           // LASSERT: Is it safe to continue here?
2013-04-25 17:27:10 -04:00
Richard Heck
ca03f8cf7b Should also use doing_output here. Oversight in previous commit. 2013-03-25 17:36:21 -04:00
Richard Heck
1928bb9ed1 Don't abbreviate titles in TOC. 2013-03-24 09:39:41 -04:00
Richard Heck
86994bf753 Add a member to TocItem that tells us whether the item in question
is included in output.
2013-03-08 16:38:18 -05:00
Richard Heck
ecef54500d Introduce max_length parameter for plaintext() output routines,
so we can write a limited amount when using this for TOC and
tooltip output.

This should solve the problem with slowness that Kornel noticed,
which was caused by our trying to write an entire plaintext
bibliography every time we updated the TOC. We did that because
he had a bibliography inside a branch, and we use plaintext for
creating the tooltip that goes with the branch list.

Other related bugs were fixed along the way. E.g., it turns out
that, if someone had an InsetInclude inside a branch, then we would
have been writing a *plaintext file* for that inset every time we
updated the TOC. I wonder if some of the other reports of slowness
we have received might be due to this kind of issue?
2013-03-08 15:12:58 -05:00
Juergen Spitzmueller
37f41fd4b5 Support for command argument placement after the workarea argument 2012-12-28 11:21:24 +01:00
Juergen Spitzmueller
ad94e7bde7 This hack seems to be no more needed. Let's see... 2012-12-28 09:47:58 +01:00
Vincent van Ravesteijn
9d85e59c8c Fix typo 2012-12-27 11:36:51 +01:00
Juergen Spitzmueller
258280cecf Do not force latex_language in arguments (bug #8471) 2012-12-27 11:05:39 +01:00
Richard Heck
2e764c2c66 Respect InsetLayout's PassThru setting in XHTML export. 2012-12-24 12:11:51 -05:00
Juergen Spitzmueller
3934f4a36f In multi-par sequences, check for arguments in all pars 2012-12-23 17:37:50 +01:00
Vincent van Ravesteijn
bec9c1325e Introduce Layout::args() and simplify code 2012-12-17 22:26:11 +01:00
Juergen Spitzmueller
dcaab11b09 Correctly handle environment sequences in TOC
Only the first paragraph in those sequences goes into the TOC, since the environment is merged.

This is needed to handle the forthcoming beamer environments properly in the outliner.
2012-12-15 16:50:08 +01:00
Juergen Spitzmueller
d7e0798ade Fix argument status detection for InsetText 2012-12-01 11:49:24 +01:00
Juergen Spitzmueller
1500e44cba Support for \item arguments 2012-11-29 15:34:20 +01:00
Juergen Spitzmueller
53002538fa Pass local font to arguments and assure pass_thru is inherited 2012-11-28 19:02:07 +01:00
Juergen Spitzmueller
6f086763ae Add LeftDelim and RightDelim to the Style and InsetLayout repertoire 2012-11-25 19:10:16 +01:00
Juergen Spitzmueller
b1ce750589 allow arguments in PassThru insets 2012-11-25 18:13:57 +01:00
Juergen Spitzmueller
bf83ca75ef Further fixes for InsetLayout argument (for environments and empty latex names) 2012-11-25 17:29:08 +01:00
Juergen Spitzmueller
a41bdfa453 Missing pieces for InsetLayout arguments 2012-11-24 15:46:20 +01:00
Juergen Spitzmueller
0f866762b2 Fix function disabling 2012-11-20 15:48:59 +01:00
Juergen Spitzmueller
2e69c66195 InsetArgument revision, first working version 2012-11-19 14:21:02 +01:00
Jean-Marc Lasgouttes
0ef36860c3 Handle sending a FuncRequest object to lyxerr
* Implement the corresponding operator<<

  * Use it in a couple new places
2012-06-07 17:21:49 +02:00
Vincent van Ravesteijn
7287a259c5 Change the type of the context menu name to string
There is no need for GUI-elements to use docstring.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40058 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-29 14:48:55 +00:00
Richard Heck
c7cb9fdc43 Fix crash when there are text insets in a table cell with decimal alignment. This is discussed in these threads:
http://marc.info/?t=115869271700002&r=1&w=2&n=5
	http://marc.info/?t=130349942500005&r=1&w=2&n=17
This is the simpler and more conservative of the two solutions proposed. It is possible,
however, that we need the more complicated one, which is in x2a.patch here:
	http://marc.info/?l=lyx-devel&m=130359169107401&q=p4
Both patches contain work by me and Edwin.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38496 a592a061-630c-0410-9148-cb99ea01b6c8
2011-04-25 12:56:09 +00:00
Richard Heck
d83e002201 Fairly trivial change here: Just protect against inheriting limits to
output.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38430 a592a061-630c-0410-9148-cb99ea01b6c8
2011-04-18 01:42:01 +00:00
Enrico Forestieri
6d425078a7 When an error occurs, don't highlight more than necessary.
Currently, if an inset outputs a newline, the new latex row is still
associated with a previous id/pos. Now, if a latex error occurs before
this newline, we would still highlight everything associated to that
id/pos, even if it is extraneous to the error.
This is avoided by associating the new latex row with the id/pos in
effect right before entering the inset. If an inset does not output
a newline, it is not excluded from the selection, consistent with the
fact that the text of the inset does appear in the error description.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37903 a592a061-630c-0410-9148-cb99ea01b6c8
2011-03-12 01:40:01 +00:00
Jean-Marc Lasgouttes
d2720fa200 In InsetText::fixParagraphsFont, differentiate the case of pass thru paragraphs for which fonts should be reset, and paragraph that disable paragraph customization. In the later case, only paragraph parameters are reset.
This improves the fix in r37328 and allows centered sweave chunks, for example (although this does not work yet for other reasons)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37831 a592a061-630c-0410-9148-cb99ea01b6c8
2011-03-02 14:43:50 +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
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
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
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
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
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
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
65192d6cf8 Fix crash reported by keytest.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36657 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-02 15:14:44 +00:00
Vincent van Ravesteijn
80c1e18bda Compile fix: solve the merge conflicts in the correct way ;)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36607 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-29 23:47:55 +00:00
Vincent van Ravesteijn
c42a61c5ac Fix bug #6642: Concatenate the context menus for: InsetCollapsables without a button, InsetTexts which have a custom context menu and InsetTabulars. Override the default behaviour for InsetInfo.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36606 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-29 23:21:52 +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
5eb7add409 Fix bug #6315: counters in insets that don't produce output have ghost values.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36603 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-29 19:11:38 +00:00
Richard Heck
c9f9cb88c0 Not sure why I introduced this test at r28378, but it causes pasting to
fail e.g., of URLs in math, since tocString() is called by
Paragraph::asString() to give us the contents of insets. Probably, I was
misled by the name, and the comment in Inset.h. That means, at least,
that this method is misnamed, but it probably means we do the wrong
thing in other cases.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36517 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-26 17:08:40 +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
Richard Heck
4133f627b2 Simplify some of the tooltip stuff now.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36346 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-17 16:55:58 +00:00
Richard Heck
7d0b98a858 Optimize InsetText::toolTipText() a bit. The old version was doing
plaintext() on the entire inset, even though the tooltip is only going
to show the first few lines. This could make things slow when you had a
lot of branches, because this is called by InsetBranch::addToToc().


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36345 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-17 16:35:37 +00:00
Jean-Marc Lasgouttes
1a18cdfb39 Clean-up the code with respect to PassThru insets and layouts.
The goal is first to remove explicit testing against ERT_CODE, 
and second to allow to define layouts with the same properties as ERT insets.

This commit does not change behaviour 
* rename OutputParams::verbatim to pass_thru
* disable encoding switch inside pass_thru layouts



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35091 a592a061-630c-0410-9148-cb99ea01b6c8
2010-08-07 22:07:49 +00:00
Richard Heck
8480d1dd9a Rename InsetOptArg as InsetArgument.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34596 a592a061-630c-0410-9148-cb99ea01b6c8
2010-06-04 22:44:58 +00:00
Enrico Forestieri
604ed2571f Fix bug #6712: LyX 2 does not restore encoding after a text inset
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34456 a592a061-630c-0410-9148-cb99ea01b6c8
2010-05-22 22:42:32 +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
Peter Kümmel
21514ad512 Seems boost also includes all std headers. Not including boost therefore produces errors.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34260 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-22 11:45:34 +00:00
Peter Kümmel
c9b9748cee msvcUsing "using namespace std" with msvc10 makes also std::tr1::shared_ptr visible and generates conflicts with boost::shared_ptr.
Solution: don't use boost::shared_ptr for msvc10 (could also be extended  to several GCC versions)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34259 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-22 11:37:32 +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
Richard Heck
d65020b293 s/updateLabels/updateBuffer/g, per a suggestion of Abdel's.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33613 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-03 22:13:45 +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
Jean-Marc Lasgouttes
b4d588e78a cleanup handling of LFUN_REGEXP_MODE ; cleanup Text::getStatus
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33363 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-08 11:19:48 +00:00
Richard Heck
caa4e94bf0 Get rid of some magic booleans in updateLabels() and related routines.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33110 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-20 19:42:12 +00:00
Richard Heck
22dc345e8c Better XHTML output for InsetRef.
The idea here is to implement something like \refstepcounter for LyX. We
do this by tracking the "active" counter in Counters.cpp. We also have
to track when we go in and out of environments to which counters are
local, and so on and so forth.

This all gets done in updateLabels(), but only if we are producing
output, which is why I added the output boolean a while ago.

I expect there are bugs in here, though it seems to work pretty well
with the documents I've tested.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33108 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-20 19:03:17 +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
557c705cbb Fix listings XHTML output: No paragraphs in there.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33096 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-19 19:11:12 +00:00
Abdelrazak Younes
744ee152fa Cleanup a bit the pargraph ids generation in order to (trying to) fix
#6415
Enrico please verify that reverse dvi is fixed.

* Text and InsetText: create two private constructors and transfer some
initialisation code from InsetText.

* Paragraph: id generation is transfered to Text. May be transfered to
Buffer in the future, we'll see.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32766 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-05 13:16:55 +00:00
Richard Heck
996505c2ae This patch introduces an optional argument to Buffer::updateLabels(), so
as to allow us to call the routine when we are preparing for output and
so to do certain things we might not want to do every time. 

This is an abuse of updateLabels(), in a way, but updateLabels() long
ago became the general recurse-through-the-Buffer routine, and to
implement the sort of thing I want to do here in validate(), say, much
of the code in updateLabels()---in particular, the counter-update
code---would have to be duplicated. So I believe this is the best, and
easiest, way to go.

Actual use of the new argument will follow.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32318 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-04 03:03:38 +00:00
Richard Heck
bad0994dcd Restore XHTML output for InsetCaption.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32247 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-30 17:27:10 +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
Vincent van Ravesteijn
f19b6178a9 Fix bug #4360: Instant preview does not render formulas which contain math-macro from input file.
Patch from Stefan.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32157 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-22 20:50:35 +00:00
Richard Heck
1f42ca0df9 Comment.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32137 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-21 23:22:23 +00:00
Richard Heck
502e764584 In certain cases, we are going to need to write the outer tag, etc, in a
derived class and then will not want to write it again here. So this
gives us that ability.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32132 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-21 22:56:42 +00:00
Richard Heck
fa2f219d92 In non-MultiPar insets, we do not want to output paragraphs at all.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32103 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-19 22:31:52 +00:00
Richard Heck
e8ee20e5d7 Enable InsetText for XHTML.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32094 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-19 21:05:34 +00:00
Richard Heck
ad132e2e99 Restore basic paragraph output for XHTML. The insets are all disabled still.
Much of the point of this is to allow us properly to handle what LyX does as:
  <em>This is <strong>bold and italic</em> and now just bold.</strong>
We output:
  <em>This is <strong>bold and italic</strong></em><strong> and now just bold.</strong>
which is valid.

Note how much easier this would have been if emphasis and boldness were insets
rather than ranges. ;-)



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32086 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-19 18:24:19 +00:00
Richard Heck
7aebcc787f I am now going to proceed to break XHMTL output, and then reconstruct it
a piece at a time, using the new XHTMLStream.

This just gets the basic structures working, and fixes a bunch of iconv
errors in the process. 

I hate iconv errors.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32085 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-19 17:51:06 +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
Vincent van Ravesteijn
33dbbc15a9 Fix some remains of handling INSET_DISSOLVE (see r31756):
- change cur.inset().nargs() to nargs() as we might actually be in the inset called nextInset(),
- set the enabling flag of the status struct, don't return this value,
- return whether we handled this request.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31822 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-02 04:01:45 +00:00
Richard Heck
001b0d529d Put the InsetLayout default CSS stuff to use.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31776 a592a061-630c-0410-9148-cb99ea01b6c8
2009-10-27 19:17:52 +00:00
Vincent van Ravesteijn
6e8312d1a4 Move (part of) LFUN_DISSOLVE_INSET into InsetText.
- put the InsetFlex specific part into InsetFlex,
- honor the argument given to the LFUN also for normal Insets as the description already stated,
- fix bug #6285: context menu action goes to the wrong inset.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31756 a592a061-630c-0410-9148-cb99ea01b6c8
2009-10-26 23:49:43 +00:00
Abdelrazak Younes
8c053ea10c Move depthHook(), outerHook(), isFirstInSequence(), outerFont() to Text methods.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30957 a592a061-630c-0410-9148-cb99ea01b6c8
2009-08-09 18:35:39 +00:00