Commit Graph

2047 Commits

Author SHA1 Message Date
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