OOUI
Object-Oriented User Interface
OOUI\ButtonWidget Class Reference

Generic widget for buttons. More...

+ Inheritance diagram for OOUI\ButtonWidget:
+ Collaboration diagram for OOUI\ButtonWidget:

Public Member Functions

 __construct (array $config=[])
 
 getHref ()
 Get hyperlink location. More...
 
 getTarget ()
 Get hyperlink target. More...
 
 getNoFollow ()
 Get search engine traversal hint. More...
 
 getRel ()
 Get the relationship attribute of the hyperlink. More...
 
 setHref ( $href)
 Set hyperlink location. More...
 
 updateHref ()
 Update the href attribute, in case of changes to href or disabled state. More...
 
 setTarget ( $target)
 Set hyperlink target. More...
 
 setNoFollow ( $noFollow)
 Set search engine traversal hint. More...
 
 setRel ( $rel)
 Set the relationship attribute of the hyperlink. More...
 
 setActive ( $active=null)
 Toggle active state. More...
 
 isActive ()
 Check if button is active. More...
 
 getConfig (&$config)
 @inheritDoc
 
- Public Member Functions inherited from OOUI\Widget
 isDisabled ()
 Check if the widget is disabled. More...
 
 setDisabled ( $disabled)
 Set the disabled state of the widget. More...
 
 getInputId ()
 Get an ID of a labelable node which is part of this widget, if any, to be used for <label for> value. More...
 
 setLabelledBy ( $id)
 Set the element with the given ID as a label for this widget. More...
 
- Public Member Functions inherited from OOUI\Element
 getTagName ()
 Get the HTML tag name. More...
 
 toggle ( $show=null)
 Toggle visibility of an element. More...
 
 getData ()
 Get element data. More...
 
 setData ( $data)
 Set element data. More...
 
 supports ( $methods)
 Check if element supports one or more methods. More...
 
 registerConfigCallback (callable $func)
 Register an additional function to call when building the config. More...
 
 toString ()
 Render element into HTML. More...
 
- Public Member Functions inherited from OOUI\Tag
 __construct ( $tag='div')
 Create element. More...
 
 hasClass ( $class)
 Check for CSS class. More...
 
 addClasses (array $classes)
 Add CSS classes. More...
 
 removeClasses (array $classes)
 Remove CSS classes. More...
 
 toggleClasses (array $classes, $toggle=null)
 Toggle CSS classes. More...
 
 getTag ()
 
 getAttribute ( $key)
 Get HTML attribute value. More...
 
 setAttributes (array $attributes)
 Add HTML attributes. More...
 
 setValue ( $value)
 Set value of input element ('value' attribute for most, element content for textarea). More...
 
 removeAttributes (array $keys)
 Remove HTML attributes. More...
 
 removeContent (... $content)
 Remove any items that match by reference. More...
 
 appendContent (... $content)
 Add content to the end. More...
 
 prependContent (... $content)
 Add content to the beginning. More...
 
 clearContent ()
 Remove all content. More...
 
 getElementGroup ()
 Get group element is in. More...
 
 setElementGroup ( $group)
 Set group element is in. More...
 
 setInfusable ( $infusable)
 Enable widget for client-side infusion. More...
 
 isInfusable ()
 Get client-side infusability. More...
 
 ensureInfusableId ()
 Ensure that this given Tag is infusable and has a unique id attribute. More...
 
 __toString ()
 Magic method implementation. More...
 

Static Public Attributes

static string $tagName = 'span'
 
- Static Public Attributes inherited from OOUI\Element
static string $tagName = 'div'
 HTML tag name. More...
 
static string $defaultDir = 'ltr'
 Default text direction, used for some layout calculations. More...
 

Protected Attributes

bool $active = false
 Whether button is active.
 
string $href = null
 Hyperlink to visit when clicked.
 
string $target = null
 Target to open hyperlink in.
 
bool $noFollow = true
 Search engine traversal hint. More...
 
string[] $rel = []
 Relationship attributes, such as the noFollow field above, or noopener for the hyperlink.
 
- Protected Attributes inherited from OOUI\Widget
bool $disabled = false
 Disabled. More...
 
- Protected Attributes inherited from OOUI\Element
mixed $data = null
 Element data.
 
