/****************************************************************************** * Product: Adempiere ERP & CRM Smart Business Solution * * Copyright (C) 1999-2006 ComPiere, Inc. All Rights Reserved. * * This program is free software; you can redistribute it and/or modify it * * under the terms version 2 of the GNU General Public License as published * * by the Free Software Foundation. This program is distributed in the hope * * that it will be useful, but WITHOUT ANY WARRANTY; without even the implied * * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * * See the GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along * * with this program; if not, write to the Free Software Foundation, Inc., * * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. * * For the text or an alternative of this public license, you may reach us * * ComPiere, Inc., 2620 Augustine Dr. #245, Santa Clara, CA 95054, USA * * or via info@compiere.org or http://www.compiere.org/license.html * *****************************************************************************/ package org.apache.ecs.xhtml; import org.apache.ecs.Element; import org.apache.ecs.FocusEvents; import org.apache.ecs.KeyEvents; import org.apache.ecs.MouseEvents; import org.apache.ecs.MultiPartElement; import org.apache.ecs.Printable; /** * This class creates a <button> tag. * * @version $Id: button.java,v 1.2 2006/07/30 00:54:02 jjanke Exp $ * @author Stephan Nagy * @author Jon S. Stevens * @author Bojan Smojver */ public class button extends MultiPartElement implements Printable, FocusEvents, MouseEvents, KeyEvents { /** * */ private static final long serialVersionUID = -5825801558843063454L; // convenience variables public final static String TYPE_RESET = "reset"; public final static String TYPE_SUBMIT = "submit"; public final static String TYPE_BUTTON = "button"; /** * private initializer. */ { setElementType ("button"); setCase (LOWERCASE); setAttributeQuote (true); } public button () { } /** * Set the name of this button. * * @param name * set the name of this button. */ public button setName (String name) { addAttribute ("name", name); return (this); } /** * Set the value of this button. * * @param value * set the value of this button. */ public button setValue (String value) { addAttribute ("value", value); return (this); } /** * Set the type of button this is. Convenience variables are
* button.submit
* button.reset
* button.button * * @param type type. */ public button setType (String type) { addAttribute ("type", type); return (this); } /** * Is this button disabled? disabled true|false */ public button setDisabled (boolean disabled) { if (disabled) addAttribute ("disabled", "disabled"); else removeAttribute ("disabled"); return (this); } /** * Set the elements position in the tabbing order. * * @param number * set the elements position in the tabbing order. */ public button setTabIndex (int number) { addAttribute ("tabindex", Integer.toString (number)); return (this); } /** * Set the elements position in the tabbing order. * * @param number * set the elements position in the tabbing order. */ public button setTabIndex (String number) { addAttribute ("tabindex", number); return (this); } /** * Sets the lang="" and xml:lang="" attributes * * @param lang * the lang="" and xml:lang="" attributes */ public Element setLang (String lang) { addAttribute ("lang", lang); addAttribute ("xml:lang", lang); return this; } /** * Adds an Element to the element. * * @param hashcode * name of element for hash table * @param element * Adds an Element to the element. */ public button addElement (String hashcode, Element element) { addElementToRegistry (hashcode, element); return (this); } /** * Adds an Element to the element. * * @param hashcode * name of element for hash table * @param element * Adds an Element to the element. */ public button addElement (String hashcode, String element) { addElementToRegistry (hashcode, element); return (this); } /** * Adds an Element to the element. * * @param element * Adds an Element to the element. */ public button addElement (Element element) { addElementToRegistry (element); return (this); } /** * Adds an Element to the element. * * @param element * Adds an Element to the element. */ public button addElement (String element) { addElementToRegistry (element); return (this); } /** * Removes an Element from the element. * * @param hashcode * the name of the element to be removed. */ public button removeElement (String hashcode) { removeElementFromRegistry (hashcode); return (this); } /** * The onfocus event occurs when an element receives focus either by the * pointing device or by tabbing navigation. This attribute may be used with * the following elements: LABEL, INPUT, SELECT, TEXTAREA, and BUTTON. * * @param script script */ public void setOnFocus (String script) { addAttribute ("onfocus", script); } /** * The onblur event occurs when an element loses focus either by the * pointing device or by tabbing navigation. It may be used with the same * elements as onfocus. * * @param script script */ public void setOnBlur (String script) { addAttribute ("onblur", script); } /** * The onclick event occurs when the pointing device button is clicked over * an element. This attribute may be used with most elements. * * @param script script */ public void setOnClick (String script) { addAttribute ("onclick", script); } /** * The ondblclick event occurs when the pointing device button is double * clicked over an element. This attribute may be used with most elements. * * @param script script */ public void setOnDblClick (String script) { addAttribute ("ondblclick", script); } /** * The onmousedown event occurs when the pointing device button is pressed * over an element. This attribute may be used with most elements. * * @param script script */ public void setOnMouseDown (String script) { addAttribute ("onmousedown", script); } /** * The onmouseup event occurs when the pointing device button is released * over an element. This attribute may be used with most elements. * * @param script script */ public void setOnMouseUp (String script) { addAttribute ("onmouseup", script); } /** * The onmouseover event occurs when the pointing device is moved onto an * element. This attribute may be used with most elements. * * @param script script */ public void setOnMouseOver (String script) { addAttribute ("onmouseover", script); } /** * The onmousemove event occurs when the pointing device is moved while it * is over an element. This attribute may be used with most elements. * * @param script script */ public void setOnMouseMove (String script) { addAttribute ("onmousemove", script); } /** * The onmouseout event occurs when the pointing device is moved away from * an element. This attribute may be used with most elements. * * @param script script */ public void setOnMouseOut (String script) { addAttribute ("onmouseout", script); } /** * The onkeypress event occurs when a key is pressed and released over an * element. This attribute may be used with most elements. * * @param script script */ public void setOnKeyPress (String script) { addAttribute ("onkeypress", script); } /** * The onkeydown event occurs when a key is pressed down over an element. * This attribute may be used with most elements. * * @param script script */ public void setOnKeyDown (String script) { addAttribute ("onkeydown", script); } /** * The onkeyup event occurs when a key is released over an element. This * attribute may be used with most elements. * * @param script script */ public void setOnKeyUp (String script) { addAttribute ("onkeyup", script); } }