lyx_mirror/src/mathed
Georg Baum 2bbe7e5b89 Make MathBigInset working
* src/cursor.C
        (LCursor::plainInsert): combine the previous math atom with the new
        one to a MathBigInset if possible

        * src/mathed/math_biginset.[Ch]
        (MathBigInset::name): implement
        (MathBigInset::isBigInsetDelim): new, test whether a given token is
        a valid MathBigInset delimiter

        * src/mathed/math_biginset.C
        (MathBigInset::size): handle Big, Bigg and Biggg
        (MathBigInset::increase): ditto
        (MathBigInset::draw): fix deco drawing
        (MathBigInset::write): append space if necessary

        * src/mathed/math_factory.C
        (createMathInset): handle l->inset == "big"

        * src/mathed/math_parser.C
        (Token::asInput): return a token as input, stolen from tex2lyx
        (void Parser::parse1): Create a MathBigInset when needed

	* src/mathed/math_support.C:
	(deco_table): add lbrace and rbrace

        * src/mathed/math_nestinset.C
        (MathNestInset::interpret): combine the previous math atom with the
        new character to a MathBigInset if possible

        * src/ParagraphParameters.C
        (findToken): move from here

        * src/support/lstrings.[Ch]
        (findToken): to here

        * lib/symbols: add MathBigInset symbols


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13700 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-20 09:55:45 +00:00
..
BUGS Get rid of trailing whitespace 'noise' in future patches for the 2003-09-09 18:27:24 +00:00
ChangeLog fix bug 2234 2006-03-16 15:05:47 +00:00
command_inset.C fix some syntax errors 2006-01-01 20:28:05 +00:00
command_inset.h fix bug 2126 (references in math) 2005-11-22 13:52:25 +00:00
formulamacro.C Remove space at end of line, when superfluous. 2004-08-16 11:27:51 +00:00
formulamacro.h cosmetics 2004-04-01 10:21:29 +00:00
Makefile.am Implement \phantom, \hphantom and \vphantom in math (bug 1473): 2006-04-15 09:54:24 +00:00
math_amsarrayinset.C fix bug 2036: 2006-04-11 13:57:05 +00:00
math_amsarrayinset.h Martins and my getStatus and infoize fixes 2005-04-03 12:07:49 +00:00
math_arrayinset.C Whitespace, only whitespace. 2005-04-26 11:12:20 +00:00
math_arrayinset.h require amsmath when needed 2005-03-30 09:05:30 +00:00
math_atom.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_atom.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_autocorrect.C * filetools.[Ch]: Make functions that start with a capital 2006-04-08 22:31:11 +00:00
math_autocorrect.h Standardise the header blurb in mathed. 2003-08-19 13:00:56 +00:00
math_biginset.C Make MathBigInset working 2006-04-20 09:55:45 +00:00
math_biginset.h Make MathBigInset working 2006-04-20 09:55:45 +00:00
math_binominset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_binominset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_boldsymbolinset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_boldsymbolinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_boxedinset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_boxedinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_boxinset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_boxinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_braceinset.C cosmetics, incidently fixing bug 1458 2005-07-17 10:31:44 +00:00
math_braceinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_casesinset.C Fix corner markers in amsarray, cases 2005-04-04 07:13:37 +00:00
math_casesinset.h Better conditioning of drawing vertical grid lines 2005-03-24 16:26:15 +00:00
math_charinset.C small cosmetic fix and removing some debug output 2005-07-15 08:51:34 +00:00
math_charinset.h fix #1729 2005-07-14 22:41:59 +00:00
math_colorinset.C fix math color inset UI and parsing 2005-06-17 14:35:19 +00:00
math_colorinset.h fix math color inset UI and parsing 2005-06-17 14:35:19 +00:00
math_commentinset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_commentinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_data.C Whitespace cleanup. 2006-04-05 23:56:29 +00:00
math_data.h remove per-inset position cahce, use new external map instead. 2004-08-14 14:03:42 +00:00
math_decorationinset.C Final touches, corner markers & clickability in math 2005-04-04 22:11:53 +00:00
math_decorationinset.h correct a wrong nod 2005-01-08 20:28:29 +00:00
math_deliminset.C Spelling 2005-04-10 14:08:54 +00:00
math_deliminset.h Fix bug 2117: matrix inside delimiters or sub/superscript 2005-11-28 10:23:19 +00:00
math_dfracinset.C The nicefrac patch 2006-04-06 09:46:01 +00:00
math_dfracinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_diffinset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_diffinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_diminset.C Asger's commentary, const-correct and bug-squashing little beauty. 2005-01-31 16:29:48 +00:00
math_diminset.h remove per-inset position cahce, use new external map instead. 2004-08-14 14:03:42 +00:00
math_dotsinset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_dotsinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_envinset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_envinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_exfuncinset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_exfuncinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_exintinset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_exintinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_extern.C * filetools.[Ch]: Make functions that start with a capital 2006-04-08 22:31:11 +00:00
math_extern.h The std::string mammoth path. 2003-10-06 15:43:21 +00:00
math_factory.C Make MathBigInset working 2006-04-20 09:55:45 +00:00
math_factory.h several small fixes for mathed 2004-04-06 19:25:39 +00:00
math_fboxinset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_fboxinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_fontinset.C * src/LaTeXFeatures.C 2006-04-14 14:30:43 +00:00
math_fontinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_fontoldinset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_fontoldinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_fracbase.C more IU 2004-01-26 10:13:15 +00:00
math_fracbase.h more IU 2004-01-26 10:13:15 +00:00
math_fracinset.C The nicefrac patch 2006-04-06 09:46:01 +00:00
math_fracinset.h The nicefrac patch 2006-04-06 09:46:01 +00:00
math_frameboxinset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_frameboxinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_gridinfo.h Asger's exchanging of the class and struct keywords. 2005-01-19 15:03:31 +00:00
math_gridinset.C Whitespace cleanup. 2006-04-05 23:56:29 +00:00
math_gridinset.h Whitespace cleanup. 2006-04-05 23:56:29 +00:00
math_hullinset.C Whitespace cleanup. 2006-04-05 23:56:29 +00:00
math_hullinset.h Changes to the within-inset row rendering caching code. 2006-03-17 19:45:28 +00:00
math_inset.C fix typo 2005-07-15 10:12:29 +00:00
math_inset.h Make us satisfy concept checks 2004-11-16 20:41:38 +00:00
math_kerninset.C Fix bug 2074: kern width wrong 2005-11-02 12:57:47 +00:00
math_kerninset.h Whitespace cleanup. 2006-04-05 23:56:29 +00:00
math_lefteqninset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_lefteqninset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_liminset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_liminset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_macro.C bug 2060: Clicking on a macro in a math inset crashes LyX 2006-02-14 10:41:34 +00:00
math_macro.h fix bug 2060 2005-10-05 21:19:32 +00:00
math_macroarg.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_macroarg.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_macrotable.C change "support/std_sstream.h" to <sstream> 2004-07-24 10:55:30 +00:00
math_macrotable.h Whitespace, only whitespace... 2004-04-20 08:51:15 +00:00
math_macrotemplate.C fix reading of math macros when they occur before any formula 2006-01-24 11:04:30 +00:00
math_macrotemplate.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_makeboxinset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_makeboxinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_mathmlstream.C the Paragraph::inInset() changes 2004-04-08 15:03:33 +00:00
math_mathmlstream.h Asger's exchanging of the class and struct keywords. 2005-01-19 15:03:31 +00:00
math_matrixinset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_matrixinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_mboxinset.C Whitespace cleanup. 2006-04-05 23:56:29 +00:00
math_mboxinset.h make boundary property an iterator property instead of a CursorSlice property 2005-07-15 15:49:40 +00:00
math_nestinset.C Make MathBigInset working 2006-04-20 09:55:45 +00:00
math_nestinset.h Whitespace cleanup. 2006-04-05 23:56:29 +00:00
math_numberinset.C cosmetics, incidently fixing bug 1458 2005-07-17 10:31:44 +00:00
math_numberinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_oversetinset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_oversetinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_parinset.C implement missing doClone methods 2005-02-23 12:01:50 +00:00
math_parinset.h implement missing doClone methods 2005-02-23 12:01:50 +00:00
math_parser.C Make MathBigInset working 2006-04-20 09:55:45 +00:00
math_parser.h fix bug 1665 2005-06-07 17:21:51 +00:00
math_phantominset.C Implement \phantom, \hphantom and \vphantom in math (bug 1473): 2006-04-15 09:54:24 +00:00
math_phantominset.h Implement \phantom, \hphantom and \vphantom in math (bug 1473): 2006-04-15 09:54:24 +00:00
math_replace.h Asger's exchanging of the class and struct keywords. 2005-01-19 15:03:31 +00:00
math_rootinset.C Squash MSVC warning about comparison of DocIterator::idx_type and bool. 2005-02-14 15:28:45 +00:00
math_rootinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_scriptinset.C Fix to bug 2362: Deleting superscript also deletes subscript. 2006-03-11 16:34:52 +00:00
math_scriptinset.h Fix bug 2117: matrix inside delimiters or sub/superscript 2005-11-28 10:23:19 +00:00
math_sizeinset.C the convert patch 2005-01-27 21:05:44 +00:00
math_sizeinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_spaceinset.C Squash some MSVC warnings. 2005-01-20 19:30:14 +00:00
math_spaceinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_splitinset.C * math_xarrowinset.C (validate): 2006-04-13 10:31:32 +00:00
math_splitinset.h * math_xarrowinset.C (validate): 2006-04-13 10:31:32 +00:00
math_sqrtinset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_sqrtinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_stackrelinset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_stackrelinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_streamstr.C The std::string mammoth path. 2003-10-06 15:43:21 +00:00
math_streamstr.h The std::string mammoth path. 2003-10-06 15:43:21 +00:00
math_stringinset.C cosmetics, incidently fixing bug 1458 2005-07-17 10:31:44 +00:00
math_stringinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_substackinset.C Martins and my getStatus and infoize fixes 2005-04-03 12:07:49 +00:00
math_substackinset.h Martins and my getStatus and infoize fixes 2005-04-03 12:07:49 +00:00
math_support.C Make MathBigInset working 2006-04-20 09:55:45 +00:00
math_support.h cosmetics, incidently fixing bug 1458 2005-07-17 10:31:44 +00:00
math_symbolinset.C cosmetics, incidently fixing bug 1458 2005-07-17 10:31:44 +00:00
math_symbolinset.h Asger's exchanging of the class and struct keywords. 2005-01-19 15:03:31 +00:00
math_tabularinset.C Final touches, corner markers & clickability in math 2005-04-04 22:11:53 +00:00
math_tabularinset.h Martins and my getStatus and infoize fixes 2005-04-03 12:07:49 +00:00
math_tfracinset.C The nicefrac patch 2006-04-06 09:46:01 +00:00
math_tfracinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_undersetinset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_undersetinset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_unknowninset.C clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_unknowninset.h clone NVI, other small stuff 2004-11-23 23:04:52 +00:00
math_xarrowinset.C * math_xarrowinset.C (validate): 2006-04-13 10:31:32 +00:00
math_xarrowinset.h * math_xarrowinset.C (validate): 2006-04-13 10:31:32 +00:00
math_xyarrowinset.C cosmetics, incidently fixing bug 1458 2005-07-17 10:31:44 +00:00
math_xyarrowinset.h Ensure header files can be compiled stand-alone. 2003-09-05 14:09:58 +00:00
math_xymatrixinset.C readd xymatrix inset (bug 2238) 2006-02-22 12:26:06 +00:00
math_xymatrixinset.h readd xymatrix inset (bug 2238) 2006-02-22 12:26:06 +00:00
pch.h some support for pch 2004-08-15 21:45:30 +00:00
README Whitespace, only whitespace... 2004-04-20 08:51:15 +00:00
ref_inset.C Whitespace cleanup. 2006-04-05 23:56:29 +00:00
ref_inset.h fix bug 2126 (references in math) 2005-11-22 13:52:25 +00:00
texify fix cursor font bug 2001-08-28 13:34:04 +00:00
textpainter.C Replace LString.h with support/std_string.h, 2003-09-05 17:23:11 +00:00
textpainter.h Standardise the header blurb in mathed. 2003-08-19 13:00:56 +00:00

Inset 'Xyz' is implemented by 'MathXyzInset' in 'math_xyzinset.[hC]'


Inset hierarchy:

                                   MathInset
                                (abstract base)

                         /            |               \

              Dim                  Char               Symbol, Space, ...
         (thing that need       (for things formerly
          the width_/ascent_     known as characters)
          /descent_ cache)

          /             \

       Nest              Dots,  Func, ...
  (for thing with
   nested content)

        |         \

      Grid        Decoration   Delim   Frac  Macro  Root  Script  Sqrt

      /   \

 Array    Hull
         (base for eqnarray/align/...)