001 package org.apache.myfaces.tobago.taglib.component;
002
003 /*
004 * Licensed to the Apache Software Foundation (ASF) under one or more
005 * contributor license agreements. See the NOTICE file distributed with
006 * this work for additional information regarding copyright ownership.
007 * The ASF licenses this file to You under the Apache License, Version 2.0
008 * (the "License"); you may not use this file except in compliance with
009 * the License. You may obtain a copy of the License at
010 *
011 * http://www.apache.org/licenses/LICENSE-2.0
012 *
013 * Unless required by applicable law or agreed to in writing, software
014 * distributed under the License is distributed on an "AS IS" BASIS,
015 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
016 * See the License for the specific language governing permissions and
017 * limitations under the License.
018 */
019
020 import org.apache.myfaces.tobago.apt.annotation.BodyContentDescription;
021 import org.apache.myfaces.tobago.apt.annotation.Preliminary;
022 import org.apache.myfaces.tobago.apt.annotation.Tag;
023 import org.apache.myfaces.tobago.apt.annotation.TagAttribute;
024 import org.apache.myfaces.tobago.apt.annotation.UIComponentTag;
025 import org.apache.myfaces.tobago.apt.annotation.UIComponentTagAttribute;
026 import org.apache.myfaces.tobago.taglib.decl.HasIdBindingAndRendered;
027 import org.apache.myfaces.tobago.taglib.decl.HasIdReference;
028 import org.apache.myfaces.tobago.taglib.decl.HasNameReference;
029 import org.apache.myfaces.tobago.taglib.decl.HasState;
030 import org.apache.myfaces.tobago.taglib.decl.HasTreeNodeValue;
031 import org.apache.myfaces.tobago.taglib.decl.IsRequired;
032
033 /*
034 * Date: 06.04.2006
035 * Time: 22:32:57
036 */
037 /**
038 * Renders a listbox view of a tree.
039 */
040 @Tag(name = "treeListbox")
041 @BodyContentDescription(anyTagOf = "<f:facet>* <f:actionListener>?")
042 @Preliminary(
043 "Implement a var attribute for the tree like in the sheet (http://issues.apache.org/jira/browse/TOBAGO-18)")
044 @UIComponentTag(
045 uiComponent = "org.apache.myfaces.tobago.component.UITreeListbox",
046 rendererType = "TreeListbox")
047 public interface TreeListboxTagDeclaration extends TobagoTagDeclaration, HasIdBindingAndRendered, HasTreeNodeValue,
048 HasState, HasIdReference, HasNameReference, IsRequired {
049 /**
050 * Flag indicating whether or not this component should be render selectable items.
051 * Possible values are:
052 * <ul>
053 * <li><strong>single</strong> : a singleselection tree is rendered</li>
054 * <li><strong>singleLeafOnly</strong> : a singleselection tree is rendered,
055 * only Leaf's are selectable</li>
056 * <li><strong>siblingLeafOnly</strong> : a multiselection tree is rendered,
057 * where only sibling Leaf's are selectable</li>
058 * </ul>
059 */
060 @TagAttribute
061 @UIComponentTagAttribute(defaultValue = "single", allowedValues = {"single", "singleLeafOnly", "siblingLeafOnly"})
062 void setSelectable(String selectable);
063
064
065 /**
066 * reference to tip value.
067 */
068 @TagAttribute
069 @UIComponentTagAttribute()
070 void setTipReference(String tipReference);
071 }