ButtonControl
- Object
- SitedObject
- Control
- ContainerControl
- ButtonControl
Remarks
ButtonControl is used to generate a clickable button.
ButtonControl renders either as a <input>, a <a> or a <button>
element, depending on whether it has childControls and on the value of the
ID_isLink
attribute. See ButtonControl.getTagName().
ButtonControl fires an ID_click
event when the user clicks on the
button.
For standard and link buttons, the text for the button can be specified
using the ID_text
property.
To create image buttons, add a <img> element as a child of the button control.
Properties
ID_animators (inherited from Control) | A SitedList of animators. |
ID_bubbleEvent | The event this button bubbles up when it is clicked. |
ID_childControls (inherited from ContainerControl) | A SitedList of child controls. |
ID_controlId (inherited from Control) | The ID this control is known in the nearest binding container parent. |
ID_enabled | True if the user can click on this button, false otherwise. |
ID_eventMask (inherited from Control) | (Advanced) A comma-separated list of peer events this control should receive. |
ID_isBindingContainer (inherited from Control) | (Advanced) Force this control to act as a binding container. |
ID_isLink | Set to true to render this button as an HTML anchor. |
ID_isPeerless (inherited from Control) | (Advanced) Set this to true to prevent this control from generating a peer element in the rendered HTML. |
ID_submitters (inherited from Control) | A SitedList of submitters. |
ID_tagName (inherited from Control) | Overrides the default HTML tag name used for this control. |
ID_text | The text label to show in the button. If the button has child elements, the ID_text property is ignored. |
ID_visible (inherited from Control) | True if this control is visible, false if it is hidden. |
Events
ID_click | Event handler called when the button is clicked. |
ID_mouseDown (inherited from Control) | Event handler called when a mouse button is pressed down. |
ID_mouseMove (inherited from Control) | Event handler called when the mouse is moved. |
ID_mouseOut (inherited from Control) | Event handler called when a leaves a control. |
ID_mouseOver (inherited from Control) | Event handler called when a mouse moves over a control. |
ID_mouseUp (inherited from Control) | Event handler called when a mouse button is released. |
Methods
acceptsDrop (inherited from Control) | Called to determine if this control will accept a drop. |
addBinding (inherited from Control) | Adds a databinding between a property on this object and a binding path. |
addBindingEx (inherited from Control) | Extended entry point for adding a binding. |
addCalculatedBinding (inherited from Control) | Adds a calculated binding for a property. |
addChild (inherited from ContainerControl) | Add a child control to this ContainerControl. |
addClassName (inherited from Control) | Adds a CSS class to this controls "class" attribute |
addEventHandler (inherited from SitedObject) | Adds a delegate to be called when the specified eventId occurs on this object. |
animateEx (inherited from Control) | Animates a property to a value. |
blur (inherited from Control) | Tells this control's peer to relinquish keyboard focus. |
bubble (inherited from Control) | Bubbles a message up the control hierarchy - calls onBubbleEvent on this control and each of its parents. |
captureMouse (inherited from Control) | Register a control to receive mouse move/up events |
construct (inherited from Control) | Used to initialize a markup control. |
equals (inherited from SitedObject) | Tests if two objects are equal. |
fireEventHandler (inherited from SitedObject) | Invokes any user event handlers registered for a particular event using SitedObject.addEventHandler(). |
focus (inherited from Control) | Tells this control's peer to request keyboard focus. |
getBindingContainer (inherited from Control) | Gets this object's nearest enclosing binding container. |
getBindingStatus (inherited from SitedObject) | Provides debugging information on bindings for this object. |
getChild (inherited from ContainerControl) | Gets the n'th child |
getEventMask (inherited from Control) | Gets an object indicating which peer events this control is interested in. |
getParent (inherited from Control) | Gets the parent Control of this control. |
getPathValue (inherited from SitedObject) | Traverses a binding path and returns the value at the end of it. |
getPeer (inherited from Control) | Gets the peer DOM element associated with this control. |
getPeerForParent (inherited from Control) | Gets the peer element of this control that the parent control should use in DOM manipulations. |
getPropertyInfo (inherited from SitedObject) | Gets information on a property. |
getResource (inherited from Control) | Given the ID of a resource, returns the resource's value. |
getSite (inherited from SitedObject) | Gets this object's site. |
getTagName | (Override) Gets the Html element tag used by this button control. |
getText | Gets the text shown in the button. |
getValue (inherited from Control) | Gets a property, style or attribute. |
getViewState (inherited from Control) | Retrieve any viewstate that has been saved for this control in a previous session. |
getViewStateId (inherited from Control) | Get a unique and consistent viewstateId for this control. |
invalidateLayout (inherited from Control) | Tells the layout system to redo layout. |
modifyDOM (inherited from ContainerControl) | Called to manipulate the DOM peer node of this control. |
onBubbleEvent (inherited from Control) | Called to handle a bubbled event. |
onClick | Called when the button is clicked to fire an ID_click event. |
onDragEvent (inherited from Control) | Called to handle a drag drop event.. |
onFirstRender (inherited from Control) | Called the first time a control is rendered. |
onPeerCreated (inherited from Control) | Called when a peer is created. |
onPeerEvent (inherited from Control) | Called to dispatch low level events that arise in the Dom. |
onSetValue (inherited from ContainerControl) | Called by SitedObject.setValue() when a property value is set on this object. |
onSited (inherited from SitedObject) | Called when this object is sited. |
onSitedRoot (inherited from Control) | Called when a control is added to the main control tree. |
onUnsited (inherited from SitedObject) | Called when this object is about to lose its site. |
onUnsitedRoot (inherited from Control) | Called when a control is removed from the main control tree. |
onValueSited (inherited from ContainerControl) | Called when an object is sited within this object. |
onValueUnsited (inherited from ContainerControl) | Called when an object is about to be unsited in this. |
onViewStateChanged (inherited from Control) | Overridable. Controls implement this method to update their viewstate. |
rebuildInnerHtml (inherited from ContainerControl) | Updates this controls innerHTML. |
reflectOnBoundValue (inherited from Control) | Gets runtime reflection information on an underlying bound object. |
removeChild (inherited from ContainerControl) | Remove a child control from this ContainerControl. |
removeClassName (inherited from Control) | Removes a CSS class from this controls "class" attribute |
removeEventHandler (inherited from SitedObject) | Remove an existing delegate from the list of delegates for the specified event. |
render (inherited from Control) | Places the Html representation of this control into the htmlBuilder. |
renderAttributes (inherited from Control) | Called by Control.render() to render attributes for this control. |
renderChildren (inherited from ContainerControl) | Places the Html markup for all the Control inside this control into the htmlBuilder. |
setBounds (inherited from Control) | Convenience method to set the left/top/width/height of an element. |
setInitialValues (inherited from SitedObject) | Sets multiple property values on an object (during initialization only) |
setPathValue (inherited from SitedObject) | Traverses a binding path and sets the value at the end of it. |
setText | Sets the text shown in the label. |
setValue (inherited from Control) | Sets a property, style or attribute. |
setViewState (inherited from Control) | Save viewstate that should persist across sessions. |
startAnimator (inherited from Control) | Starts an animation. |
startDragDrop (inherited from Control) | Start a drag drop operation. |
stopAnimator (inherited from Control) | Stops an animation. |
toString (inherited from SitedObject) | Returns a string representation of this object. |
ButtonControl getTagName method (override)
JavaScript
var strVal = buttonControl.getTagName()
Remarks
ID_tagName
is set, this returns the value of ID_tagName
. Otherwise,
if ID_isLink
is true, this returns "a". Otherwise, if the control has any
child elements, this returns "button". Otherwise it returns "input".
Returns
Base Implementation
ButtonControl getText method
JavaScript
var strVal = buttonControl.getText()
Remarks
Returns
See Also
ButtonControl ID_bubbleEvent property
JavaScript
var strVal = buttonControl.getValue(ID_bubbleEvent)
buttonControl.setValue(ID_bubbleEvent, strVal)
Xml
<j:Button bubbleEvent="string" ... >
Remarks
Example
In Xml, writing:
<j:Button bubbleEvent="selectItem" text="Button"/>
creates a button that, when clicked, bubbles an ID_selectItem event - telling its nearest List container to select the item corresponding to the button that was clicked.
In JavaScript, to set ID_bubbleEvent, you write:
var btn = new ButtonControl(); btn.setValue(ID_bubbleEvent, ID_selectItem); ...
ButtonControl ID_click event
JavaScript
buttonControl.addEventHandler(ID_click, new Delegate(obj, func))
Xml
<j:Button click="alert('click happened')" ... >
Example
In Xml, writing:
<j:Button click="alert('hello');" text="Foo"/>
creates a click event handler on the button. When the button is clicked, an alert pops up saying 'hello'.
In JavaScript, you write:
// create a click function function myClick() { alert('Hello'); } // create a button var btn = new ButtonControl(); // register myClick as an event handler for the button btn.addEventHandler(ID_click, new Delegate(btn, myClick));
ButtonControl ID_enabled property
JavaScript
var boolVal = buttonControl.getValue(ID_enabled)
buttonControl.setValue(ID_enabled, boolVal)
Xml
<j:Button enabled="true" ... >
or
<j:Button enabled="false" ... >
ButtonControl ID_isLink property
JavaScript
var boolVal = buttonControl.getValue(ID_isLink)
buttonControl.setValue(ID_isLink, boolVal)
Xml
<j:Button isLink="true" ... >
or
<j:Button isLink="false" ... >
Remarks
When ID_isLink
is true, the button control renders
as <a onclick="..."> ID_text or children here ... </a>
.
When ID_isLink
is false, if the button has
any children, the button renders as
<span onclick="...">{children}</span>
. If
the button has no children,
it renders as <input type="button" value="{text}">
.
ButtonControl ID_text property
JavaScript
var strVal = buttonControl.getValue(ID_text)
buttonControl.setValue(ID_text, strVal)
Xml
<j:Button text="string" ... >
ButtonControl onClick method
JavaScript
buttonControl.onClick(eventArgs)
Remarks
ID_click
event. Subsequently, it looks at
the ID_bubbleEvent
property - if ID_bubbleEvent
is
non-null, the specified bubble event name is raised
using SitedObject.bubbleEvent().
ButtonControl setText method
JavaScript
buttonControl.setText(str)