Commit Graph

2323 Commits

Author SHA1 Message Date
André Pönitz
768cfbb308 cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23296 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-27 23:11:50 +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
Stefan Schimanski
c0e2c0cd5c * better fix for * math commands. We allow the * for known math commands and for known math macros which are valid at that point in the buffer.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23273 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-27 10:46:38 +00:00
Stefan Schimanski
dee531e765 * allow macro names with *
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23272 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-27 10:43:29 +00:00
Stefan Schimanski
1b0591b28e * fix for http://bugzilla.lyx.org/show_bug.cgi?id=4584:
"not possible to use the command \tag*"


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23263 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-26 22:40:59 +00:00
Stefan Schimanski
4413bf3783 * Update::SinglePar is enough, Update::Force is a fullscreen update
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23251 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-26 14:22:56 +00:00
Stefan Schimanski
b6be7d908f * adapt to the changed signature
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23229 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-25 14:25:49 +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
c4a002d94d * this was not meant to be added
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23215 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-25 02:00:22 +00:00
Stefan Schimanski
b78dbb5999 * special faster algorithms for sorted completion lists
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23212 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-25 01:56:30 +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
Stefan Schimanski
c207a8fe0b * don't forget InsetMathMBox, which is only compiled with cmake
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23167 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-23 21:59:38 +00:00
Stefan Schimanski
323e3b0207 * Moved std::sets out of Buffer.h to reduce overall LyX compile time
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23163 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-23 18:11:35 +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
426c4bf356 * some more relicts of the unfinished favorite handling for math completion
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23142 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-22 21:11:05 +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
90a88ba87d * correct parsing of unknown math environment (fixes http://bugzilla.lyx.org/show_bug.cgi?id=4573)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23139 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-22 20:04:38 +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
Stefan Schimanski
4c5c14ff62 * a MathMacro is like a normal InsetMathNest in folded mode. Hence it should also behave like that concerning completion.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23109 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-21 19:45:36 +00:00
Stefan Schimanski
7794f870f2 * add some space between math inset and popup. This should really come from the font maximal descent in fact.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23108 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-21 19:45:05 +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
2bf1c09376 header cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23049 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-18 07:14:42 +00:00
Abdelrazak Younes
c38f62d71b header cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23047 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-17 20:18:12 +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
Abdelrazak Younes
f1c4a07544 Add list of numbered equations.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23013 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-15 08:09:35 +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
Dov Feldstern
8f47f5d396 visual mode for bidi cursor movement --- in math
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22930 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-10 19:57:00 +00:00
Dov Feldstern
11a6b3c4c7 visual mode for bidi cursor movement
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22929 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-10 19:52:45 +00:00
Stefan Schimanski
66d7479e86 * change the BufferView cursor to avoid later "successful" fixIfBroken calls
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22911 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-09 23:20:11 +00:00
Stefan Schimanski
c4b009a248 * fix segfaults/asserts when clicking outside of any inset when the
cursor is inside of an empty script.
* Do not use the cur parameter of notifyCursorLeaves as a pointer to
  the script inset. It is not. Even worth, it's an empty cursor if the user
  clicks in the grey nirvana of the BufferView.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22910 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-09 22:06:06 +00:00
Stefan Schimanski
d78b0692e2 * Finally fix the empty-script removal, i.e. remove empty scripts in
any case when leaving the script inset. Before there were cases (like
  when emptying both scripts and then leaving the inset) to leave the
  script inset such that empty script were kept.
* Force a paragraph redraw when removing a script. This will remove
  the space after an inset which got the scripts removed. Moreover
  this fixes some assert because the script body might not be in the
  coordinate cache after the script inset was removed.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22907 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-09 22:04:30 +00:00
Stefan Schimanski
3a5fcb9158 * clear selection when mutating a math inset into an eqnarray. This fixes #4452.
There could be some more clever code to keep the selection. But IMO it's ok like this.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22864 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-08 16:19:58 +00:00
José Matox
03fb3b0aec Patch to please gcc 4.3. Less bloat in the include headers means that
we need to include explicitly some header files now.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22846 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-07 17:04:06 +00:00
Abdelrazak Younes
d4068e14e8 The core is now clean enough that we don't need the NoGuiFontLoader/Metrics anymore...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22828 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-07 09:12:19 +00:00
Stefan Schimanski
9f58157ffd * comment correction
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22672 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-25 22:07:35 +00:00
Stefan Schimanski
de4a5e3a51 * compile fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22671 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-25 22:05:41 +00:00
Stefan Schimanski
8e212b98b4 * optional old-style editing mode for macros with a parameter list.
* combobox in the preferences dialog to choose the macro editing mode of choice.

The reason for the three choices (inline box, inline without box,
list) is that it seems that there are at least these three groups of
people, and each of them is very strong about their opinion what that
the best mode is. So here there are all of them, pick your favourite.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22670 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-25 22:02:38 +00:00
Stefan Schimanski
7ac601f429 * corrected comment
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22669 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-25 21:59:53 +00:00
Jürgen Spitzmüller
cbf599b911 ** Fix language switch issue introduced by the CJK patch **
* src/output_latex.{cpp,h}:
	- (latexParagraphs, TeXEnvironment, TeXOnePar, TeXDeeper): pass Text element 
	   instead of ParagraphList. This is necessary to detect whether we are in the main text.
	- check if we are in the main text for language switches, if needed.
* src/Buffer.cpp:
* src/insets/InsetEnvironment.cpp:
* src/insets/InsetText.cpp:
* src/mathed/InsetMathMBox.cpp:
	- adapt to new latexParagraphs definition.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22666 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-25 13:27:08 +00:00
Stefan Schimanski
06295fef40 * the markers create a 1 pixel margin
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22661 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-24 08:39:23 +00:00
Stefan Schimanski
0a701fb254 * Option to make macro editing less "noisy" by hiding the grey box with the
macro name when the cursor is inside. The downside of the coin is that
you have to look into the statusbar to see which macro is used. But
some people prefer that than having the slight size change of macros
when the cursor enters.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22650 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-22 21:23:41 +00:00
Stefan Schimanski
daeb335db3 * Support a script also around the ] of an optional parameter
Test case:
"\newcommand{\foo}[2][a]{(#1,#2)} \foo[A]^1b" should give (a,_)^1b

This is implemented for non-optional parameters for long time for
cases like \foo ab^2 


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22646 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-22 17:26:54 +00:00
Stefan Schimanski
49daeaec29 * fix for buggy cursor logic due to multi bufferview support in MathMacros. It's much simpler now, even for simple single bufferview cases.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22562 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-14 21:53:49 +00:00
Stefan Schimanski
e0538043e4 * Nearly a proof that there are useful compiler warnings that a variable is not used,
though in this case the warning was "fixed" before it did its job.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22561 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-14 21:52:57 +00:00
Uwe Stöhr
33c95fc07b rename LFUNs math-nonumber and math-number to what they really do,
fixes bug 2608

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22496 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-11 22:45:19 +00:00
Stefan Schimanski
c4d85b3f1d * fix a crash during undo: cloned MathMacroTemplates need updated child insets which point back to the correct (cloned) template.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22430 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-08 10:29:47 +00:00
Stefan Schimanski
102638a478 * fix broken default value logic from last cleanup: only show default value if not in edit mode and the given value is empty.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22413 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-07 13:50:21 +00:00
Jean-Marc Lasgouttes
c3ec9ddda0 Disable and check properly the math numbering functions.
* InsetMathHull.cpp (getStatus): disable LFUN_MATH_NUMBER and LFUN_MATH_NONUMBER
	when the equation is not in display mode; add a checkbox as needed.
	(doDispatch): no need to test for dispatch() anymore.

	* InsetMathNest.cpp (getStatus): LFUN_MATH_NUMBER and LFUN_MATH_NONUMBER are not 
	handled by this class.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22350 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-03 17:31:12 +00:00
