All Downloads are FREE. Search and download functionalities are using the official Maven repository.

jakarta.faces.component.UISelectItem Maven / Gradle / Ivy

The newest version!
/*
 * Copyright (c) 1997, 2020 Oracle and/or its affiliates. All rights reserved.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v. 2.0, which is available at
 * http://www.eclipse.org/legal/epl-2.0.
 *
 * This Source Code may also be made available under the following Secondary
 * Licenses when the conditions for such availability set forth in the
 * Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
 * version 2 with the GNU Classpath Exception, which is available at
 * https://www.gnu.org/software/classpath/license.html.
 *
 * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
 */

package jakarta.faces.component;

import jakarta.faces.model.SelectItem;

/**
 * 

* UISelectItem is a component that may be * nested inside a {@link UISelectMany} or {@link UISelectOne} component, and causes the addition of a * {@link SelectItem} instance to the list of available options for the parent component. The contents of the * {@link SelectItem} can be specified in one of the following ways: *

*
    *
  • The value attribute's value is an instance of {@link SelectItem}.
  • *
  • The associated {@link jakarta.el.ValueExpression} points at a model data item of type {@link SelectItem}.
  • *
  • A new {@link SelectItem} instance is synthesized from the values of the itemDescription, * itemDisabled, itemLabel, itemEscaped, and itemValue attributes.
  • *
*/ public class UISelectItem extends UIComponentBase { // ------------------------------------------------------ Manifest Constants /** *

* The standard component type for this component. *

*/ public static final String COMPONENT_TYPE = "jakarta.faces.SelectItem"; /** *

* The standard component family for this component. *

*/ public static final String COMPONENT_FAMILY = "jakarta.faces.SelectItem"; enum PropertyKeys { itemDescription, itemDisabled, itemEscaped, itemLabel, itemValue, value, noSelectionOption } // ------------------------------------------------------------ Constructors /** *

* Create a new {@link UISelectItem} instance with default property values. *

*/ public UISelectItem() { super(); setRendererType(null); } // -------------------------------------------------------------- Properties @Override public String getFamily() { return COMPONENT_FAMILY; } /** *

* Return the description for this selection item. *

* * @return the item description. */ public String getItemDescription() { return (String) getStateHelper().eval(PropertyKeys.itemDescription); } /** *

* Set the description for this selection item. *

* * @param itemDescription The new description */ public void setItemDescription(String itemDescription) { getStateHelper().put(PropertyKeys.itemDescription, itemDescription); } /** *

* Return the disabled setting for this selection item. *

* * @return true is the item disabled, false otherwise. */ public boolean isItemDisabled() { return (Boolean) getStateHelper().eval(PropertyKeys.itemDisabled, false); } /** *

* Set the disabled value for this selection item. *

* * @param itemDisabled The new disabled flag */ public void setItemDisabled(boolean itemDisabled) { getStateHelper().put(PropertyKeys.itemDisabled, itemDisabled); } /** *

* Return the escape setting for the label of this selection item. *

* * @return true if the item is escaped, false otherwise. */ public boolean isItemEscaped() { return (Boolean) getStateHelper().eval(PropertyKeys.itemEscaped, true); } /** *

* Set the escape value for the label of this selection item. *

* * @param itemEscaped The new disabled flag */ public void setItemEscaped(boolean itemEscaped) { getStateHelper().put(PropertyKeys.itemEscaped, itemEscaped); } /** *

* Return the localized label for this selection item. *

* * @return the item label. */ public String getItemLabel() { return (String) getStateHelper().eval(PropertyKeys.itemLabel); } /** *

* Set the localized label for this selection item. *

* * @param itemLabel The new localized label */ public void setItemLabel(String itemLabel) { getStateHelper().put(PropertyKeys.itemLabel, itemLabel); } /** *

* Return the server value for this selection item. *

* * @return the item value. */ public Object getItemValue() { return getStateHelper().eval(PropertyKeys.itemValue); } /** *

* Set the server value for this selection item. *

* * @param itemValue The new server value */ public void setItemValue(Object itemValue) { getStateHelper().put(PropertyKeys.itemValue, itemValue); } /** *

* Returns the value property of the UISelectItem. *

* * @return the value. */ public Object getValue() { return getStateHelper().eval(PropertyKeys.value); } /** *

* Sets the value property of the UISelectItem. *

* * @param value the new value */ public void setValue(Object value) { getStateHelper().put(PropertyKeys.value, value); } /** *

* Return the value of the noSelectionOption property. If the value of this property is true, * the system interprets the option represented by this UISelectItem instance as representing a "no * selection" option. See {@link UISelectOne#validateValue} and {@link UISelectMany#validateValue} for usage. *

* * @return the no selection option. * @since 2.0 */ public boolean isNoSelectionOption() { return (Boolean) getStateHelper().eval(PropertyKeys.noSelectionOption, false); } /** *

* Set the value of the noSelectionOption property. *

* * @param noSelectionOption the no selection option. * @since 2.0 */ public void setNoSelectionOption(boolean noSelectionOption) { getStateHelper().put(PropertyKeys.noSelectionOption, noSelectionOption); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy