Package com.meterware.httpunit
Class Button
- java.lang.Object
-
- com.meterware.httpunit.FormControl
-
- com.meterware.httpunit.Button
-
- All Implemented Interfaces:
HTMLElement,ScriptingEventHandler
- Direct Known Subclasses:
ResetButton,SubmitButton
public class Button extends FormControl
A button in a form.- Author:
- Russell Gold
-
-
Field Summary
Fields Modifier and Type Field Description static HTMLElementPredicateWITH_IDstatic HTMLElementPredicateWITH_LABEL-
Fields inherited from class com.meterware.httpunit.FormControl
BUTTON_TYPE, CHECKBOX_TYPE, FILE_TYPE, HIDDEN_TYPE, IMAGE_BUTTON_TYPE, MULTIPLE_TYPE, PASSWORD_TYPE, RADIO_BUTTON_TYPE, RESET_BUTTON_TYPE, SINGLE_TYPE, SUBMIT_BUTTON_TYPE, TEXT_TYPE, TEXTAREA_TYPE, UNDEFINED_TYPE
-
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected voidaddValues(com.meterware.httpunit.protocol.ParameterProcessor processor, java.lang.String characterSet)voidclick()Performs the action associated with clicking this button after running any 'onClick' script.protected voiddoButtonAction()Perform the normal action of this button.protected voiddoButtonAction(int x, int y)Perform the normal action of this button.booleandoEvent(java.lang.String eventScript)Deprecated.since 1.7 - use doEventScript insteadbooleandoEventScript(java.lang.String eventScript)optional do the event if it's definedprotected booleandoOnClickSequence(int x, int y)the onClickSequence for this buttonjava.lang.StringgetAttribute(java.lang.String name)get the Attribute with the given name - by delegating to NodeUtilsprotected java.lang.StringgetAttribute(java.lang.String name, java.lang.String defaultValue)java.lang.StringgetClassName()Returns the class associated with this element.java.lang.StringgetID()Returns the ID associated with this element.java.lang.StringgetName()Returns the name associated with this element.org.w3c.dom.NodegetNode()Returns the DOM node underlying this element.ScriptableDelegategetParentDelegate()Returns the scriptable delegate which can provide the scriptable delegate for this element.ScriptingHandlergetScriptingHandler()Returns a scriptable object which can act as a proxy for this control.java.lang.StringgetTagName()Returns the tag name of this node.java.lang.StringgetText()Returns the text value of this block.java.lang.StringgetTitle()Returns the title associated with this element.java.lang.StringgetType()Return the type of the control, as seen from JavaScript.java.lang.StringgetValue()Returns the value associated with this button.protected java.lang.String[]getValues()Returns the current value(s) associated with this control.booleanhandleEvent(java.lang.String eventName)handle the event with the given name by getting the attribute and then executing the eventScript for itbooleanisDisabled()Returns true if this button is disabled, meaning that it cannot be clicked.booleanisSupportedAttribute(java.lang.String name)Returns true if this element may have an attribute with the specified name.ScriptableDelegatenewScriptable()Creates and returns a scriptable object for this control.voidrememberEnableState()remember wether the button was enabledvoidremoveAttribute(java.lang.String name)remove the Attribute with the given name - by delegating to NodeUtilsvoidsetAttribute(java.lang.String name, java.lang.Object value)set the Attribute with the given name - by delegating to NodeUtilsprotected voidsupportAttribute(java.lang.String name)voidthrowDisabledException()throw an exception that I'm disbledprotected voidverifyButtonEnabled()verifyButtonEnabled-
Methods inherited from class com.meterware.httpunit.FormControl
claimUniqueValue, claimValueIsRequired, doOnChangeEvent, doOnClickEvent, doOnMouseDownEvent, doOnMouseUpEvent, emptyIfNull, getDisplayedOptions, getForm, getOptionValues, getValueAttribute, isHidden, isMultiValued, isReadOnly, reset, sendOnChangeEvent, sendOnClickEvent, sendOnMouseDownEvent, sendOnMouseUpEvent, setState, setValueAttribute, toggle
-
-
-
-
Field Detail
-
WITH_ID
public static final HTMLElementPredicate WITH_ID
-
WITH_LABEL
public static final HTMLElementPredicate WITH_LABEL
-
-
Method Detail
-
getType
public java.lang.String getType()
Description copied from class:FormControlReturn the type of the control, as seen from JavaScript.- Specified by:
getTypein classFormControl
-
getValue
public java.lang.String getValue()
Returns the value associated with this button.
-
doOnClickSequence
protected boolean doOnClickSequence(int x, int y) throws java.io.IOException, org.xml.sax.SAXExceptionthe onClickSequence for this button- Returns:
- true if the even was handled
- Throws:
java.io.IOExceptionorg.xml.sax.SAXException
-
click
public void click() throws java.io.IOException, org.xml.sax.SAXExceptionPerforms the action associated with clicking this button after running any 'onClick' script. For a submit button this typically submits the form.- Throws:
java.io.IOExceptionorg.xml.sax.SAXException
-
rememberEnableState
public void rememberEnableState()
remember wether the button was enabled
-
verifyButtonEnabled
protected void verifyButtonEnabled()
verifyButtonEnabled
-
throwDisabledException
public void throwDisabledException()
throw an exception that I'm disbled
-
isDisabled
public boolean isDisabled()
Returns true if this button is disabled, meaning that it cannot be clicked.- Overrides:
isDisabledin classFormControl
-
doButtonAction
protected void doButtonAction(int x, int y) throws java.io.IOException, org.xml.sax.SAXExceptionPerform the normal action of this button.- Parameters:
x- - the x coordinatey- - the y coordinate- Throws:
java.io.IOExceptionorg.xml.sax.SAXException
-
doButtonAction
protected void doButtonAction() throws java.io.IOException, org.xml.sax.SAXExceptionPerform the normal action of this button. delegate to the x-y version- Throws:
java.io.IOExceptionorg.xml.sax.SAXException
-
getValues
protected java.lang.String[] getValues()
Description copied from class:FormControlReturns the current value(s) associated with this control. These values will be transmitted to the server if the control is 'successful'.- Specified by:
getValuesin classFormControl
-
addValues
protected void addValues(com.meterware.httpunit.protocol.ParameterProcessor processor, java.lang.String characterSet) throws java.io.IOException- Specified by:
addValuesin classFormControl- Throws:
java.io.IOException
-
newScriptable
public ScriptableDelegate newScriptable()
Description copied from class:FormControlCreates and returns a scriptable object for this control. Subclasses should override this if they use a different implementation of Scriptable.- Specified by:
newScriptablein interfaceHTMLElement- Overrides:
newScriptablein classFormControl
-
getParentDelegate
public ScriptableDelegate getParentDelegate()
Description copied from interface:HTMLElementReturns the scriptable delegate which can provide the scriptable delegate for this element.- Specified by:
getParentDelegatein interfaceHTMLElement- Overrides:
getParentDelegatein classFormControl
-
getID
public java.lang.String getID()
Description copied from interface:HTMLElementReturns the ID associated with this element. IDs are unique throughout the HTML document.- Specified by:
getIDin interfaceHTMLElement
-
getClassName
public java.lang.String getClassName()
Description copied from interface:HTMLElementReturns the class associated with this element.- Specified by:
getClassNamein interfaceHTMLElement
-
getTitle
public java.lang.String getTitle()
Description copied from interface:HTMLElementReturns the title associated with this element.- Specified by:
getTitlein interfaceHTMLElement
-
getName
public java.lang.String getName()
Description copied from interface:HTMLElementReturns the name associated with this element.- Specified by:
getNamein interfaceHTMLElement
-
getScriptingHandler
public ScriptingHandler getScriptingHandler()
Returns a scriptable object which can act as a proxy for this control.- Specified by:
getScriptingHandlerin interfaceHTMLElement
-
doEvent
public boolean doEvent(java.lang.String eventScript)
Deprecated.since 1.7 - use doEventScript insteadhandle the event that has the given script attached by compiling the eventScript as a function and executing it- Specified by:
doEventin interfaceScriptingEventHandler- Parameters:
eventScript- - the script to use- Returns:
- true if the script is empty or the result of the script
-
doEventScript
public boolean doEventScript(java.lang.String eventScript)
optional do the event if it's defined- Specified by:
doEventScriptin interfaceScriptingEventHandler- Returns:
- true if the script is empty or the result of the script
-
handleEvent
public boolean handleEvent(java.lang.String eventName)
Description copied from interface:ScriptingEventHandlerhandle the event with the given name by getting the attribute and then executing the eventScript for it- Specified by:
handleEventin interfaceScriptingEventHandler- Returns:
- the result of doEventScript
-
getText
public java.lang.String getText()
Returns the text value of this block.- Specified by:
getTextin interfaceHTMLElement
-
getTagName
public java.lang.String getTagName()
Description copied from interface:HTMLElementReturns the tag name of this node.- Specified by:
getTagNamein interfaceHTMLElement
-
getAttribute
public java.lang.String getAttribute(java.lang.String name)
get the Attribute with the given name - by delegating to NodeUtils- Specified by:
getAttributein interfaceHTMLElement- Parameters:
name- - the name of the attribute to get- Returns:
- the attribute
-
setAttribute
public void setAttribute(java.lang.String name, java.lang.Object value)set the Attribute with the given name - by delegating to NodeUtils- Specified by:
setAttributein interfaceHTMLElement- Parameters:
name- - the name of the attribute to setvalue- - the value to set
-
removeAttribute
public void removeAttribute(java.lang.String name)
remove the Attribute with the given name - by delegating to NodeUtils- Specified by:
removeAttributein interfaceHTMLElement- Parameters:
name- - the name of the attribute to remove
-
isSupportedAttribute
public boolean isSupportedAttribute(java.lang.String name)
Description copied from interface:HTMLElementReturns true if this element may have an attribute with the specified name.- Specified by:
isSupportedAttributein interfaceHTMLElement
-
getAttribute
protected java.lang.String getAttribute(java.lang.String name, java.lang.String defaultValue)
-
getNode
public org.w3c.dom.Node getNode()
Description copied from interface:HTMLElementReturns the DOM node underlying this element.- Specified by:
getNodein interfaceHTMLElement
-
supportAttribute
protected void supportAttribute(java.lang.String name)
-
-