コード例 #1
0
        object MathML.MathMLVisitor.Visit(MathMLFractionElement e, object args)
        {
            switch (selection)
            {
            case SelectionType.Prev:
            {
                if (args == e.Denominator && e.Numerator != null)
                {
                    selection = SelectionType.End;
                    return(e.Numerator.Accept(this, null));
                }
                else
                {
                    MathMLElement p = e.ParentNode as MathMLElement;
                    return(p != null?p.Accept(this, e) : null);
                }
            }

            case SelectionType.Next:
            {
                if (args == e)
                {
                    index     = 0;
                    selection = SelectionType.Start;
                    return(e.Numerator != null?e.Numerator.Accept(this, e) : null);
                }
                else if (args == e.Numerator && e.Denominator != null)
                {
                    selection = SelectionType.Start;
                    return(e.Denominator.Accept(this, null));
                }
                else
                {
                    MathMLElement p = e.ParentNode as MathMLElement;
                    return(p != null?p.Accept(this, e) : null);
                }
            }

            case SelectionType.End:
            {
                return(e.Denominator != null?e.Denominator.Accept(this, null) : null);
            }

            case SelectionType.Start:
            {
                return(e);
            }

            default:
            {
                return(null);
            }
            }
        }
コード例 #2
0
ファイル: MathMLMeasurer.cs プロジェクト: Altaxo/Altaxo
		object MathML.MathMLVisitor.Visit(MathMLFractionElement e, object args)
		{
			return ((Area)formatter.Visit(e, args)).BoundingBox;
		}
コード例 #3
0
 object MathML.MathMLVisitor.Visit(MathMLFractionElement e, object args)
 {
     return(((Area)formatter.Visit(e, args)).BoundingBox);
 }