001: /*
002: * Licensed to the Apache Software Foundation (ASF) under one or more
003: * contributor license agreements. See the NOTICE file distributed with
004: * this work for additional information regarding copyright ownership.
005: * The ASF licenses this file to You under the Apache License, Version 2.0
006: * (the "License"); you may not use this file except in compliance with
007: * the License. You may obtain a copy of the License at
008: *
009: * http://www.apache.org/licenses/LICENSE-2.0
010: *
011: * Unless required by applicable law or agreed to in writing, software
012: * distributed under the License is distributed on an "AS IS" BASIS,
013: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014: * See the License for the specific language governing permissions and
015: * limitations under the License.
016: *
017: * $Header:$
018: */
019: package org.apache.beehive.netui.util.tags;
020:
021: /**
022: * GroupOption is a simple JavaBean that can be used to fully specify
023: * the name, value, alt text and accesskey of either a <code>CheckBoxGroup</code>
024: * or a <code>RadioButtonGroup</code>. The name will appear in the HTML after
025: * the checkbox or radio button. The name attribute is required for outpu
026: * by the tags. The value can either be set separately or will default to
027: * the name. Optionally and alt text attribute and accesskey value can be
028: * provided.
029: */
030: public class GroupOption implements java.io.Serializable {
031: private String _name;
032: private String _value;
033: private String _alt;
034: private char _accessKey;
035:
036: /**
037: * Default Constructor.
038: */
039: public GroupOption() {
040: }
041:
042: /**
043: * Construct a GroupOption setting the name.
044: */
045: public GroupOption(String name) {
046: _name = name;
047: }
048:
049: /**
050: * Construct a GroupOption setting the name and value.
051: */
052: public GroupOption(String name, String value) {
053: _name = name;
054: _value = value;
055: }
056:
057: /**
058: * Construct a GroupOption setting all the values.
059: */
060: public GroupOption(String name, String value, String alt,
061: char accessKey) {
062: _name = name;
063: _value = value;
064: _alt = alt;
065: _accessKey = accessKey;
066: }
067:
068: /**
069: * Set the name of the option which will appear next to the option.
070: * @param name The name of the created option.
071: */
072: public void setName(String name) {
073: _name = name;
074: }
075:
076: /**
077: * Get the name of the option.
078: * @return The name of the option that was set.
079: */
080: public String getName() {
081: return _name;
082: }
083:
084: /**
085: * Set the value of the option. Thie value will be written out as
086: * the <code>value</code> attribute.
087: * @param value The name of the created option.
088: */
089: public void setValue(String value) {
090: _value = value;
091: }
092:
093: /**
094: * Get the value of the option. If no value has been set
095: * this method will return value assigned to the <code>name</code>
096: * property.
097: * @return The value of the option.
098: */
099: public String getValue() {
100: return (_value != null) ? _value : _name;
101: }
102:
103: /**
104: * Set the alt text of the option.
105: * @param alt The text that will be set for the <code>alt</code> attribute.
106: */
107: public void setAlt(String alt) {
108: _alt = alt;
109: }
110:
111: /**
112: * Get the alt text of the option.
113: * @return The alt text of the option.
114: */
115: public String getAlt() {
116: return _alt;
117: }
118:
119: /**
120: * Set the alt text of the option.
121: * @param accessKey The value that will be set for the
122: * <code>accesskey</code> attribute.
123: */
124: public void setAccessKey(char accessKey) {
125: _accessKey = accessKey;
126: }
127:
128: /**
129: * Get the accesskey of the option.
130: * @return The accessKey of the option.
131: */
132: public char getAccessKey() {
133: return _accessKey;
134: }
135: }
|