Java JTree setComponentTreeEnabled(Component c, boolean enabled)

Here you can find the source of setComponentTreeEnabled(Component c, boolean enabled)

Description

Enables or disables of the components in the tree starting with c .

License

Open Source License

Parameter

Parameter Description
c the starting component
enabled true if the component is to enabled; false otherwise

Declaration

public static void setComponentTreeEnabled(Component c, boolean enabled) 

Method Source Code

//package com.java2s;
/*/*from w w  w.j  a v  a 2  s  . c o m*/
 * #%L
 * The AIBench Plugin Manager Plugin
 * %%
 * Copyright (C) 2006 - 2016 Daniel Glez-Pe?a and Florentino Fdez-Riverola
 * %%
 * This program 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, either version 3 of the
 * License, or (at your option) any later version.
 * 
 * This program 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 General Lesser Public License for more details.
 * 
 * You should have received a copy of the GNU General Lesser Public
 * License along with this program.  If not, see
 * <http://www.gnu.org/licenses/lgpl-3.0.html>.
 * #L%
 */

import java.awt.Component;
import java.awt.Container;

import javax.swing.MenuElement;

public class Main {
    /**
     * Enables or disables of the components in the tree starting with {@code c}.
     * 
     * @param c
     *                the starting component
     * @param enabled
     *                {@code true} if the component is to enabled; {@code false} otherwise
     */
    public static void setComponentTreeEnabled(Component c, boolean enabled) {
        c.setEnabled(enabled);

        Component[] children = getChildren(c);

        if (children != null) {
            for (int i = 0; i < children.length; i++) {
                setComponentTreeEnabled(children[i], enabled);
            }
        }
    }

    private static Component[] getChildren(Component c) {
        Component[] children = null;

        if (c instanceof MenuElement) {
            MenuElement[] elements = ((MenuElement) c).getSubElements();
            children = new Component[elements.length];

            for (int i = 0; i < elements.length; i++) {
                children[i] = elements[i].getComponent();
            }
        } else if (c instanceof Container) {
            children = ((Container) c).getComponents();
        }

        return children;
    }
}

Related

  1. saveExpansionState(JTree tree)
  2. saveExpansionStateStrings(JTree tree)
  3. saveTreeSelection(JTree tree)
  4. scrollToSelection(JTree tree)
  5. scrollTreeToSelectedRow(final JTree tree)
  6. setLeftChildIndent(JTree tree, int indent)
  7. setToolTipOnTree(Container c, String tooltip)
  8. setTreeEnabled(Container container, boolean enabled)
  9. treeListen(final ActionListener listener)