/* * Geotoolkit.org - An Open Source Java GIS Toolkit * http://www.geotoolkit.org * * (C) 2001-2012, Open Source Geospatial Foundation (OSGeo) * (C) 2009-2012, Geomatys * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; * version 2.1 of the License. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. */ /** * Workaround for the missing {@code javax.swing.tree.TreeNode.getUserObject()} * method. Sun seems to have forgotten this method in the first <cite>Swing</cite> * draft. Unfortunately, since {@link javax.swing.tree.TreeNode} is an interface, * Sun can't fix it without breaking compatibility. We have to fix it ourselves, * which is the main purpose of this package. * <p> * This package provides also a few additional functionalities listed below. Those methods * work on Swing tree models. Despite the fact that they are defined in a <cite>Swing</cite> * package, the tree model can be used as a generic model for arbitrary applications * (not limited to <cite>Swing</cite> widgets). * <p> * <ul> * <li>A set of static methods in the {@link org.geotoolkit.gui.swing.tree.Trees} class.</li> * <li>A {@link org.geotoolkit.gui.swing.tree.TreeTableNode} interface used as a bridge * toward <cite>Swingx</cite> {@link org.jdesktop.swingx.JXTreeTable}.</li> * <li>A {@link org.geotoolkit.gui.swing.tree.TreeNodeFilter} interface for copying a portion * of a tree.</li> * <li>Implementation of {@link org.geotoolkit.gui.swing.tree.DefaultMutableTreeNode#toString()} can * format {@link org.opengis.util.InternationalString} according a {@link java.util.Locale}.</li> * </ul> * * @author Martin Desruisseaux (IRD, Geomatys) * @version 3.17 * * @since 2.0 * @module */ package org.geotoolkit.gui.swing.tree;