Commit Graph

211 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
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
Stephan Witt
c7e6a677c4 fix compiler warnings in pedantic mode: remove trailing comma after last enum member
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36923 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-17 19:56:51 +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
840f2baf91 Simplify some of the bibliography update code. There is really no reason
to be passing the BiblioInfo structure around this way. (That's an old
holdover.) That lets us get rid of the non-const masterBibInfo() again.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36697 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-03 20:08: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
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
a3e8adde24 Remove obsolete comment.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36513 a592a061-630c-0410-9148-cb99ea01b6c8
2010-11-26 16:35:08 +00:00
Vincent van Ravesteijn
f90f3d146b More include frenzy.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35941 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-31 01:26:50 +00:00
Vincent van Ravesteijn
8693ae474b Proper implementatiom of isInToc()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35846 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-26 01:10:19 +00:00
Pavel Sanda
0590c77d47 gcc spits out million warnings
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35807 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-24 21:46:28 +00:00
Vincent van Ravesteijn
72a93582b0 Add virtual bool Inset::clickable(..) to be used to change the cursor.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35804 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-24 20:11:40 +00:00
Vincent van Ravesteijn
a77d991e24 setMouseHover() functions can be const.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35802 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-24 19:24:36 +00:00
Vincent van Ravesteijn
152491f916 Some cosmetics (from my local cosmetics branch).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35708 a592a061-630c-0410-9148-cb99ea01b6c8
2010-10-18 14:20:03 +00:00
Richard Heck
14015ec434 Void functions don't return things. ;-)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35376 a592a061-630c-0410-9148-cb99ea01b6c8
2010-09-15 01:03:13 +00:00
Richard Heck
350b82fd62 Revert r35106.
Help needed here. Why isn't this equivalent?


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35108 a592a061-630c-0410-9148-cb99ea01b6c8
2010-08-09 19:17:44 +00:00
Richard Heck
35f3f7cbc4 Don't need this argument, since it was only ever called thus:
it->fillWithBibKeys(d->bibinfo_, it);
This could be useful later, if we decide to try to do the work that
fillWithBibKeys did from updateLabels().


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35106 a592a061-630c-0410-9148-cb99ea01b6c8
2010-08-09 18:00:46 +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
Richard Heck
0e14f379f3 Rename a couple routines. This will avoid confusion with a forthcoming
patch.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34816 a592a061-630c-0410-9148-cb99ea01b6c8
2010-07-08 20:04:35 +00:00
Uwe Stöhr
634a00c9db Inset***.h: fix typo in comment
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34449 a592a061-630c-0410-9148-cb99ea01b6c8
2010-05-22 02:00:41 +00:00
Enrico Forestieri
60466235fe Avoid compiler warning about unused parameter.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34352 a592a061-630c-0410-9148-cb99ea01b6c8
2010-05-01 11:38:05 +00:00
Vincent van Ravesteijn
4c611e5745 Mouse hover property should be dependent on the specific bufferview. If there are 2 views showing the same buffer, an Inset can be shown as hovered in only one view.
This is also in preparation of a decent fix for bug #3900.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34347 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-30 14:47:46 +00:00
Richard Heck
8a6b77bfe1 Introduce isBufferValid() method now, that returns true also for cloned
Buffers. Use it, as well.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33679 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-08 19:07:05 +00:00
Richard Heck
821cffab63 s/isBufferValid/isBufferLoaded/
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33677 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-08 18:57:42 +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
Abdelrazak Younes
22e4332d2b Add a new insetDisplayName() method that will be used for GUI purpose.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33479 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-15 22:46:50 +00:00
Enrico Forestieri
271d53fdd0 Fix bug #3325: Labels with special characters in equations do not work
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33325 a592a061-630c-0410-9148-cb99ea01b6c8
2010-02-04 19:08:17 +00:00
Abdelrazak Younes
d3487d106c Inset::validateModifyArgument(): new virtual interface for using LFUN_INSET_MODIFY.
GuiInfo: extract generic code into new class InsetDialog.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33270 a592a061-630c-0410-9148-cb99ea01b6c8
2010-01-30 11:15:05 +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
0d73ffc2fb Style.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32692 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-31 16:34:55 +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
512215606b Remove last vestiges of pre-XHTMLStream implementation.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32541 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-15 13:22:38 +00:00
Richard Heck
ffe73b795b Initial work for InsetTOC. This does actually write a TOC, but without
any links. That is the next step.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32459 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-10 18:30:48 +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
Uwe Stöhr
55b61a0c9f Inset.h: fix whitespace
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32317 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-04 02:11:54 +00:00
Richard Heck
f3b5dacaeb Fix comment.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32316 a592a061-630c-0410-9148-cb99ea01b6c8
2009-12-04 02:05:38 +00:00
Richard Heck
3870c6ae40 Kill a gazillion warnings.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32158 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-22 21:29:20 +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
502dc7ca52 Inset::xhtml(XHTMLStream &, ...)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32089 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-19 20:22:04 +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
Abdelrazak Younes
ff4460603e Make Buffer argument mandatory in most of the InsetMath based class... boring work...
Math manual loads and save correctly it seems but expect some instability period.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31898 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-08 11:45:46 +00:00
Vincent van Ravesteijn
3b409626f0 Move CollapseStatus from Inset to InsetCollapsable (where it belongs IMO).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31824 a592a061-630c-0410-9148-cb99ea01b6c8
2009-11-02 05:03:09 +00:00
Vincent van Ravesteijn
f09a4ac03c Fix bug #6280: Wrong context menu is opened in an auto-opened inset.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31697 a592a061-630c-0410-9148-cb99ea01b6c8
2009-10-24 00:02:41 +00:00
Vincent van Ravesteijn
93e39157b6 Add const versions of Inset::asInsetMath.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30819 a592a061-630c-0410-9148-cb99ea01b6c8
2009-08-01 21:39:14 +00:00
Jean-Marc Lasgouttes
408b96bb92 un-revert r30531, after Richard told me how to avoid the crash. Now, before
accepting changes in a clipboard copy (CutAndPaste.cpp), we set the buffer
of insets (and we reset them later).

