Package org.apache.myfaces.custom.tree.taglib

Source Code of org.apache.myfaces.custom.tree.taglib.TreeTag

/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements.  See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership.  The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License.  You may obtain a copy of the License at
*
*   http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied.  See the License for the
* specific language governing permissions and limitations
* under the License.
*/
package org.apache.myfaces.custom.tree.taglib;

import org.apache.myfaces.custom.tree.model.DefaultTreeModel;
import org.apache.myfaces.custom.tree.model.TreeModel;
import org.apache.myfaces.custom.tree.model.TreePath;
import org.apache.myfaces.custom.tree.HtmlTree;
import org.apache.myfaces.shared_tomahawk.taglib.UIComponentTagBase;

import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.el.ValueBinding;
import javax.servlet.jsp.JspException;

/**
* <p>
* HtmlTree tag.
* </p>
*
* @author <a href="mailto:oliver@rossmueller.com">Oliver Rossmueller </a>
* @version $Revision: 472638 $ $Date: 2004/10/13 11:50:58
*/
public class TreeTag extends UIComponentTagBase {

    private String value;

    private String var;

    private String iconLine;

    private String iconNoline;

    private String iconChildFirst;

    private String iconChildMiddle;

    private String iconChildLast;

    private String iconNodeOpen;

    private String iconNodeOpenFirst;

    private String iconNodeOpenMiddle;

    private String iconNodeOpenLast;

    private String iconNodeClose;

    private String iconNodeCloseFirst;

    private String iconNodeCloseMiddle;

    private String iconNodeCloseLast;

    private String styleClass;

    private String rowClasses;

    private String columnClasses;

    private String headerClass;

    private String footerClass;

    private String nodeClass;

    private String selectedNodeClass;

    private String iconClass;

    private boolean expandRoot;

    private String expireListeners;

    public String getComponentType() {
        return "org.apache.myfaces.HtmlTree";
    }

    public String getRendererType() {
        return "org.apache.myfaces.HtmlTree";
    }

    public String getValue() {
        return value;
    }

    public void setValue(String newValue) {
        value = newValue;
    }

    /**
     * @return Returns the var.
     */
    public String getVar() {
        return var;
    }

    /**
     * @param var
     *            The var to set.
     */
    public void setVar(String var) {
        this.var = var;
    }

    public String getIconLine() {
        return iconLine;
    }

    public void setIconLine(String iconLine) {
        this.iconLine = iconLine;
    }

    public String getIconNoline() {
        return iconNoline;
    }

    public void setIconNoline(String iconNoline) {
        this.iconNoline = iconNoline;
    }

    /**
     * @return Returns the rowClasses.
     */
    public String getRowClasses() {
        return rowClasses;
    }

    /**
     * @param rowClasses
     *            The rowClasses to set.
     */
    public void setRowClasses(String rowClasses) {
        this.rowClasses = rowClasses;
    }

    /**
     * @return Returns the columnClasses.
     */
    public String getColumnClasses() {
        return columnClasses;
    }

    /**
     * @param columnClasses
     *            The columnClasses to set.
     */
    public void setColumnClasses(String columnClasses) {
        this.columnClasses = columnClasses;
    }

    public String getIconChildFirst() {
        return iconChildFirst;
    }

    public void setIconChildFirst(String iconChildFirst) {
        this.iconChildFirst = iconChildFirst;
    }

    public String getIconChildMiddle() {
        return iconChildMiddle;
    }

    public void setIconChildMiddle(String iconChildMiddle) {
        this.iconChildMiddle = iconChildMiddle;
    }

    public String getIconChildLast() {
        return iconChildLast;
    }

    public void setIconChildLast(String iconChildLast) {
        this.iconChildLast = iconChildLast;
    }

    public String getIconNodeOpen() {
        return iconNodeOpen;
    }

    public void setIconNodeOpen(String iconNodeOpen) {
        this.iconNodeOpen = iconNodeOpen;
    }

    public String getIconNodeOpenFirst() {
        return iconNodeOpenFirst;
    }

    public void setIconNodeOpenFirst(String iconNodeOpenFirst) {
        this.iconNodeOpenFirst = iconNodeOpenFirst;
    }

    public String getIconNodeOpenMiddle() {
        return iconNodeOpenMiddle;
    }

    public void setIconNodeOpenMiddle(String iconNodeOpenMiddle) {
        this.iconNodeOpenMiddle = iconNodeOpenMiddle;
    }

    public String getIconNodeOpenLast() {
        return iconNodeOpenLast;
    }

    public void setIconNodeOpenLast(String iconNodeOpenLast) {
        this.iconNodeOpenLast = iconNodeOpenLast;
    }

    public String getIconNodeClose() {
        return iconNodeClose;
    }

    public void setIconNodeClose(String iconNodeClose) {
        this.iconNodeClose = iconNodeClose;
    }

    public String getIconNodeCloseFirst() {
        return iconNodeCloseFirst;
    }

    public void setIconNodeCloseFirst(String iconNodeCloseFirst) {
        this.iconNodeCloseFirst = iconNodeCloseFirst;
    }

    public String getIconNodeCloseMiddle() {
        return iconNodeCloseMiddle;
    }

    public void setIconNodeCloseMiddle(String iconNodeCloseMiddle) {
        this.iconNodeCloseMiddle = iconNodeCloseMiddle;
    }

    public String getIconNodeCloseLast() {
        return iconNodeCloseLast;
    }

    public void setIconNodeCloseLast(String iconNodeCloseLast) {
        this.iconNodeCloseLast = iconNodeCloseLast;
    }

