aboutsummaryrefslogtreecommitdiffstats
path: root/includes/htmlform/fields/HTMLTextFieldWithButton.php
blob: c43c1530d57bdda9bad549362b3047b045272ae7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?php

namespace MediaWiki\HTMLForm\Field;

use MediaWiki\HTMLForm\HTMLFormActionFieldLayout;

/**
 * Creates a text input field with a button assigned to the input field.
 *
 * @stable to extend
 */
class HTMLTextFieldWithButton extends HTMLTextField {
	/** @var HTMLFormFieldWithButton */
	protected $mClassWithButton = null;

	/**
	 * @stable to call
	 * @inheritDoc
	 */
	public function __construct( $info ) {
		$this->mClassWithButton = new HTMLFormFieldWithButton( $info );
		parent::__construct( $info );
	}

	public function getInputHTML( $value ) {
		return $this->mClassWithButton->getElement( parent::getInputHTML( $value ) );
	}

	protected function getFieldLayoutOOUI( $inputField, $config ) {
		$buttonWidget = $this->mClassWithButton->getInputOOUI( '' );
		return new HTMLFormActionFieldLayout( $inputField, $buttonWidget, $config );
	}
}

/** @deprecated class alias since 1.42 */
class_alias( HTMLTextFieldWithButton::class, 'HTMLTextFieldWithButton' );