Doing this makes sense because we know this is the only operation on these
out-of-document paragraphs that will require access to a buffer.

Also, this commit gets rid of one explicit test against ERT_CODE and 
LISTING_CODE.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30623 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-16 08:37:32 +00:00
Jean-Marc Lasgouttes
c3be74085f revert r30531, which causes a crash when copying an inset.
Basically, insets in cut stack do not have a buffer, and therefore cannot
acess to buffer parameters. What is annoying here is that acceptChanges 
requires this buffer params only to be able to read a font in moveItem,
in order to read the buffer language, and I doubt this is really needed...

Another change in this patch is that Inset::getLayout now returns a 
plainLayout when the inset does not have a buffer_. This fixes a remaining 
crash where dEPM reads isFreeSpacing() for an inset in the clipboard, but
this looks like a fragile situation. And it will not do the right thing when
doing depm in a freespacing inset.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30605 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-15 14:19:10 +00:00
Jean-Marc Lasgouttes
435a1f67b4 move InsetCollapsable::docbook to InsetText; move InsetCollapsable::undefined to Inset
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30589 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-14 20:25:25 +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
defe820a8a note to self: always compile before committing
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30550 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-13 15:57:08 +00:00
Jean-Marc Lasgouttes
d0cb2cc0b7 The most important change in this changeset is that InsetCollapsable::getLayout
is commented out, so that the documentclass is queried every time instead of
using the layout_ cache. For now I have kept the setLayout calls, but they are 
inoperant. 

Other changes:
 * remove non-const usePlainLayout methods
 * move InsetCollapsable::allowSpellCheck and allowMultiPar to InsetText
 * move InsetCollapsable::isFreespacing and forceLTR to Inset

Freespacing support could be moved to insettext, but I have to check who 
uses it. 


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30549 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-13 15:47:40 +00:00
Jürgen Spitzmüller
bbfc419c10 Finally make the label color of multiple index entries work.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30533 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-13 06:46:52 +00:00
Jean-Marc Lasgouttes
067a685263 remove BufferParams parameter from Inset::accept/rejectChanges; adapt rest of code accordingly
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30531 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-13 00:57:51 +00:00
Jean-Marc Lasgouttes
081fad9557 First step of InsetLayout cleanup.
Get rid of Inset::getLayout(BufferParams), since all insets have access to
their own buffer. Inset::getLayout() does the same now.