    public String getStyleClass() {
        return styleClass;
    }

    public void setStyleClass(String styleClass) {
        this.styleClass = styleClass;
    }

    public String getNodeClass() {
        return nodeClass;
    }

    public void setNodeClass(String nodeClass) {
        this.nodeClass = nodeClass;
    }

    public String getSelectedNodeClass() {
        return selectedNodeClass;
    }

    public void setSelectedNodeClass(String selectedNodeClass) {
        this.selectedNodeClass = selectedNodeClass;
    }

    public String getIconClass() {
        return iconClass;
    }

    public void setIconClass(String iconClass) {
        this.iconClass = iconClass;
    }

    /**
     * @return Returns the footerClass.
     */
    public String getFooterClass() {
        return footerClass;
    }

    /**
     * @param footerClass
     *            The footerClass to set.
     */
    public void setFooterClass(String footerClass) {
        this.footerClass = footerClass;
    }

    /**
     * @return Returns the headerClass.
     */
    public String getHeaderClass() {
        return headerClass;
    }

    /**
     * @param headerClass
     *            The headerClass to set.
     */
    public void setHeaderClass(String headerClass) {
        this.headerClass = headerClass;
    }

    public boolean isExpandRoot() {
        return expandRoot;
    }

    public void setExpandRoot(boolean expandRoot) {
        this.expandRoot = expandRoot;
    }

    public String getExpireListeners() {
        return expireListeners;
    }

    public void setExpireListeners(String expireListeners) {
        this.expireListeners = expireListeners;
    }

    /**
     * Obtain tree model or create a default model.
     */
    public int doStartTag() throws JspException {
        FacesContext context = FacesContext.getCurrentInstance();

        if (value != null) {
            ValueBinding valueBinding = context.getApplication()
                    .createValueBinding(value);
            TreeModel treeModel = (TreeModel) (valueBinding.getValue(context));

            if (treeModel == null) {
                // create default model
                treeModel = new DefaultTreeModel();
                valueBinding.setValue(context, treeModel);
            }
        }
        int answer = super.doStartTag();
        HtmlTree tree = (HtmlTree) getComponentInstance();

        if (getCreated() && expandRoot) {
            // component was created, so expand the root node
            TreeModel model = tree.getModel(context);

            if (model != null) {
                tree.expandPath(new TreePath(new Object[] { model.getRoot() }),
                        context);
            }
        }

        tree.addToModelListeners();
        return answer;
    }

    public void release() {
        super.release();
        value = null;
        var = null;
        iconLine = null;
        iconNoline = null;
        iconChildFirst = null;
        iconChildMiddle = null;
        iconChildLast = null;
        iconNodeOpen = null;
        iconNodeOpenFirst = null;
        iconNodeOpenMiddle = null;
        iconNodeOpenLast = null;
        iconNodeClose = null;
        iconNodeCloseFirst = null;
        iconNodeCloseMiddle = null;
        iconNodeCloseLast = null;
        styleClass = null;
        rowClasses = null;
        columnClasses = null;
        headerClass = null;
        footerClass = null;
        nodeClass = null;
        selectedNodeClass = null;
        iconClass = null;
        expandRoot = false;
    }

    /**
     * Applies attributes to the tree component
     */
    protected void setProperties(UIComponent component) {
        super.setProperties(component);
        FacesContext context = FacesContext.getCurrentInstance();

        if (value != null) {
            if (isValueReference(value)) {
                ValueBinding binding = context.getApplication()
                        .createValueBinding(value);
                component.setValueBinding("model", binding);
            }
        } else {
            ValueBinding binding = component.getValueBinding("model");
            if (binding == null) {
                binding = context.getApplication().createValueBinding(
                        "#{sessionScope.tree}");
            }
            component.setValueBinding("model", binding);
        }

        setStringProperty(component, "var", var);
        setStringProperty(component, "iconLine", iconLine);
        setStringProperty(component, "iconNoline", iconNoline);
        setStringProperty(component, "iconChildFirst", iconChildFirst);
        setStringProperty(component, "iconChildMiddle", iconChildMiddle);
        setStringProperty(component, "iconChildLast", iconChildLast);
        setStringProperty(component, "iconNodeOpen", iconNodeOpen);
        setStringProperty(component, "iconNodeOpenFirst", iconNodeOpenFirst);
        setStringProperty(component, "iconNodeOpenMiddle", iconNodeOpenMiddle);
        setStringProperty(component, "iconNodeOpenLast", iconNodeOpenLast);
        setStringProperty(component, "iconNodeClose", iconNodeClose);
        setStringProperty(component, "iconNodeCloseFirst", iconNodeCloseFirst);
        setStringProperty(component, "iconNodeCloseMiddle", iconNodeCloseMiddle);
        setStringProperty(component, "iconNodeCloseLast", iconNodeCloseLast);
        setStringProperty(component, "styleClass", styleClass);
        setStringProperty(component, "rowClasses", rowClasses);
        setStringProperty(component, "columnClasses", columnClasses);
        setStringProperty(component, "headerClass", headerClass);
        setStringProperty(component, "footerClass", footerClass);
        setStringProperty(component, "nodeClass", nodeClass);
        setStringProperty(component, "selectedNodeClass", selectedNodeClass);
        setStringProperty(component, "iconClass", iconClass);
        setLongProperty(component, "expireListeners", expireListeners);
    }
}
TOP

Related Classes of org.apache.myfaces.custom.tree.taglib.TreeTag

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.