Jean-Marc Lasgouttes
d8eaec5c03 fix compilation warnings: unused parameters
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22347 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-03 15:44:05 +00:00
Stefan Schimanski
04537d8664 * make sure the edit mode is the same in math macros and argument proxy
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22292 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-24 10:54:39 +00:00
Stefan Schimanski
6a9e5edae3 * setDimCache is superfluous in mathed
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22291 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-24 10:53:53 +00:00
Stefan Schimanski
7150b0caa3 * moved atom_dim_ to coord cache in the buffer view to make it dependent on the buffer view
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22290 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-24 10:52:58 +00:00
Enrico Forestieri
1732e5458b Try to improve maintainability by separately checking for the
gather environment.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22288 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-24 02:36:41 +00:00
Stefan Schimanski
455b42f21a * compile fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22283 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-23 16:33:15 +00:00
Stefan Schimanski
f85fccef65 * newlyxcommand support as LaTeX feature
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22281 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-23 16:32:00 +00:00
Stefan Schimanski
ec996ed828 * \newlyxcommand support
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22280 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-23 16:31:37 +00:00
Stefan Schimanski
32c8479e5a * perl -e 'while(<>) {sed s/\s+$//; print "$_\n";}' - Xcode's space/tab behaviour sucks
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22278 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-23 01:28:51 +00:00
Stefan Schimanski
e240dbd5a8 * another monster line
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22277 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-23 01:28:24 +00:00
Stefan Schimanski
b2d70163b8 * cosmetic for loops with deep if nestings
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22276 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-23 01:28:03 +00:00
Stefan Schimanski
9eed503019 * tabs are evil... hopefully I fixed all monster lines now
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22275 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-23 01:27:42 +00:00
Stefan Schimanski
83b46c7573 * tabs are evil
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22274 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-23 01:27:18 +00:00
Stefan Schimanski
926befadd8 * tabs are evil
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22273 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-23 01:27:04 +00:00
Stefan Schimanski
3308ebfbf6 * cellDim_ is not needed anymore
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22272 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-23 01:26:46 +00:00
Stefan Schimanski
dfb41a2744 * proper labels under the holes in macro templates during editing
* The labels can easily be changed. In fact the whole layout can easily be changed because it's modular. So nothing is final yet...


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22271 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-23 01:25:51 +00:00
Stefan Schimanski
e5bd44aadc * first tries to make the math macro template more verbose
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22270 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-23 01:24:34 +00:00
Stefan Schimanski
83980d504c * cosmetic
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22267 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-23 00:49:18 +00:00
Stefan Schimanski
4267ad00cd * math macro toolbar can be made automatic
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22265 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-23 00:47:37 +00:00
Stefan Schimanski
85e37b01b2 * simplify editing logic of math macros by making it purely dynamic
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22260 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-22 14:39:47 +00:00
Stefan Schimanski
9ac321f28f * kerning may depend on the BufferView because the metrics of some insets (e.g. math macros) depend on the cursor position in the view
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22259 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-22 14:39:22 +00:00
Enrico Forestieri
51a365d784 Center rows in the gather environment.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22250 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-21 23:15:54 +00:00
Stefan Schimanski
dc9081c208 * first support of multiple BufferViews for macros. There are still problems that somehow the dimension caching is mixed among them.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22245 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-21 20:44:37 +00:00
Stefan Schimanski
69d224eb65 * adapt to MacroType
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22244 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-21 20:44:20 +00:00
Stefan Schimanski
992ae20115 * add \protect in front of macro with optional arguments because they are fragile
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22243 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-21 20:43:50 +00:00
Stefan Schimanski
36dbec4506 * Lazy MathData to avoid unneeded interpretation of macro definitions
* DocIterator as MacroPosition
* Iterative search for macro in scope until a visible one is found.
This include the ability to resolve macro inside nested text insets.
* Speed up macro lookups by factor 2: only getMacro(name) call, no
further hasMacro(name) call before
* Both way child/master support
* Correct macro scope for multi-paragraph environments
* Correct macro scope for multi-depth-paragraphs
* Buffer::updateMacros made const
* Update macros when loaded (of master and child)
* Do not remove too many braces when unfolding a macro. This could
lead to a data loss because the relationship between arguments of
macros can be mixed up if nested macros are unfold at once.
* Reduce dependencies to MetricsInfo in MathMacro   
* Update macros when needed. Normally it's done just before doing
metrics. But in cases without a brace around some constructs (like
\left(bla\right)) there is some help needed.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22241 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-21 20:42:46 +00:00
Stefan Schimanski
ec81fcaddb * compile fix for trunk
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22215 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-19 23:03:26 +00:00
Stefan Schimanski
2495f278ba * at least return a valid template on parse error, but:
FIXME: The macro template does not make sense after this.
  The whole parsing should not be in a constructor which
  has no chance to report failure.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22214 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-19 22:57:22 +00:00
Abdelrazak Younes
9439b6e6e0 * get rid of support::absolutePath()
* remove FileName.h inclusion from filetools.h


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22188 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-17 16:04:46 +00:00
Abdelrazak Younes
e7bb71ff4e header cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22178 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-16 22:09:28 +00:00
Abdelrazak Younes
86506a80eb Simplify FileName::tempName().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22163 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-16 09:52:36 +00:00
Abdelrazak Younes
4020357dd2 Transfer tempName() implementation to FileName.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22161 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-16 07:52:38 +00:00
Abdelrazak Younes
7c392af6ea getting rid of superfluous lyx::support:: statements.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22106 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-12 19:57:42 +00:00
Abdelrazak Younes
9abb7db468 getting rid of superfluous std:: statements.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22104 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-12 19:28:07 +00:00
Abdelrazak Younes
b89cc942eb 'using namespace lyx::support' instead of 'using support::xxx'
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22103 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-12 18:57:56 +00:00
Abdelrazak Younes
9383f4c3c6 'using namespace std' instead of 'using std::xxx'
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22097 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-12 10:16:00 +00:00
Pavel Sanda
fceb0d93ba Add comment
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22068 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-10 19:50:12 +00:00
Jürgen Spitzmüller
61e1643821 Support for \slash and \nobreakdash-
* src/lfuns.h:
* src/Text3.cpp:
* src/insets/InsetMathNest.cpp:
* src/insets/insetCollapsable:
	- new LFUN_SPECIALCHAR_INSERT
	- nuke LFUN_HYPHENATION_POINT_INSERT, 
	  LFUN_LIGATURE_BREAK_INSERT,
	  LFUN_DOTS_INSERT,
               LFUN_END_OF_SENTENCE_PERIOD_INSERT,
	  LFUN_MENU_SEPARATOR_INSERT
	  (functions now handled as arguments of the above)

* src/insets/InsetSpecialChar.{cpp,h}:
	- implement \slash and \nobreakdash-

* src/Buffer.cpp:
	- increment format to 307.
* lib/lyx2lyx/LyX.py:
* lib/lyx2lyx/lyx_1_6.py:
	- reversion methods for SpecialChar \slash{} and
	  SpecialChar \nobreakdash-
* development/FORMAT:
	- document file format change

* lib/ui/stdmenus.inc:
* lib/ui/classic.ui:
	- add new SpecialChars to the menus, adapt lfuns to new scheme

