summaryrefslogtreecommitdiff
path: root/vendor/oojs/oojs-ui/php/layouts/FieldsetLayout.php
blob: f9faa353c1951fa6dec63aa685cdf74a8c3b7692 (plain)
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
<?php

namespace OOUI;

/**
 * Layout made of a fieldset and optional legend.
 *
 * Just add FieldLayout items.
 */
class FieldsetLayout extends Layout {
	/**
	 * @param array $config Configuration options
	 * @param FieldLayout[] $config['items'] Items to add
	 */
	public function __construct( array $config = array() ) {
		// Parent constructor
		parent::__construct( $config );

		// Mixins
		$this->mixin( new IconElement( $this, $config ) );
		$this->mixin( new LabelElement( $this, $config ) );
		$this->mixin( new GroupElement( $this, $config ) );

		// Initialization
		$this
			->addClasses( array( 'oo-ui-fieldsetLayout' ) )
			->prependContent( $this->icon, $this->label, $this->group );
		if ( isset( $config['items'] ) ) {
			$this->addItems( $config['items'] );
		}
	}
}