001 /*
002 * Licensed to the Apache Software Foundation (ASF) under one
003 * or more contributor license agreements. See the NOTICE file
004 * distributed with this work for additional information
005 * regarding copyright ownership. The ASF licenses this file
006 * to you under the Apache License, Version 2.0 (the
007 * "License"); you may not use this file except in compliance
008 * with the License. You may obtain a copy of the License at
009 *
010 * http://www.apache.org/licenses/LICENSE-2.0
011 *
012 * Unless required by applicable law or agreed to in writing,
013 * software distributed under the License is distributed on an
014 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
015 * KIND, either express or implied. See the License for the
016 * specific language governing permissions and limitations
017 * under the License.
018 */
019
020 package org.apache.myfaces.tobago.taglib.component;
021
022 import org.apache.myfaces.tobago.apt.annotation.BodyContent;
023 import org.apache.myfaces.tobago.apt.annotation.Tag;
024 import org.apache.myfaces.tobago.apt.annotation.TagAttribute;
025 import org.apache.myfaces.tobago.apt.annotation.UIComponentTag;
026 import org.apache.myfaces.tobago.apt.annotation.UIComponentTagAttribute;
027 import org.apache.myfaces.tobago.taglib.decl.HasBinding;
028 import org.apache.myfaces.tobago.taglib.decl.HasId;
029 import org.apache.myfaces.tobago.taglib.decl.HasMarkup;
030
031 /*
032 * Date: 02.04.2006
033 * Time: 16:20:59
034 */
035
036 /**
037 * Add a child UISelectItem component to the UIComponent
038 * associated with the closed parent UIComponent custom
039 * action.
040 */
041 @Tag(name = "selectItem", bodyContent = BodyContent.EMPTY)
042 @UIComponentTag(uiComponent = "org.apache.myfaces.tobago.component.UISelectItem")
043 public interface SelectItemTagDeclaration extends TobagoTagDeclaration, HasBinding, HasId, HasMarkup {
044 /**
045 * Flag indicating whether the option created
046 * by this component is disabled.
047 */
048 @TagAttribute
049 @UIComponentTagAttribute(type = {"java.lang.Boolean"}, defaultValue = "false")
050 void setItemDescription(String itemDescription);
051
052 /**
053 * Flag indicating whether the option created
054 * by this component is disabled.
055 */
056 @TagAttribute
057 @UIComponentTagAttribute(type = {"java.lang.Boolean"}, defaultValue = "false")
058 void setItemDisabled(String itemDisabled);
059
060 /**
061 * Label to be displayed to the user for this option.
062 */
063 @TagAttribute
064 @UIComponentTagAttribute()
065 void setItemLabel(String itemLabel);
066
067 /**
068 * Value to be returned to the server if this option is selected by the user.
069 */
070 @TagAttribute
071 @UIComponentTagAttribute()
072 void setItemValue(String itemValue);
073
074 /**
075 * Value binding expression pointing at a SelectItem instance containing
076 * the information for this option.
077 */
078 @TagAttribute
079 @UIComponentTagAttribute(type = "javax.faces.model.SelectItem")
080 void setValue(String value);
081
082 /**
083 * Image to be displayed to the user for this option.
084 */
085 @TagAttribute
086 @UIComponentTagAttribute()
087 void setItemImage(String itemImage);
088 }