* lib/bind/aqua.bind:
* lib/bind/cua.bind:
* lib/bind/emacs.bind:
* lib/bind/fi/menus.bind:
* lib/bind/mac.bind:
* lib/bind/menus.bind:
* lib/bind/sciword.bind:
* lib/bind/xemacs.bind:
	- add shortcuts for new SpecialChars, adapt lfuns to new scheme

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21989 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-06 11:04:56 +00:00
André Pönitz
2506e0d643 assimilate BOOST_CURRENT_FUNCTION
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21867 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-29 21:10:35 +00:00
André Pönitz
5a4a9484d1 potential compile fix for Kornel
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21861 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-29 17:57:06 +00:00
André Pönitz
9d0ea8aeff Move debug.{cpp,h}, Messages.{cpp,h} and gettext.{cpp,h} to support/.
Now support/* should have no dependencies on src/* anymore.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21851 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-29 07:04:28 +00:00
André Pönitz
150cf11651 hand-crafted LyXErr
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21849 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-28 22:12:03 +00:00
Abdelrazak Younes
f07105d0e5 * FileName:
- removeFile(): replace unlink
- copyTo(): add 'overwrite' parameter.

* getcwd.cpp: simplify.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21843 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-28 09:01:49 +00:00
André Pönitz
caf732d4c4 use strfwd.h if possible
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21833 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-27 20:51:20 +00:00
Uwe Stöhr
12f7869ac0 support for \linebreak:
- fileformat change
- tex2lyx support
- rename LFUN_BREAK_LINE to LFUN_NEW_LINE because this is what the lfun does and to avoid confusions
- new menu entry
- new shortcut C-S-Return

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21778 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-25 18:34:37 +00:00
Uwe Stöhr
97aa558cac support for \pagebreak:
- rename former "pagebreak" to "newpage" since it produces a \newpage
- new LFUN
- menu entry
- tex2lyx support
- fileformat change


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21732 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-23 02:10:00 +00:00
André Pönitz
d5fc2425a9 consolidate showDialog() incarnations
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21662 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-18 00:39:15 +00:00
André Pönitz
e1ce2f92db reduce line noise
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21631 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-15 20:04:51 +00:00
André Pönitz
f0fee538c2 more strfwd
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21618 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-14 21:57:43 +00:00
Stefan Schimanski
41ebe5e752 * added forgotton undo call for LFUN_MATH_MACRO_REMOVE_OPTIONAL_PARAM
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21614 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-14 17:59:58 +00:00
Stefan Schimanski
240e59ae0d * fixed bug #4357 when pasting a macro with script index
* fixed some other unreported bug when the cursor is not inside or near the macro during fold/unfold
 * fixed the bug that the cursor jumped into the first parameter when pasting a macro. This should only happen when the macro was entered interactively


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21611 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-14 17:33:49 +00:00
Stefan Schimanski
066de606d2 cosmetic
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21574 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-13 07:58:52 +00:00
Stefan Schimanski
963470c60e * fix crash due to a missing test whether thisSlice is -1 or a valid slice number
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21556 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-12 22:12:39 +00:00
Stefan Schimanski
d51c3cd2f8 * added comment to describe why we are in monochrome mode at this point.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21517 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-08 10:14:18 +00:00
André Pönitz
688c186614 we assume (more or less) conforming compilers nowadays.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21482 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-06 21:45:24 +00:00
André Pönitz
f6fd9f1172 compile fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21480 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-06 21:00:00 +00:00
André Pönitz
8995e86584 some consolidation
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21478 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-06 20:57:29 +00:00
André Pönitz
f09222007f cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21477 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-06 20:38:35 +00:00
Abdelrazak Younes
216775d3c7 gcc compile fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21476 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-06 19:24:05 +00:00
Abdelrazak Younes
0b0c27ef59 * BufferView: Make use of ScreenUpdateStrategy::NoScreenUpdate, avoid a screen redraw when it is not really needed.
* Painter.h: move isDrawingEnabled() to public Area.

* TextMetrics::drawParagraph(): backup and restore original drawing state of the Painter.

* InsetTabular::draw(): ditto.

* InsetMathNest::drawSelection(): ditto.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21471 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-06 14:07:49 +00:00
Abdelrazak Younes
d69115d9db Avoid unnecessary redraw.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21468 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-06 13:16:27 +00:00
Jürgen Spitzmüller
3c5ff007e0 * src/mathed/InsetMathBig.cpp:
- add missing include.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21466 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-06 09:30:33 +00:00
André Pönitz
9daf07588f #include cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21459 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-05 23:46:17 +00:00
Dov Feldstern
7bf4f48a4a Use forceLTR instead of inset codes in order to determine whether an inset
should be surrounded by external \L{} in bidi text.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21458 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-05 23:44:47 +00:00
André Pönitz
31617cf92a remove unneeded #include
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21457 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-05 23:01:18 +00:00
André Pönitz
9cca7a0c1a remove unneeded Cursor.h include;
use strfwd 


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21456 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-05 22:54:53 +00:00
Martin Vermeer
1c05c37696 Revert 4323/2 fix addRow -> appendRow part
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21451 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-05 20:54:28 +00:00
Dov Feldstern
cd95a4bae8 Getting rid of LTR bias --- part 4/4
This is the final patch (at least for now). This one deals with the idxFoo
methods in the math insets. The previous patches in the series are r21128, 
r21244 and r21448.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21449 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-05 19:44:03 +00:00
Dov Feldstern
ddd82f7aa4 Getting rid of LTR bias --- part 3/4
This is a continuation of r21128, r21244


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21448 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-05 19:41:16 +00:00
Bernhard Roider
e077f03643 more complete fix for bug 4318 and variants (see http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg130765.html)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21444 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-05 16:52:34 +00:00
Jürgen Spitzmüller
33d8394fbb * src/mathed/InsetMathGrid.cpp:
- clear selection before deleting row/column (fix bug 4323/1).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21433 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-05 10:46:39 +00:00
Martin Vermeer
70c8d87745 Fix bug 4323/2, and more logical naming of addRow
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21429 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-05 09:51:37 +00:00
Jürgen Spitzmüller
45399e1e7a * src/mathed/MathParser.cpp (getChar):
- return 0 instead of char_type(), which is unpredictable.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21426 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-05 07:55:32 +00:00
Jürgen Spitzmüller
3cafb856d7 * src/mathed/MathParser.cpp (getChar):
- empty return if the char is not good() (fix bug 4318).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21425 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-05 07:15:57 +00:00
Stefan Schimanski
cc1b8dbe2b * change the fold/unfold behaviour a bit: if we are just in front of a macro with wrong state after we went one level up, we look further left. This feels more natural in cases nullary macros appear as parameters of other macros.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21361 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-02 00:11:51 +00:00
André Pönitz
a8cd9a4b8f cosmetics. mainly replace #include "dostring.h" by #include "strfwd.h"
in header files when possible. Adjust .cpp files.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21358 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-01 22:17:22 +00:00
Stefan Schimanski
f8147509ac * 1 off error, leading to a crash with only one optional parameter
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21357 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-01 22:15:00 +00:00
Stefan Schimanski
565475a439 * replace int type by the correct custom type for pos, idx and size.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21336 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-01 15:36:27 +00:00
Stefan Schimanski
6aa5467320 * added non-greedy init mode for macros. If you enter a macro with the cursor, you don't want that it eats the insets on the right.
* split up the MathData::updateMacro method into the optional and normal parameter part


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21334 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-01 14:40:15 +00:00
Edwin Leuven
7e9ec4cdbd correct case
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21333 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-01 14:30:48 +00:00
Stefan Schimanski
95cb72f747 * removed MathMacro:: from declaration.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21332 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-01 14:06:58 +00:00
Stefan Schimanski
0e201c8c22 * cosmetic: alphabetic order
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21331 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-01 11:27:02 +00:00
Stefan Schimanski
dbbf47ab14 * LFUN handler for folding/unfolding of math macros
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21329 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-01 11:14:14 +00:00
Stefan Schimanski
1231489798 * dynamic macros as described in http://1stein.org/download/dynmacro.pdf
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21328 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-01 11:13:07 +00:00
Stefan Schimanski
1315e5f026 * non-const coercion for math braces
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21325 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-01 10:58:59 +00:00
Uwe Stöhr
e7768ff98e InsetMathDelim.cpp: remove doubled include
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21282 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-30 01:19:21 +00:00
Uwe Stöhr
256638827a InsetMathFrac: add support for \tbinom and \dbinom, fixes bug 4305
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21247 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-28 21:48:51 +00:00
Dov Feldstern
b4372a37d9 Getting rid of LTR bias --- part 2/?
This is a continuation of r21128. This round fixes the "Word" movement
functions and LFUNS.

Behavior should remain unchanged by this fix.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21244 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-28 20:35:57 +00:00
Abdelrazak Younes
5ddc612b73 Splitup Font in saner bits:
* Font::FontBits -> FontInfo
* Font::FONT_XXX -> all enums transfered to FontEnums.h and renamed to FontXxx

I've replaced Font uses with FontInfo were the language() member was not needed, basically all draw() and metrics methods. There's one problematic cases with InsetQuotes which I solved by taking the Buffer main language.




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21240 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-28 18:51:54 +00:00
Uwe Stöhr
9c20e03c76 InsetMathFrac.cpp: fix bug 4308 by using the metrics change method of the fraction inset also for the binom inset.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21235 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-28 13:15:35 +00:00
André Pönitz
ed7a07e007 put \frac style stuff into a single unit. -161477.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21208 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-25 21:53:06 +00:00
Abdelrazak Younes
eea79637c7 Move Color::color enum to ColorCode.h
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21198 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-25 12:41:02 +00:00
Dov Feldstern
662b58497e Getting rid of LTR bias --- part 1/?
This is the first patch in a series meant to remove LTR bias from the code.
Currently, there are many places in the code where "right" and "left" are used,
but where we actually mean "forward" and "backwards" --- which is the same 
thing in LTR text, but not in RTL/Bidi text.

See full details in http://permalink.gmane.org/gmane.editors.lyx.devel/97550.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21128 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-22 22:18:52 +00:00
Richard Heck
e158e07c29 InsetCommandParams() now takes an InsetCode rather than a string.
These changes are just adaptations to the new signature.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21072 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-19 17:22:55 +00:00
Abdelrazak Younes
55beda376a Refactor Undo/Redo framework into an Undo class owned by a Buffer. This reduces header dependencies from Undo.h which was including lots of stuff previously. This also solves the bug where undo/redo were reset upon buffer switching. Now, each buffer has a truly independant undo/redo architecture.
In the future, when Cursor has been fixed to work correctly with multiple views of the same Buffer, we could transfer the Undo owner from Buffer to Cursor.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21031 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-18 11:51:17 +00:00
Martin Vermeer
f997928d57 Off-by-one error addCol()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20947 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-13 15:48:22 +00:00
Abdelrazak Younes
f7b1c86393 Move Inset::Code to InsetCode.h
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20936 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-13 09:04:52 +00:00
Martin Vermeer
ea8c202a79 Sanitize behaviour of line break in simple math inset
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20915 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-11 17:12:34 +00:00
Abdelrazak Younes
9f60651fcb Metrics fix. Empty math inset doesn't have zero dimension.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20899 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-11 10:33:36 +00:00
Abdelrazak Younes
9a458ec6e9 Move private part of BufferView to a private implementation.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20896 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-11 09:59:01 +00:00
Enrico Forestieri
0b5a2f4ddb Fix bug 2330
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20782 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-06 13:42:28 +00:00
André Pönitz
98eff22b9a remove uneeded code;
move some other code to the place where it is used


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20735 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-04 17:35:27 +00:00
André Pönitz
df2318f823 move some buffere related stuff from callback.cpp tpo Buffer.cpp.
simpler code.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20694 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-03 11:00:18 +00:00
Martin Vermeer
739e3c8df3 Allow dissolution of insets inside mathed
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20692 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-03 10:24:37 +00:00
Abdelrazak Younes
b06228b35e Fix empty blue box painting in mathed.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20687 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-03 08:46:34 +00:00
André Pönitz
b847b8c7df the delegate patch
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20667 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-02 18:27:20 +00:00
Martin Vermeer
c56fa287b6 Final fix to get unit with optional arg (value) working
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20635 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-01 12:43:40 +00:00
Abdelrazak Younes
3ee38712cb Remove remnant of the past.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20632 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-01 10:50:16 +00:00
Abdelrazak Younes
628eb46ccb Assertion fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20629 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-01 10:23:56 +00:00
Abdelrazak Younes
a061ea31ea Fix some assertions.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20628 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-01 09:54:41 +00:00
Abdelrazak Younes
7e2bdf62f2 Copy&Paste fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20623 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-01 08:37:13 +00:00
Martin Vermeer
bfe44be587 Fix warning and tab problem, thx Andre
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20611 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-30 17:56:49 +00:00
André Pönitz
581b67b26e move ChangeLogs to the attic
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20587 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-29 14:12:55 +00:00
André Pönitz
5aaf4dce20 move font related stuff from bufferview_funcs to Font
delete bufferview_funcs, since it's now empty


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20579 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-29 11:00:18 +00:00
Abdelrazak Younes
fb6af9a08a Remove remnant of the past.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20481 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-25 07:41:03 +00:00
Abdelrazak Younes
f319fdbc2a Put MathData on a diet: transfer dimension cache to BufferView' CoordCache along its position.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20465 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-24 13:52:04 +00:00
Abdelrazak Younes
137158532b Put mathed on a diet: transfer dimension cache from inset to BufferView.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20457 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-23 22:39:49 +00:00
Abdelrazak Younes
388c636c07 Temporarily fix cursor positioning within mathed.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20453 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-23 16:59:47 +00:00
Abdelrazak Younes
696b5d29b5 Temporarily fix cursor positioning within mathed.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20452 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-23 16:55:15 +00:00
Abdelrazak Younes
237c132c1e * Inset:
- get rid of the cached Dimension. Text inset dimensions are saved in ParagraphMetrics and mathed maintain their own dimension where needed.
- width(), ascent(), descent(): deleted.
- dimension(): now needs a valid BufferView.
- metrics(): now void.

* BufferView::getCoveringInset(): simplify.

* ParagraphMetrics(): now cache inset dimensions.




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20420 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-21 20:39:47 +00:00
André Pönitz
82309f0c2d Remove a few includes from Text.h
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20386 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-20 20:44:08 +00:00
Richard Heck
aa01777060 Change LFUN_FONT_CODE to LFUN_FONT_TYPEWERITER, possibly in preparation for a move to character-style-based font changes, etc.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20381 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-20 18:02:39 +00:00
Martin Vermeer
6a70aac9e2 Forgot this, suppress debug output
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20338 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-18 15:06:32 +00:00
Martin Vermeer
f390780a35 Units corrections, all Georg's noticed problems
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20337 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-18 15:04:58 +00:00
Lars Gullik Bjønnes
26f336769a Remove warnings reported with gcc 4.3:
- Modifier on return type ignored
	- Ambigous else
	- Ambigous logical operators
	- Semi-colon instead of empty block
	- Missing header files
	- Missing using std::XX
	- Initialization out of order


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20304 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-16 10:36:57 +00:00
Martin Vermeer
0ea6f2c7f1 Support for units and fractional units with values
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20290 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-15 16:39:51 +00:00
Abdelrazak Younes
8d52aa5638 Give PageDown/Up scrolling a sane behaviour. Does not work with selection yet...
* BufferView:
- new scroll(), scrollDown() and scrollUp() method for pixel scrolling.
- new LFUN_SCREEN_UP/DOWN handling.
 
* TextMetrics: new helper and access methods.




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20283 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-15 12:28:41 +00:00
Martin Vermeer
967c30e354 Partial support for units
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20236 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-12 08:15:33 +00:00
Abdelrazak Younes
eed6514dd0 Move selection painting closer to row painting. Single row painting is now possible for selection.
* Row:
- setSelection(): set selection begin and end for this row.
- sel_beg, sel_end: new public members.

* BufferView::draw()
- do not trigger a full repaint for selection.
- use TextMetrics::draw() instead of hand calling TextMetrics::drawParagraph().

* InsetText::draw(): don't call TextMetrics::drawSelection().

* InsetMathMBox::drawSelection(): remove.

* TextMetrics:
- drawSelection(): simplify a bit. Now private.
- redoParagraph(): memorize Row selection status.
- x2pos(): fix crash when selecting with PageDown.
- draw(): fill-in the ParPos cache before everything else and not in drawParagraph().
- drawParagraph(): take care of row selection painting.







git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20066 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-05 13:04:05 +00:00
Abdelrazak Younes
4048448236 Transfer metrics and screen related methods from Text to TextMetrics.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19991 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-02 09:44:08 +00:00
Abdelrazak Younes
02227212b2 compil fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19950 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-31 14:26:43 +00:00
Martin Vermeer
795d4ba423 another translation disambiguation
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19945 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-31 12:07:14 +00:00
Abdelrazak Younes
2bff0157b6 Transfer Text::drawSelection() to TextMetrics.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19940 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-31 10:05:12 +00:00
Abdelrazak Younes
8a45e185dc compil fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19928 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-30 22:30:31 +00:00
André Pönitz
ed858d73e5 use bald pointers in clone()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19920 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-30 18:03:17 +00:00
Martin Vermeer
99848328b6 Fix old error string in Cases
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19908 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-30 08:21:28 +00:00
André Pönitz
39c7e2faf0 rename Layout_ptr into LayoutPtr
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19758 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 19:59:07 +00:00
Abdelrazak Younes
0fcae6cc10 * BufferView::buffer() returns a reference instead of a pointer.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19691 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-21 13:03:55 +00:00
Georg Baum
aff3772b34 fix bug 4132: parse some more column specifiers
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19662 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-20 17:30:45 +00:00
Abdelrazak Younes
8d8dbfd51c Fix bug 4117.
http://bugzilla.lyx.org/show_bug.cgi?id=4117


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19644 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-19 13:32:21 +00:00
Jean-Marc Lasgouttes
ded1c011f2 * inset/InsetTabular.cpp (doDispatch): LFUN_MOUSE_PRESS: let Text::dispatch
do the work, unless we really have a reason not to (fixes bug 4133)

	* mathed/InsetMathNest.cpp (lfunMousePress): refactor the code to use
	BufferView::mouseSetCursor.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19506 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-13 15:38:32 +00:00
André Pönitz
2caa98bee0 disable some tests for standard C++ features; add a line counting stream for lates output
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19446 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-12 08:57:17 +00:00
André Pönitz
5d80a87ceb merge {mathed,insets,graphics}/Makefile.am into src/Makefile.am
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19424 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-11 10:32:36 +00:00
André Pönitz
b99bbdb7f1 move tex2lyx and client subdir handling to the main Makefile.am, so they won't be considered when building in src only. Faster roundtrips...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19421 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-11 08:48:57 +00:00
André Pönitz
67e61a3956 enable building of shared libraries. reduces final linktime. also combine boost stuff into a single library
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19410 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-10 22:33:54 +00:00
Christian Ridderström
1050cc4471 Converted '#warning ...' into FIXME-comments
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19397 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-10 11:47:12 +00:00
Jean-Marc Lasgouttes
0234b98b10 2007-07-12 André Pönitz <poenitz@lyx.org>
* InsetMathOverset.cpp (draw): fix drawing when the first argument
	has a non-zero descent.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19060 a592a061-630c-0410-9148-cb99ea01b6c8
2007-07-12 14:25:24 +00:00
Bo Peng
252ec84acd Remove all saveSelection calls and unify theSelection().setSelection. This is the common, housekeeping part of JMarc's and my patches. Fixes of bug 3877 will come later
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19003 a592a061-630c-0410-9148-cb99ea01b6c8
2007-07-06 17:03:45 +00:00
Uwe Stöhr
7cb5868e03 fix bug 1942: http://bugzilla.lyx.org/show_bug.cgi?id=1942
- we don't require wasysym any more. Either esint or amsmath is used, depending if esint is installed

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18857 a592a061-630c-0410-9148-cb99ea01b6c8
2007-06-22 21:25:41 +00:00
Bo Peng
db4c0cfec6 Fix bug 1486: copied mathed is not previewed, from Alfredo
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18846 a592a061-630c-0410-9148-cb99ea01b6c8
2007-06-21 18:02:51 +00:00
Stefan Schimanski
370d7890a3 * Added the kerning method to a macro to inherit the kerning from the expanded form.
* Moreover the marker metrics calls are removed as they are not drawn anyway.
(fixes #3705)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18792 a592a061-630c-0410-9148-cb99ea01b6c8
2007-06-15 18:26:35 +00:00
Stefan Schimanski
d0d7d0103a * up/down jumps between macro parameters
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18774 a592a061-630c-0410-9148-cb99ea01b6c8
2007-06-14 20:57:56 +00:00
Stefan Schimanski
98fb638d61 * the old cursor is stored before dispatch and then used after moving
up/down to tell the insets that the cursor left them. The
  notifyCursorLeaves methods can set updateFlags to trigger a redraw.
* leave mathed with cursor up/down and get the math redrawn for the
  decorations



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18773 a592a061-630c-0410-9148-cb99ea01b6c8
2007-06-14 20:32:28 +00:00
Stefan Schimanski
832136c37c * Change the dim parameter correctly, even if dim_ has not changed
(fixes http://bugzilla.lyx.org/show_bug.cgi?id=3858)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18765 a592a061-630c-0410-9148-cb99ea01b6c8
2007-06-13 17:18:37 +00:00
Dov Feldstern
6742e42e79 KeyMap is now switched (if necessary) only just before it is actually used
for translating keystrokes. Up until now, the switching was done in advance
in all kinds of situations, but not just before translating was actually done
--- which resulted in the KeyMap not always being switched on time...

This solves bug #3811 (http://bugzilla.lyx.org/show_bug.cgi?id=3811)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18744 a592a061-630c-0410-9148-cb99ea01b6c8
2007-06-11 22:05:44 +00:00
Stefan Schimanski
b7ce285f8b * Only enter inset which return true on isActive(). This is the behavior in the cursor code.
Only newly created inset were entered everytime.
* Derived classes of CommandInset do not draw all cells, so return false.
  (fixes http://bugzilla.lyx.org/show_bug.cgi?id=3715)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18742 a592a061-630c-0410-9148-cb99ea01b6c8
2007-06-11 18:26:42 +00:00
Abdelrazak Younes
8f65acf693 Following revision 18723, Inset::destroyed() signal is not needed anymore.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18724 a592a061-630c-0410-9148-cb99ea01b6c8
2007-06-09 13:08:44 +00:00
Bo Peng
358e7136f2 Fix compiling errors caused by r18701 (moving drawMarkers and drawMarkers2 back to Inset)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18708 a592a061-630c-0410-9148-cb99ea01b6c8
2007-06-07 21:36:42 +00:00
Bo Peng
8153ea8fa7 Show corners of mathed with mouse hover, details see bug 3825
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18701 a592a061-630c-0410-9148-cb99ea01b6c8
2007-06-07 18:08:03 +00:00
Abdelrazak Younes
d075cb25b8 This patch transfer Inset::destroyed signal to InsetText and InsetMathNest thus freeing some memory as normal math chars and symbols won't have it.
It also solve a crash with non disconnect boost::signal and gcc-3.3 or 3.4.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18592 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-31 12:30:17 +00:00
Stefan Schimanski
880b6c4d6e 1. switch LFUN_UP/DOWN handling to a structural approach, i.e. the
dispatchers in mathed and text only do local work, i.e. only try to
move the cursor with their local knowledge, not globally as before in
the Cursor::goUpDown function before. The old approach used one of
brutefind functions as a last way out to really move the cursor up or
down. The result was some strange behavior that the nearest inset was
selected when jumping from math to text, not one in the next line. 
2. removed LFUN_FINISHED_UP/DOWN, as there seem to be no effect and it
seems to be obsolete.
3. target_x is working again, mainly by adding a textTargetOffset_
member to the Cursor which keeps the difference between the target_x
and the actual position of the cursor on screen. As long as
pos+offset=target is fulfilled the target_x is not touched and the
cursor keep the column while going up/down.
4. moved the text cursor up/down code to the Cursor class, in analogy
to the mathed code.
5. For 1 it is necessary to know the cursor position before the
dispatch. So this data is added to the Cursor.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18569 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-29 20:53:32 +00:00
Stefan Schimanski
2c1c1b07a0 * Moving up from lower index shouldn't depend on existance of upper (and other
way round), OK by Uwe and Abdel


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18567 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-29 20:41:31 +00:00
Lars Gullik Bjønnes
897436efbb Whitespace cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18550 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-28 22:27:45 +00:00
Stefan Schimanski
93baf8eb9b * do not lookup the same macro all the time
* only update the representation if anything was changed (this gives a
  huge speedup), fixes #2452
* minor cleanup of the code, especially setting up the coordinate
  cache. Without this can lead to crashes if the macros do not mention
  all the arguments. 
* And a last fix included makes sure that the metrics are always in
  sync with the drawing. Before it was possible to go into the macro
  with the cursor in a way that the metrics were for the viewing mode,
  but the drawing was done for editing.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18489 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-24 16:29:40 +00:00
Stefan Schimanski
96860ffe93 * only antialias the whole polyline or no segment at all
* Sqrt and Root draw their vertical horizontal line with a single line command to make them showup non-antialiased.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18419 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-19 10:52:47 +00:00
Bo Peng
73849af5df InsetListings: change the interface of diaplay function and allow AlignLeft. Applied to InsetListings. Fixes bug 3617, 3618
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18404 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-18 14:32:29 +00:00
Jürgen Spitzmüller
4912255342 * src/mathed/IndetMathNest.cpp (getStatus):
- disable specialchar inset (bug 3590)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18354 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-15 17:33:42 +00:00
Abdelrazak Younes
55a26d72d4 Fix cursor movement inside insets by Dov Feldstern.
* Bidi.[h,cpp]: new helper function reverseDirectionNeeded()

* Cursor::isRTL(): delete unused method



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18350 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-15 17:19:05 +00:00
Bo Peng
dfa6012292 Remove unused var in InsetMathHull.cpp
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18281 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-12 22:51:13 +00:00
Bo Peng
4d0552dd80 add color mathcorners and implement mathbg (partially)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18277 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-12 06:24:46 +00:00
Abdelrazak Younes
b9765984c0 remove unneeded header.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18267 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-11 14:19:59 +00:00
Abdelrazak Younes
bd3e07179f Remove optimization to avoid char and symbol metrics calculation. This was incompatible with the way the font zooming works in LyX.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18266 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-11 14:17:53 +00:00
Bo Peng
e44fc571cc revert wrongly committed patch
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18263 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-11 02:34:56 +00:00
Bo Peng
a8e9fe82d0 lib/lyx2lyx/lyx_1_5.py: fix revert of listings insets
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18262 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-11 02:28:14 +00:00
Abdelrazak Younes
31c9218c7e Fix cursor movement in RTL embedded math insets by Elazar Leibovich.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18241 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-09 09:42:33 +00:00
Edwin Leuven
1f9652587e * do not ignore "requires" field in MathMacro
(fixes http://bugzilla.lyx.org/show_bug.cgi?id=3520)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18199 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-04 15:30:27 +00:00
Michael Schmitt
a746aa5214 "fix" bug #3332 (plain text export depends on the menu language)
Please note that method B_ (translate text to buffer language) is presently broken (at least on Windows)!


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18143 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-01 08:26:40 +00:00
Abdelrazak Younes
2640b21228 * Inset and derivatives: insetName() -> name()
* InsetMath::name(): deleted.

* buffer_funcs.cpp:setCaptions() fix potential bug by using docstring copy instead of reference while using Inset::name.





git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18119 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-30 14:39:09 +00:00
Abdelrazak Younes
9d37c60314 Get rid of GridInsetMailer: this is completely useless and unused and consumes a lot of CPU when editing a file with a lot of macro (which is a heavy user of InsetMathGrid).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18117 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-30 12:27:12 +00:00
Abdelrazak Younes
9fa2880677 revert unrelated change in rev 18110 .
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18111 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-30 10:44:23 +00:00
Abdelrazak Younes
00e1771f94 Now that setPosCache() is in Inset, InsetMathDim is not needed anymore: ERASED!
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18110 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-30 10:31:51 +00:00
André Pönitz
e0d54dd3b4 LyXText -> Text
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18103 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-29 23:33:02 +00:00
André Pönitz
0bf9ac02a8 rename LyXLayout into Layout
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18096 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-29 18:58:28 +00:00
André Pönitz
fc6ce7cd08 rename LyXFont to Font except in tex2lyx
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18095 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-29 18:17:15 +00:00
André Pönitz
d079c908b3 rename LyXServer into Server
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18092 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-29 16:22:46 +00:00
André Pönitz
32871c1284 rename InsetBase to Inset
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18089 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-29 13:39:47 +00:00
Bo Peng
d30304cf84 Rename class RefInset to InsetMathRef
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18077 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-28 20:49:56 +00:00
Bo Peng
e36fba33ab Last (?) batch of renames:
src/frontends/Alert.h src/frontends/alert.h
src/frontends/Alert.cpp src/frontends/alert.cpp
src/frontends/Alert_pimpl.cpp src/frontends/alert_pimpl.cpp
src/frontends/qt4/Alert_pimpl.cpp src/frontends/qt4/alert_pimpl.cpp
src/frontends/controllers/ButtonPolicies.cpp src/frontends/controllers/ButtonPolicy.cpp
src/frontends/controllers/ButtonPolicies.h src/frontends/controllers/ButtonPolicy.h
src/insets/InsetEnv.cpp src/insets/InsetEnvironment.cpp
src/insets/InsetEnv.h src/insets/InsetEnvironment.h
src/mathed/MathMacroTable.h src/mathed/MacroTable.h
src/mathed/MathMacroTable.cpp src/mathed/MacroTable.cpp
src/lyx_cb.h src/callback.h
src/lyx_cb.cpp src/callback.cpp
src/UpdateFlags.h src/update_flags.h


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18076 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-28 20:44:46 +00:00
André Pönitz
8c622e4ff0 rename/merge LyXLength related stuff
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18067 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-28 12:58:49 +00:00
André Pönitz
5008ee540f rename LColor into Color
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18046 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-26 17:34:20 +00:00
André Pönitz
31059d1741 rename MathArray into MathData
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18043 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-26 16:05:57 +00:00
André Pönitz
42123ab8a7 rename LCursor->Cursor
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18040 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-26 14:56:30 +00:00
André Pönitz
39e79d8602 rename LyXLex into Lexer
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18033 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-26 11:30:54 +00:00
Bo Peng
00e305c9d9 Rename .C ==> .cpp for files in src, part one
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18018 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-26 04:41:58 +00:00
Bo Peng
176715bd56 Fix a few rename inconsistencies discovered by JMarc in insets and mathed, step 2
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17992 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-25 16:12:54 +00:00
Bo Peng
6e3a75969b Fix a few rename inconsistencies discovered by JMarc in insets and mathed, step 1
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17991 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-25 16:11:45 +00:00
Bo Peng
f497296c30 Rename files in src/mathed and src/graphics from .C to .cpp, step 2
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17969 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-25 03:03:25 +00:00
Bo Peng
fcfcc3ff6e Rename files in src/mathed and src/graphics from .C to .cpp, step 1
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17968 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-25 03:01:35 +00:00
Bo Peng
b6a2a76700 Rename insets/insetxxx to insets/InsetXxx, part 1
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17964 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-25 01:24:38 +00:00
Abdelrazak Younes
898d0f05dd fix std::endl declaration.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17917 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-23 13:12:23 +00:00
Michael Schmitt
3ac4f80ef4 * src/mathed/BUGS: remove old stuff
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17908 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-22 10:11:16 +00:00
Abdelrazak Younes
058aecf539 fix std declaration.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17901 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-22 08:41:50 +00:00
Abdelrazak Younes
24c8ca10d2 Trying to solve bug-2452, I optimized some of the most significant problems outlined in the profile report attached in there.
This commit avoids unnecessary metrics recalculations by caching the last LyXFont used. I had to cleanup the width(), ascent() and descend() redundancies by transferring that to InsetBase.

InsetMathDim should go now as it is not really needed.

* InsetBase: properly handle inset Dimension.

* InsetOld: get rid of redundant width(), ascent() and descent()

* InsetMathDim: ditto

* InsetMathChar::metrics(): avoid metrics recalculation if font is unchanged.

* InsetMathSymbol::metrics(): ditto

* InsetMathKern: use InsetBase::dim_ instead of local ones.

* InsetMathSpace:
  - use InsetBase::dim_ instead of local ones.
  - space to width transformation transferred to anonymous namespace.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17899 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-22 08:26:06 +00:00
Abdelrazak Younes
e841d41a92 Optimisation: remove the inset mailer used in the dtor because it was far from negligible in profile results with Macro (which is a heavy user of thi MathGrid class). This matrix dialog showing/hiding was not working anyway.
* InsetMathGrid::~InsetMathGrid(): deleted.




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17896 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-21 22:33:07 +00:00
Abdelrazak Younes
c9dffa27a2 * InsetMathNest::cell(): inlined because of profile.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17895 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-21 22:28:21 +00:00
Edwin Leuven
22fb43fd8f * removal of math panel
some code is moved from QMath 
  to QDelimiterDialog and QMathMatrixDialog
  for the rest pretty mechanical

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17872 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-19 21:42:42 +00:00
Abdelrazak Younes
ab13c59979 commit again the drawing fix of revision 17826. This was accidentally reverted in revision 17841.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17849 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-18 09:59:02 +00:00
Abdelrazak Younes
1d55e044d0 Fix Andre's name.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17842 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-17 16:58:59 +00:00
Abdelrazak Younes
49395dd85e Real fix for bug 1395 by Stefan Schimanski, this commit replace the one done at revision 17836 which was reverted!
Locking counter added to MacroData: it is increased before drawing/
metric calculations and decreased afterwards in InsetMathMacro. If a  
macro is already locked at that point, "Self reference: \foo" is  
drawn instead of the macro definition to avoid endless loops.  
Moreover inside of the arguments of the macro the counter is  
temporarily decreased as those cases do not cause loops. (fixes bug  
#1395)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17841 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-17 16:52:43 +00:00
Abdelrazak Younes
86c1053f51 Revert to revision 17835: I applied the wrong tree!
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17840 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-17 16:49:17 +00:00
Abdelrazak Younes
0a1d3c186a style correction.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17839 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-17 16:35:13 +00:00
Abdelrazak Younes
9450626942 Fix compilation. Use BOOST_ASSERT instead of assert()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17838 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-17 15:59:47 +00:00
Abdelrazak Younes
71e8668375 Fix bug 1395 by Stefan Schimanski:
Locking counter added to MacroData: it is increased before drawing/
metric calculations and decreased afterwards in InsetMathMacro. If a  
macro is already locked at that point, "Self reference: \foo" is  
drawn instead of the macro definition to avoid endless loops.  
Moreover inside of the arguments of the macro the counter is  
temporarily decreased as those cases do not cause loops. (fixes bug  
#1395)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17836 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-17 13:15:00 +00:00
Abdelrazak Younes
e216ceee77 Fixed bug 3449 by Stefan Schimanski:
http://bugzilla.lyx.org/show_bug.cgi?id=3449

One problem was no metric calculation was done for insets on cursor movement. Of course scrolling or entering character caused the missing metric calls, hence the described behavior in the bug report. This is fixed by re-implementing idxLast(), idxFirst() and notifyCursorLeaves().

Another problem was that 'a' and '1' were drawn at the same position because of a mis-calculation of the x-position in InsetMathMacro::draw().



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17826 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-16 14:42:53 +00:00
Abdelrazak Younes
ab2b590abe fix comment
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17795 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-13 11:49:58 +00:00
Abdelrazak Younes
008287fd3d Fix a missing metrics update when clicking within a previewed formula.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17794 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-13 11:35:11 +00:00
Enrico Forestieri
c58f3252e5 Fix remaining issues with big delimiters
* src/mathed/MathSupport.C:
	add "slash" to the decoration table.

	* src/mathed/InsetMathBig.C
	(InsetMathBig::draw): don't remove backslash delimiter.
	(InsetMathBig::isBigInsetDelim): add "\\" and "\slash" to
	the delimiters table.

	* src/frontends/qt4/QDelimiterDialog.C
	(fix_name): return "\\" instead of "\backslash" as that now
	works after the fixes above.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17771 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-11 00:27:35 +00:00
Enrico Forestieri
5dc60654bb Fix gui for slash and backslash big/variable size delimiters
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17755 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-07 02:07:15 +00:00
Georg Baum
ea1a4a886c Fix dialog interaction with InsetMathRef (leftover from changed
InsetCommandParams)

	* src/mathed/InsetMathCommand.[Ch]
	(CommandInset::createDialogStr): Move to InsetMathRef, since it is
	no longer generic.

	* src/mathed/MathFactory.C
	(createInsetMath_fromDialogStr): Use InsetCommandMailer instead of
	manual parsing. This ensures that the syntax is correct.

	* src/mathed/InsetMathRef.[Ch]
	(InsetMathRef::createDialogStr): Moved here from InsetMathCommand,
	but use InsetCommandMailer.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17738 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-06 08:30:37 +00:00
Abdelrazak Younes
4be4fe2af8 Fix bug 3408 and 3408:
http://bugzilla.lyx.org/show_bug.cgi?id=3408
http://bugzilla.lyx.org/show_bug.cgi?id=3409

The missing redraw was introduced with "Draw only decoration" optimisation in mathed. Setting the flags to Update::Force in case of Preview mode fixes the problem.

* InsetMathHull::notifyCursorLeaves(): set the cursor flags to 'Force'

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17718 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-04 16:17:24 +00:00
Georg Baum
329d50d90d Use new isAlphaASCII and isDigitASCII functions instead of isalpha and
isdigit from ctype.h, because the latter are locale dependant and do not
work with char_type.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17698 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-02 15:21:36 +00:00
André Pönitz
15b343d8f3 better fix for bug #17652
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17676 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-01 13:06:41 +00:00
André Pönitz
83b326d204 avoid evalutation of lyxerr arguments unless really needed
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17675 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-01 10:09:49 +00:00
André Pönitz
d523af4b05 fix #3130
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17652 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-30 19:28:03 +00:00
André Pönitz
69caf3bfb7 revert 17649. This code was only a temporary mean to help fixing #3396. Apart from that it is not needed to get a proper stack trace and clutters the source
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17651 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-30 17:20:27 +00:00
André Pönitz
4ab39351e2 fix 3396
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17650 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-30 17:16:26 +00:00
Abdelrazak Younes
7b5c0b55d8 avoid recursive dump() in case of math parsing problem.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17649 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-30 16:29:35 +00:00
André Pönitz
9d8421b6b3 remove a space
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17635 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-29 22:01:21 +00:00
Enrico Forestieri
33707ecc13 Small refinement to subscript placement
* src/mathed/InsetMathScript.C
	(InsetMathScript::dy01): Make sure that the subscript is placed
	not higher than when it appears alone.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17602 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-28 00:02:15 +00:00
André Pönitz
a3018e8977 This is supposed to fix #3189 basically by avoiding the error condition:
The string representation of math data stored in an undo could not be
read back. Now we store the math directly and do not convert to and from
a string.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17591 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-27 14:33:19 +00:00
Enrico Forestieri
a33f6ed840 Avoid random kerning values.
* src/mathed/MathData.C
	(MathArray::metrics): Explicitly initialize kerning_ as it may
	contain random data when the nucleus is an empty MathFont inset.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17560 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-26 00:05:28 +00:00
Enrico Forestieri
e53e4d0672 Account for kerning when positioning scripts in the MathFontOld and
MathUnknown insets.

	* src/mathed/InsetMathUnknown.C
	(InsetMathUnknown::metrics): Cache kerning of last char.

	* src/mathed/InsetMathUnknown.h
	* src/mathed/InsetMathFontOld.h
	(InsetMathUnknown::kerning): New. Return cached kerning value.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17528 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-23 18:55:50 +00:00
Enrico Forestieri
7fb8a4a595 Correctly implement rule 18a in appendix G of the TeXbook
* src/mathed/InsetMathScript.C
	(isAlphaSymbol): New. Return true if nucleus is a letter or a
	symbol whose type is mathord or mathalpha.
	(InsetMathScript::dy01): Apply rule 18a accounting for nucleus type.

	* src/mathed/MathData.C
	(MathArray::metrics): Account for the fact that some fonts (eg.
	mathcal) do not have a lower case x glyph.

	* src/mathed/InsetMathSymbol.[Ch]
	(InsetMathSymbol::isOrdAlpha): New. Return true if type of symbol
	is mathord or mathalpha.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17518 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-23 02:12:48 +00:00
Enrico Forestieri
5b2d7ec76d Account for real width of nucleus when positioning superscripts in mathed
* src/mathed/MathSupport.[Ch]
	(mathed_char_kerning): New. Compute right kerning for the given
	font and character as the difference between right bearing and
	logical width.

	* src/mathed/InsetMathScript.[Ch]
	(InsetMathScript::dx1, InsetMathScript::metrics): Account for
	nucleus right kerning.
	(InsetMathScript::nker): New. Return the nucleus right kerning
	if positive, zero otherwise.

	* src/mathed/MathData.[Ch]
	(MathArray::metrics): Cache the nucleus right kerning value.
	(MathArray::kerning): New. Return cached right kerning.

	* src/mathed/InsetMathChar.[Ch]
	(InsetMathChar::metrics): Cache the character right kerning.
	(InsetMathChar::kerning): New. Return cached right kerning.

	* src/mathed/InsetMath.h
	(InsetMath::kerning): New virtual method.

	* src/mathed/InsetMathSymbol.[Ch]
	(InsetMathSymbol::metrics): Cache the symbol right kerning.
	(InsetMathSymbol::kerning): New. Return cached right kerning.

	* src/mathed/InsetMathFont.[Ch]
	(InsetMathFont::kerning): New. Return cached right kerning.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17497 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-21 17:21:59 +00:00
Georg Baum
b0cfb6c53b Fix bug 2932 (non-UI part only)
* src/mathed/InsetMathGrid.[Ch]
	(InsetMathGrid::allow_pagebreak_): New member

	* src/mathed/InsetMathGrid.C
	(InsetMathGrid::eolString): Output \\* if allow_pagebreak_ is false

	* src/mathed/MathParser.C
	(addRow): Set allow_pagebreak_ in rowinfo if needed
	(Parser::parse1): Parse '\\*' correctly


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17484 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-19 16:08:17 +00:00
Georg Baum
1716b7323f compile fix (forgot this in rev. 17470)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17483 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-19 15:58:20 +00:00
Georg Baum
ceea696904 silence compiler warning
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17476 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-18 16:52:54 +00:00
Enrico Forestieri
54cd34f60b Fig bug 3335 (http://bugzilla.lyx.org/show_bug.cgi?id=3335)
* src/mathed/InsetMathScript.[Ch]
	(InsetMathScript::dy01): new, jointly account for both superscript
	and subscript according to the rules in Appendix G of the TeXbook.
	(InsetMathScript::dy0, InsetMathScript::dy1): set ascent and descent
	values using dy01 for non-limits super/subscripts.
	(InsetMathScript::metrics): account for the new super/subscript
	placement rules when setting ascent and descent values.

	* src/mathed/MathData.[Ch]
	(MathArray::metrics): cache parameters needed for super/subscript
	placement. When nucleus is not empty, set its ascent value to zero
	such that it is correctly computed later, otherwise ascent values
	less than that of an 'I' are not reported.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17471 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-18 15:00:57 +00:00
Georg Baum
4f1d5e72ef Fix bug 3235
* src/insets/insetcaption.C
	(InsetCaption::latex): Copy back encoding to runparams_in

	* src/insets/insetfoot.C
	(InsetFoot::latex): ditto

	* src/insets/insetnote.C
	(InsetNote::latex): ditto

	* src/exporter.C
	(Exporter::Export): Create runparams with document encoding

	* src/converter.C
	(bool Converters::convert): ditto

	* src/buffer.C
	(Buffer::writeLaTeXSource): Copy back encoding to runparams_in
	(Buffer::runChktex): Create runparams with document encoding
	(Buffer::changeRefsIfUnique): ditto

	* src/outputparams.[Ch]
	(encoding): New member

	* src/lyxfont.C
	(LyXFont::latexWriteStartChanges): Don't switch the encoding anymore.
	This is now done in Paragraph::simpleTeXOnePar.
	(LyXFont::latexWriteEndChanges): Ditto

	* src/output_latex.C
	(TeXOnePar): Ditto

	* src/paragraph.C
	(Paragraph::simpleTeXOnePar): Switch the encoding between font
	changes if needed.

	* All other files: Adjust to the changes above


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17470 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-18 10:59:16 +00:00
André Pönitz
57a68063ad revert 17429
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17436 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-13 15:20:26 +00:00
André Pönitz
8484324f75 Fix #988. Note that this introduces a new translatable message
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17429 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-13 00:48:25 +00:00
André Pönitz
d85978b58f fix #3295
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17428 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-12 23:42:35 +00:00
Georg Baum
f503258258 compile fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17364 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-26 15:36:36 +00:00
Michael Schmitt
d6c60193d6 move plaintext() implementation to MathMacroTemplate.C;
support localization


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17338 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-25 09:27:11 +00:00
Georg Baum
87289f4d20 remove unused includes
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17328 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-24 18:00:42 +00:00
Georg Baum
2de83b4598 move plaintext output of math macros where it belongs
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17327 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-24 18:00:13 +00:00
Michael Schmitt
597d0e2146 * src/mathed/InsetMath.C: plaintext(): assert that this
method is never invoked (and tell why)
	* src/mathed/InsetMathFormulaMacro.C:
	* src/mathed/InsetMathHull.C: plaintext(): fix return value
	(= number of output characters)
	* src/mathed/InsetMathFormulaMacro.h
	* src/mathed/InsetMathHull.h: WS changes
	* src/mathed/InsetMathDim.C: implement plaintext() for math macros
	and add a FIXME that this code shouldn't needed!


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17319 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-24 15:06:04 +00:00
Abdelrazak Younes
48ab3bd01e * InsetMathMBox.h:
- encapsulate within MATH_MBOX macro.
  - implement default constructor.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17309 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-23 08:27:03 +00:00
Abdelrazak Younes
36f6966af7 * InsetMathMBox: cleanup in order to avoid Buffer and BufferView dependencies.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17308 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-23 08:10:13 +00:00
Abdelrazak Younes
986786c1c1 * mathed/CMakeLists.txt: do not exclude InsetMathMBox.C
* InsetMathMBox.C: Make it compile.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17307 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-22 21:17:34 +00:00
Michael Schmitt
dc402e30fb * src/mathed/InsetMathRef.*: remove plaintext()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17287 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-20 21:04:29 +00:00
Michael Schmitt
4ab1692eec * src/mathed/InsetMath.[Ch]: implement plaintext() in a smarter way by
outputting "[math]" rather than nothing 


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17278 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-20 18:19:31 +00:00