Get rid of InsetCollapsable::getLayout(BufferParams) too, and remove most references to InsetCollapsable::layout_. For now IC::getLayout() still returns layout_, but the idea is to change this (provided there is no performance problem).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30530 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-13 00:28:22 +00:00
Enrico Forestieri
0a90c42b86 Fix bugs #6047, #4043, and #5394.
6047: Lyx 1.6.3 unable to typeset the third chemical equation of the
      file mhchem.lyx (package mhchem)
4043: mhchem support
5394: support for the mhchems's \ce command
The \ce and \cf insets are text mode environments that allow entering
spaces and mathmode commands. LyX leaves them alone and doesn't try to
be smart, i.e., the behaviour is exactly the same we had in the old days
with text-in-math mode environments, before the introduction of the
\ensuremath and \lyxmathsym macros. This means that in those environments
one has to know what he is doing, as LyX will not offer any protection.
The hack of enclosing \ce and \cf in a \text{} environment in order to
be able to enter spaces is no longer necessary.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@30338 a592a061-630c-0410-9148-cb99ea01b6c8
2009-07-03 00:05:58 +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
92a69bb790 Basic output routines for HTML.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29950 a592a061-630c-0410-9148-cb99ea01b6c8
2009-06-05 17:44: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
Stefan Schimanski
481aff5aff * notifyCursorEnters called on insets when the cursor entered
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27465 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-15 17:11:01 +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
Pavel Sanda
e4808961c9 Another selection painting patch, PainterInfo::backgroundColor introduced.
Patch by Vincent.

http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg145438.html



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27097 a592a061-630c-0410-9148-cb99ea01b6c8
2008-10-25 10:47:38 +00:00
Enrico Forestieri
5ca3be4d67 In mathmode, treat nonascii chars with diacritical marks as an input method
for entering math accents, such that an umlauted A is translated as \ddot{A},
for example.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26577 a592a061-630c-0410-9148-cb99ea01b6c8
2008-09-26 15:53:15 +00:00
Jürgen Spitzmüller
a942cf9e86 * Fix display of horizontal alignment in fixed width tabular cells (bug 3484)
* src/Inset.h:
	- new member content Alignment that indicates whether the content
	  of text insets should be displayed with a specific alignment
* src/TextMetrics.cpp:
	- handle inset's contentAlignment
* src/insets/InsetTabular.{cpp,h}:
	- set contentAlignment for tabular cells.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26380 a592a061-630c-0410-9148-cb99ea01b6c8
2008-09-13 10:10:01 +00:00
Abdelrazak Younes
64e1fc3bf4 BufferList::bufferNum() and getFileNames(): migrate to FileName/FileNameList
Inset.h : fix erroneous forward declaration.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25959 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-29 08:52:25 +00:00
Abdelrazak Younes
4bc7feaa96 * Inset: ensure that the Buffer pointer is not copied. This was the cause of very weird bugs with copy and paste within table.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25837 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-23 12:13:41 +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
Richard Heck
95a5be2891 Prevent a crash when destroying insets whose Buffers have been closed.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25150 a592a061-630c-0410-9148-cb99ea01b6c8
2008-06-06 03:11:56 +00:00
Abdelrazak Younes
1e51e87f68 Inset::addToToc(): change signature. Use DocIterator instead of ParConstIterator. The idea is to have more accurate navigation in the paragraph. But this doesn't work yet.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24747 a592a061-630c-0410-9148-cb99ea01b6c8
2008-05-13 08:23:44 +00:00
Jean-Marc Lasgouttes
92e71f01ee * Inset.h (producesOutput): new mvirtual method, returning true by
default
	* InsetNote.h (producesOutput): always return false.
	* InsetBranch.h (producesOutput):  returns true if the branch is 
	selected.

	* InsetBranch.cpp (updateLabels):
	* InsetNote.cpp (updateLabels): remove

	* InsetText.cpp (updateLabels): honor producesOutput().


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24475 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-23 10:55:51 +00:00
Richard Heck
8a69ffd3bf Complete the removal of the embedding stuff. Maybe. It's hard to be sure we got everything, but this does compile, and it seems to work at least reasonably well. Any problems should of course be reported to the list.
For the record, this developer is sorry that the problems with this code were not noticed much earlier. It's not fun to do so much work and then have it all reverted.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24373 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-20 03:08:11 +00:00
Dov Feldstern
5dfa0c0381 visual mode for bidi cursor movement --- in tables
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24235 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-11 12:02:10 +00:00
Richard Heck
f2cd36e8ad Change the signature of forceEmptyLayout(), so that we can pass a cell index with it. We'll need this to get tables right.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23829 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-19 16:21:33 +00:00
Jürgen Spitzmüller
f2e8cd3cd9 *** File Format Change: UI and enhancement for InsetSpace ***
* src/insets/InsetSpace.{cpp,h}:
	- merge in HFill inset, add support for dotfill, hrulefill,
	  hspace and hspace*
