/******************************************************************************* * Copyright (c) 2000, 2008 IBM Corporation and others. All rights reserved. * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html * * Contributors: IBM Corporation - initial API and implementation Chisel Group, * University of Victoria ******************************************************************************/ package org.eclipse.zest.core.viewers; /* * A content provider for nested graphs. Any entity based content provider * (IGraphEntityContentProvider or IGraphEntityRelationshipContentProvider) can * also implement this interface. Any node that "hasChildren" will be rendered * as a container. * * Note: Containers cannot contain other containers. * * @author irbull */ public interface INestedContentProvider { /** * Does the current node have children? If so, it will be rendered as a * container. * * @param element The current node * @return True if it has children, false otherwise */ public boolean hasChildren(Object element); /** * Gets the children of this node. This method will not be called * if hasChildren returns false. * * @param element The current node * @return The list of children for this node. */ public Object[] getChildren(Object element); }