/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package usda.weru.util;

import javax.swing.tree.MutableTreeNode;

/**
 *
 * @author Joseph Levin <joelevin@weru.ksu.edu>
 */
public interface LazyLoadingTreeNode extends MutableTreeNode{

    /**
     * Called on a background thread.
     * Use {@link SwingUtilities#invokeLater(Runnable)} for gui interactions.
     * @return created nodes
     */
    public MutableTreeNode[] loadChildren();

	/**
	 *
	 * @return
	 */
	public boolean getChildrenLoaded();

	/**
	 *
	 * @param allow
	 */
	public void setAllowsChildren(boolean allow);

}