bool $visible = true
 
array $ownClasses = []
 Strings of the CSS classes explicitly configured for this element (as opposed to $classes, which contains all classes for this element).
 
callable[] $configCallbacks = []
 
- Protected Attributes inherited from OOUI\Tag
string $tag = ''
 Tag name for this instance. More...
 
array $attributes = []
 Attributes. More...
 
array $classes = []
 Classes. More...
 
array $content = []
 Content. More...
 
GroupElement null $elementGroup = null
 Group. More...
 
bool $infusable = false
 Infusion support. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from OOUI\Element
static warnDeprecation ( $message='')
 Emits a deprecation warning with provided message. More...
 
static getDir (Tag $element)
 Get the direction of the user interface for a given element. More...
 
static setDefaultDir ( $dir)
 Set the default direction of the user interface. More...
 
static configFromHtmlAttributes (array $attrs)
 A helper method to massage an array of HTML attributes into a format that is more likely to work with an OOUI PHP element, camel-casing attribute names and setting values of boolean ones to true. More...
 
- Static Public Member Functions inherited from OOUI\Tag
static generateElementId ()
 Generate a unique ID for element. More...
 
static isSafeUrl ( $url)
 Check whether user-supplied URL is safe, that is, whether outputting it will not result in XSS vulnerability. More...
 
- Protected Member Functions inherited from OOUI\Element
 getJavaScriptClassName ()
 The class name of the JavaScript version of this widget. More...
 
 getGeneratedAttributes ()
 

Detailed Description

Generic widget for buttons.

Constructor & Destructor Documentation

◆ __construct()

OOUI\ButtonWidget::__construct ( array  $config = [])
Parameters
array$configConfiguration options
  • bool $config['active'] Whether button should be shown as active (default: false)
  • string $config['href'] Hyperlink to visit when clicked
  • string $config['target'] Target to open hyperlink in
  • bool $config['noFollow'] Search engine traversal hint (default: true)
  • string|string[] $config['rel'] Relationship attributes for the hyperlink

Reimplemented from OOUI\Widget.

Member Function Documentation

◆ getHref()

OOUI\ButtonWidget::getHref ( )

Get hyperlink location.

Returns
string Hyperlink location

◆ getNoFollow()

OOUI\ButtonWidget::getNoFollow ( )

Get search engine traversal hint.

Returns
bool Whether search engines should avoid traversing this hyperlink

◆ getRel()

OOUI\ButtonWidget::getRel ( )

Get the relationship attribute of the hyperlink.

Returns
string[] Relationship attributes that apply to the hyperlink

◆ getTarget()

OOUI\ButtonWidget::getTarget ( )

Get hyperlink target.

Returns
string Hyperlink target

◆ isActive()

OOUI\ButtonWidget::isActive ( )

Check if button is active.

Returns
bool Button is active

◆ setActive()

OOUI\ButtonWidget::setActive (   $active = null)

Toggle active state.

A button should be marked as active when clicking it would only refresh the page.

Parameters
bool | null$activeMake button active
Returns
$this

◆ setHref()

OOUI\ButtonWidget::setHref (   $href)

Set hyperlink location.

Parameters
string | null$hrefHyperlink location, null to remove
Returns
$this

◆ setNoFollow()

OOUI\ButtonWidget::setNoFollow (   $noFollow)

Set search engine traversal hint.

Parameters
bool$noFollowTrue if search engines should avoid traversing this hyperlink
Returns
$this

◆ setRel()

OOUI\ButtonWidget::setRel (   $rel)

Set the relationship attribute of the hyperlink.

Parameters
string | string[]$relRelationship attributes for the hyperlink
Returns
$this

◆ setTarget()

OOUI\ButtonWidget::setTarget (   $target)

Set hyperlink target.

Parameters
string | null$targetHyperlink target, null to remove
Returns
$this

◆ updateHref()

OOUI\ButtonWidget::updateHref ( )

Update the href attribute, in case of changes to href or disabled state.

Returns
$this

Member Data Documentation

◆ $noFollow

bool OOUI\ButtonWidget::$noFollow = true
protected

Search engine traversal hint.

True if search engines should avoid following this hyperlink.


The documentation for this class was generated from the following file: