001 /* 002 * Copyright 2002 - 2007 JEuclid, http://jeuclid.sf.net 003 * 004 * Licensed under the Apache License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.apache.org/licenses/LICENSE-2.0 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016 017 /* $Id: JEuclidNode.java,v e257bedacb55 2008/04/20 13:32:02 maxberger $ */ 018 019 package net.sourceforge.jeuclid.elements; 020 021 import net.sourceforge.jeuclid.LayoutContext; 022 023 /** 024 * Generic interface for all MathNodes, including document Element. 025 * 026 * @version $Revision: e257bedacb55 $ 027 */ 028 public interface JEuclidNode { 029 030 /** 031 * get the layout context for the given child. 032 * 033 * @param childNum 034 * 0-based number of the child to check. 035 * @param context 036 * external context. 037 * @return layout context to use. 038 */ 039 LayoutContext getChildLayoutContext(final int childNum, 040 final LayoutContext context); 041 }