001 // ---------- Attention: Generated code, please do not modify! ----------- 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 package org.apache.myfaces.tobago.component; 021 022 import javax.faces.context.FacesContext; 023 import org.apache.myfaces.tobago.context.Markup; 024 import org.apache.myfaces.tobago.internal.component.AbstractUISelectItem; 025 import org.apache.commons.lang.ArrayUtils; 026 import org.apache.commons.lang.StringUtils; 027 import org.apache.myfaces.tobago.component.MethodBindingToMethodExpression; 028 import org.apache.myfaces.tobago.component.MethodExpressionToMethodBinding; 029 import org.apache.myfaces.tobago.internal.util.Deprecation; 030 import org.apache.myfaces.tobago.renderkit.MarginValues; 031 import org.apache.myfaces.tobago.renderkit.SpacingValues; 032 import org.apache.myfaces.tobago.renderkit.LayoutComponentRenderer; 033 import javax.el.ELException; 034 import javax.faces.FacesException; 035 import java.util.ArrayList; 036 import java.util.List; 037 import javax.el.MethodExpression; 038 import javax.el.ValueExpression; 039 040 /** 041 Add a child UISelectItem component to the UIComponent 042 associated with the closed parent UIComponent custom 043 action. 044 * UIComponent class, generated from template {@code component1.2.stg} with class 045 * {@link org.apache.myfaces.tobago.internal.taglib.component.SelectItemTagDeclaration}. 046 */ 047 public class UISelectItem 048 extends AbstractUISelectItem implements SupportsMarkup { 049 050 public static final String COMPONENT_TYPE = "org.apache.myfaces.tobago.SelectItem"; 051 052 private org.apache.myfaces.tobago.context.Markup markup; 053 private org.apache.myfaces.tobago.context.Markup currentMarkup; 054 private java.lang.String itemImage; 055 private java.lang.Boolean itemDisabled; 056 057 058 public org.apache.myfaces.tobago.context.Markup getMarkup() { 059 if (markup != null) { 060 return markup; 061 } 062 ValueExpression ve = getValueExpression("markup"); 063 if (ve != null) { 064 try { 065 Object object = ve.getValue(getFacesContext().getELContext()); 066 return Markup.valueOf(object); 067 } catch (ELException e) { 068 throw new FacesException(e); 069 } 070 } 071 return null; 072 } 073 074 public void setMarkup(org.apache.myfaces.tobago.context.Markup markup) { 075 this.markup = markup; 076 } 077 078 public org.apache.myfaces.tobago.context.Markup getCurrentMarkup() { 079 if (currentMarkup != null) { 080 return currentMarkup; 081 } 082 return null; 083 } 084 085 public void setCurrentMarkup(org.apache.myfaces.tobago.context.Markup currentMarkup) { 086 this.currentMarkup = currentMarkup; 087 } 088 089 /** 090 Image to be displayed to the user for this option. 091 092 */ 093 public java.lang.String getItemImage() { 094 if (itemImage != null) { 095 return itemImage; 096 } 097 ValueExpression ve = getValueExpression("itemImage"); 098 if (ve != null) { 099 try { 100 return (java.lang.String) ve.getValue(getFacesContext().getELContext()); 101 } catch (ELException e) { 102 throw new FacesException(e); 103 } 104 } 105 return null; 106 } 107 108 public void setItemImage(java.lang.String itemImage) { 109 this.itemImage = itemImage; 110 } 111 112 /** 113 Flag indicating whether the option created 114 by this component is disabled. 115 <br />Default: <code>false</code> 116 */ 117 public boolean isItemDisabled() { 118 if (itemDisabled != null) { 119 return itemDisabled; 120 } 121 ValueExpression ve = getValueExpression("itemDisabled"); 122 if (ve != null) { 123 try { 124 Boolean bool = (Boolean) ve.getValue(getFacesContext().getELContext()); 125 if (bool != null) { 126 return bool; 127 } 128 } catch (ELException e) { 129 throw new FacesException(e); 130 } 131 } 132 return false; 133 } 134 135 public void setItemDisabled(boolean itemDisabled) { 136 this.itemDisabled = itemDisabled; 137 } 138 139 public void restoreState(FacesContext context, Object componentState) { 140 Object[] values = (Object[]) componentState; 141 super.restoreState(context, values[0]); 142 markup = (org.apache.myfaces.tobago.context.Markup) values[1]; 143 itemImage = (java.lang.String) values[2]; 144 itemDisabled = (java.lang.Boolean) values[3]; 145 } 146 147 public Object saveState(FacesContext context) { 148 Object[] values = new Object[4]; 149 values[0] = super.saveState(context); 150 values[1] = markup; 151 values[2] = itemImage; 152 values[3] = itemDisabled; 153 currentMarkup = null; 154 return values; 155 } 156 157 158 }