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.BodyContentDescription; 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.apt.annotation.Facet; 028 import org.apache.myfaces.tobago.taglib.decl.HasBinding; 029 import org.apache.myfaces.tobago.taglib.decl.HasDeprecatedHeight; 030 import org.apache.myfaces.tobago.taglib.decl.HasId; 031 import org.apache.myfaces.tobago.taglib.decl.HasLabelAndAccessKey; 032 import org.apache.myfaces.tobago.taglib.decl.HasTip; 033 import org.apache.myfaces.tobago.taglib.decl.IsDisabled; 034 import org.apache.myfaces.tobago.taglib.decl.IsReadonly; 035 import org.apache.myfaces.tobago.taglib.decl.IsRendered; 036 037 /* 038 * Created: Aug 5, 2005 6:08:24 PM 039 * User: bommel 040 * $Id: SelectOneListboxTagDeclaration.java 1368577 2012-08-02 16:20:31Z lofwyr $ 041 */ 042 /** 043 * Render a single selection option listbox. 044 */ 045 @Tag(name = "selectOneListbox") 046 @BodyContentDescription(anyTagOf = "(<f:selectItems>|<f:selectItem>|<tc:selectItem>)+ <f:facet>* ") 047 @UIComponentTag( 048 uiComponent = "org.apache.myfaces.tobago.component.UISelectOne", 049 rendererType = "SelectOneListbox", 050 facets = { 051 @Facet(name = "click", 052 description = 053 "This facet can contain a UICommand that is invoked in case of a click event from the component"), 054 @Facet(name = "change", 055 description = 056 "This facet can contain a UICommand that is invoked in case of a change event from the component") 057 }) 058 public interface SelectOneListboxTagDeclaration extends SelectOneTagDeclaration, HasId, IsDisabled, 059 IsReadonly, HasLabelAndAccessKey, IsRendered, HasBinding, HasDeprecatedHeight, HasTip { 060 061 /** 062 * Flag indicating that selecting an Item representing a Value is Required. 063 * If an SelectItem was choosen which underling value is an empty string an 064 * ValidationError occurs and a Error Message is rendered. 065 */ 066 @TagAttribute(type = String.class) 067 @UIComponentTagAttribute(type = "java.lang.Boolean") 068 void setRequired(String required); 069 }