lyx_mirror/src/mathed
Georg Baum 34b7650cbb Introduce wide streams. This fixes the remaining problems of plain text
export (e.g. the ToC) and the navigate menu.

	* src/insets/insetbase.h
	(InsetBase::plaintext): output to a docstream
	(InsetBase::textString): ditto

	* src/mathed/TextPainter.h
	(TextPainter::show): ditto

	* src/support/docstream.[Ch] New file and string streams for
	docstring. The file streams convert to UTF8 on the fly.

	* many more files: Adjust to the changes above


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15301 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-11 19:40:50 +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
InsetFormulaMacro.C Introduce wide streams. This fixes the remaining problems of plain text 2006-10-11 19:40:50 +00:00
InsetFormulaMacro.h Introduce wide streams. This fixes the remaining problems of plain text 2006-10-11 19:40:50 +00:00
InsetMath.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMath.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathAMSArray.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathAMSArray.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathArray.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathArray.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathBig.C This commit cleans up everything related to singleton. The other important change is that lyx::dispatch() and lyx::getStatus become _the_ official way to use LyXFunc equivalent methods. 2006-10-11 17:24:46 +00:00
InsetMathBig.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathBinom.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathBinom.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathBoldSymbol.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathBoldSymbol.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathBox.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathBox.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathBoxed.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathBoxed.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathBrace.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathBrace.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathCases.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathCases.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathChar.C This commit cleans up everything related to singleton. The other important change is that lyx::dispatch() and lyx::getStatus become _the_ official way to use LyXFunc equivalent methods. 2006-10-11 17:24:46 +00:00
InsetMathChar.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathColor.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathColor.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathCommand.C Introduce wide streams. This fixes the remaining problems of plain text 2006-10-11 19:40:50 +00:00
InsetMathCommand.h Introduce wide streams. This fixes the remaining problems of plain text 2006-10-11 19:40:50 +00:00
InsetMathComment.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathComment.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathDecoration.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathDecoration.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathDelim.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathDelim.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathDFrac.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathDFrac.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathDiff.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathDiff.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathDim.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathDim.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathDots.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathDots.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathEnv.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathEnv.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathExFunc.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathExFunc.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathExInt.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathExInt.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathFBox.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathFBox.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathFont.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathFont.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathFontOld.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathFontOld.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathFrac.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathFrac.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathFracBase.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathFracBase.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathFrameBox.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathFrameBox.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathGrid.C Introduce wide streams. This fixes the remaining problems of plain text 2006-10-11 19:40:50 +00:00
InsetMathGrid.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathHull.C Introduce wide streams. This fixes the remaining problems of plain text 2006-10-11 19:40:50 +00:00
InsetMathHull.h Introduce wide streams. This fixes the remaining problems of plain text 2006-10-11 19:40:50 +00:00
InsetMathKern.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathKern.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathLefteqn.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathLefteqn.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathLim.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathLim.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathMacro.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathMacro.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathMakebox.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathMakebox.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathMatrix.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathMatrix.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathMBox.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathMBox.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathNest.C Introduce wide streams. This fixes the remaining problems of plain text 2006-10-11 19:40:50 +00:00
InsetMathNest.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathNumber.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathNumber.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathOverset.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathOverset.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathPar.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathPar.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathPhantom.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathPhantom.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathRef.C Introduce wide streams. This fixes the remaining problems of plain text 2006-10-11 19:40:50 +00:00
InsetMathRef.h Introduce wide streams. This fixes the remaining problems of plain text 2006-10-11 19:40:50 +00:00
InsetMathRoot.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathRoot.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathScript.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathScript.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathSize.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathSize.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathSpace.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathSpace.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathSplit.C Support lgathered and rgathered math environments 2006-10-03 19:45:43 +00:00
InsetMathSplit.h Parse optional arguments of aligned, gathered and alignedat 2006-10-02 20:01:30 +00:00
InsetMathSqrt.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathSqrt.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathStackrel.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathStackrel.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathString.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathString.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathSubstack.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathSubstack.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathSymbol.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathSymbol.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathTabular.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathTabular.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathTFrac.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathTFrac.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathUnderset.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathUnderset.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathUnknown.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathUnknown.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathXArrow.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathXArrow.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathXYArrow.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathXYArrow.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathXYMatrix.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
InsetMathXYMatrix.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
Makefile.am rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
MathAtom.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
MathAtom.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
MathAutoCorrect.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
MathAutoCorrect.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
MathData.C delete unneeded BufferView.h declaration. 2006-09-26 21:11:22 +00:00
MathData.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
MathExtern.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
MathExtern.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
MathFactory.C This commit cleans up everything related to singleton. The other important change is that lyx::dispatch() and lyx::getStatus become _the_ official way to use LyXFunc equivalent methods. 2006-10-11 17:24:46 +00:00
MathFactory.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
MathGridInfo.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
MathMacroArgument.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
MathMacroArgument.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
MathMacroTable.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
MathMacroTable.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
MathMacroTemplate.C This commit cleans up everything related to singleton. The other important change is that lyx::dispatch() and lyx::getStatus become _the_ official way to use LyXFunc equivalent methods. 2006-10-11 17:24:46 +00:00
MathMacroTemplate.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
MathMLStream.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
MathMLStream.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
MathParser.C Support lgathered and rgathered math environments 2006-10-03 19:45:43 +00:00
MathParser.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
MathReplace.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
MathStream.C rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
MathStream.h rename mathed/math_xinset into mathed/InsetMathX 2006-09-17 09:14:18 +00:00
MathSupport.C This commit cleans up everything related to singleton. The other important change is that lyx::dispatch() and lyx::getStatus become _the_ official way to use LyXFunc equivalent methods. 2006-10-11 17:24:46 +00:00
MathSupport.h This commit is a big rework of the FontLoader/FontMetrics interaction. Only Qt4 for now, I would be grateful is somebody steps up for qt3 and gtk. 2006-10-07 16:15: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
texify
TextPainter.C Introduce wide streams. This fixes the remaining problems of plain text 2006-10-11 19:40:50 +00:00
TextPainter.h Introduce wide streams. This fixes the remaining problems of plain text 2006-10-11 19:40:50 +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/...)