* src/insets/InsetHFill.{cpp,h}:
	- remove

* src/frontends/qt4/GuiHSpace.{cpp,h}:
* src/frontends/qt4/ui/HSpaceUi.ui:
* src/frontends/qt4/GuiView:
	- new GUI for Space insets.

* src/insets/Inset.{cpp,h}:
* src/insets/InsetCode.h:
* src/insets/InsetCollapsable.cpp:
* src/insets/InsetCommandParams.cpp:
	- remove HFILL_CODE and LFUN_HFILL_INSERT, add SPACE_CODE where necessary,
	  new Inset member isStretchableSpace() to indicate HFill and friends.

* Buffer.cpp: 
	- increase format to 319
* lib/lyx2lyx/LyX.py:
* lib/lyx2lyx/lyx_1_6.py:
	- conversion/reversion routines
* development/FORMAT:
	- document file format change

* src/Makefile.am:
* src/frontends/qt4/Makefile.am:
* development/scons/scons_manifest.py:
	- deal with UI changes.

* src/LyXAction.cpp:
	- remove LFUN_HFILL_INSERT

* src/LyXFunc.cpp:
	- handle space dialog.

* src/factory.cpp:
* src/Paragraph.cpp (isHFill):
* src/Text.cpp:
* src/Text3.cpp:
* src/TextMetrics.cpp:
	- adapt to changes

* lib/ui/classic.ui:
* lib/ui/stdmenus.ui:
	- add HSpace dialog, remove HFill.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23787 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-17 09:23:43 +00:00
Stefan Schimanski
9e499117e3 * possibility to disable the completion cursor in text. All those
"*supported" methods maybe should be merged with a bit-enum as return value.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23776 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-16 17:07:10 +00:00
André Pönitz
0cb39e6f8b earder cleanup; cosmetics;
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23744 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-15 00:02:41 +00:00
Stefan Schimanski
10c974461d * typo
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23671 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-12 00:19:07 +00:00
Abdelrazak Younes
2ab77c16f6 Introduce Inset::isLabeled() in order to avoid reimplementing Inset::initView() everywhere we need a labels update.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23637 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-10 15:30:32 +00:00
Bo Peng
6dc7cbe1e7 Continue working on the embedding feature. An additional parameter updateFile is passed to
EmbeddedFile::enable() and EmbeddedFiles::enable() to differentiate different usages.
A member variable bibfiles_ is added to InsetBibtex because it is not efficient to obtain
EmbeddedFileList each time from params()['bibfiles'] and params()['embed'].


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23576 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-09 06:05:22 +00:00
Abdelrazak Younes
5da55588f2 * Buffer::getLabelList(): Speed up and simplify by using the tocBackend.
* Inset and derived class: get rid of getLabelList()
* BufferView::gotoLabel(): Speed up and simplify by using the tocBackend.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23541 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-07 19:46:04 +00:00
Abdelrazak Younes
017ba3c4c7 Sanitize a bit the way InsetRef and InsetCommand button are drawn.
* Inset::validate(): renamed to initView()

* InsetCommand:
- get rid of unneeded refresh() and updateButtonLabel_
- setParams(): call initView()

* InsetRef:
- implement initView()
- screenLabel(): transfer code to updateLabels()
- addToToc(): prefix name with BROKEN if the reference is broken.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23417 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-03 17:58:26 +00:00
Abdelrazak Younes
00d6906d04 Introduce Inset::validate() for Inset validation purpose upon interactive creation. In this commit this is used to validate a newly inserted label. As an added bonus, broken cross-references will be automatically fixed if the corresponding label is created.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23399 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-02 18:14:12 +00:00
André Pönitz
9b39c142b6 remove Buffer & argument in functions realted to embedded files
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23292 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-27 21:51:29 +00:00
André Pönitz
db8c16d554 progress on buffer-reference-in-insets. beware of instabilities...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23289 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-27 20:43:16 +00:00
Abdelrazak Younes
962fdc2923 Change CompletionList::data() signature and cosmetics.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23226 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-25 13:11:09 +00:00
Stefan Schimanski
c3bdbe38d7 * implemention of the WordList with iterator caching for a std::set string list.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23210 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-25 01:55:50 +00:00
André Pönitz
e05e2b6b19 (temporarily) add a Buffer * Inset::buffer_ membert
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23170 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-23 22:32:33 +00:00
Stefan Schimanski
8c2149d3aa * following Andre's advice to rename the method into
createCompletionList. This makes the ownership of the returned
  object clear.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23143 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-22 21:11:19 +00:00
Stefan Schimanski
67a9667232 * comments
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23141 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-22 20:45:42 +00:00
Stefan Schimanski
8527a08903 * simplify notifyCursorLeaves logic: We now only call it from strategic
places, i.e.
  - BufferView::setMouseCursor,
  - BufferView::mouseEventDispatch
  - LyXFunc::dispatch
  Before it was called from several dispatch handlers in the middle of the
  dispatch process. Because the cursor might get invalidated, this is
  not a good idea. We had plenty of crashes and odd behaviours because
  of this as nobody really understood those cases.

  This fixes (at least) #2069 and #4163.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23140 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-22 20:45:18 +00:00
Stefan Schimanski
7fd88683b9 * typo
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23115 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-21 23:38:46 +00:00
Stefan Schimanski
6eb72bd1f2 * Reduce compilation time by removing the shared_ptr (which is not
really important because the ownership of the CompletionLists is
  easy enough) and by removing the deque for the half finished
  favorites implemention in InsetMathNest. I think this fits better
  into the GuiCompleter anyway.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23114 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-21 23:36:02 +00:00
Richard Heck
dde5b63fd5 Cosmetics. And silence some warnings.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23110 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-21 20:04:17 +00:00
Stefan Schimanski
1bf7b59d60 * completion infrastructure
* completion support for mathed
* experimental completion support for text


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23104 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-21 19:42:34 +00:00
Abdelrazak Younes
c3a8b3a566 * Inset: Prepare for an eventual merge of updateLabels() and addToToc()
* TocBackend: add non const toc() and tocs() access methods.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23018 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-15 10:13:32 +00:00
Richard Heck
040f3431e7 Fix bug 4037 and related problems. The patch has been cleaned up a bit
from the one posted to the list.

The basic idea has two parts. First, we hard code an "empty layout"
(called PlainLayout, for want of a better name) in TextClass and read it
before doing anything else. It can therefore be customized by classes,
if they want---say, to make it left-aligned. Second, InsetText's are
divided into three types: (i) normal ones, that use the "default" layout
defined by the text class; (ii) highly restrictive ones, such as ERT and
(not quite an inset) table cells, which demand the empty layout; (iii)
middling ones, which default to an empty layout and use the empty layout
in place of the default. (This is so we don't get the same problem we
had with ERT in e.g. footnotes.) The type of inset is signaled by new
methods InsetText::forceEmptyLayout() and InsetText::useEmptyLayout().
(The latter might better be called: useEmptyLayoutInsteadOfDefault(),
but that's silly.) The old InsetText::forceDefaultParagraphs() has been
split into these, plus a new method InsetText::allowParagraphCustomization(). 
A lot of the changes just adapt to this change.

The other big change is in GuiToolbar: We want to show LyXDefault and
the "default" layout only when they're active.

There are a handful of places where I'm not entirely sure whether we
should be using forceEmptyLayout or !allowParagraphCustomization() or
both. The InsetCaption is one of these. These places, and some others,
are marked with FIXMEs, so I'd appreciate it if people would search
through the patch and let me know whether these need changing. If they
don't, the FIXMEs can be deleted.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22966 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-12 17:31:07 +00:00
Abdelrazak Younes
8e831bb602 modify Inset::EntryDirectionType to follow style used in FontEnums.h for enums.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22936 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-11 08:20:13 +00:00