/** * @param Element $element Element being mixed into * @param array $config Configuration options * @param number|null $config['tabIndex'] Tab index value. Use 0 to use default ordering, use -1 to * prevent tab focusing, use null to suppress the `tabindex` attribute. (default: 0) */ public function __construct(Element $element, array $config = array()) { // Parent constructor $target = isset($config['tabIndexed']) ? $config['tabIndexed'] : $element; parent::__construct($element, $target, $config); // Initialization $this->setTabIndex(isset($config['tabIndex']) ? $config['tabIndex'] : 0); }
/** * @param Element $element Element being mixed into * @param array $config Configuration options * @param string $config['title'] Title. If not provided, the static property 'title' is used. */ public function __construct(Element $element, array $config = array()) { // Parent constructor $target = isset($config['titled']) ? $config['titled'] : $element; parent::__construct($element, $target, $config); // Initialization $this->setTitle(isset($config['title']) ? $config['title'] : (isset($element::$title) ? $element::$title : null)); }
/** * @param Element $element Element being mixed into * @param array $config Configuration options * @param string|string[] $config['flags'] Flags describing importance and functionality, e.g. * 'primary', 'safe', 'progressive', 'destructive' or 'constructive' */ public function __construct(Element $element, array $config = array()) { // Parent constructor $target = isset($config['flagged']) ? $config['flagged'] : $element; parent::__construct($element, $target, $config); // Initialization $this->setFlags(isset($config['flags']) ? $config['flags'] : null); }
/** * @param Element $element Element being mixed into * @param array $config Configuration options * @param string $config['indicator'] Symbolic indicator name */ public function __construct(Element $element, array $config = array()) { // Parent constructor // FIXME 'indicatorElement' is a very stupid way to call '$indicator' $target = isset($config['indicatorElement']) ? $config['indicatorElement'] : new Tag('span'); parent::__construct($element, $target, $config); // Initialization $this->target->addClasses(array('oo-ui-indicatorElement-indicator')); $this->setIndicator(isset($config['indicator']) ? $config['indicator'] : null); }
/** * @param Element $element Element being mixed into * @param array $config Configuration options * @param boolean $config['framed'] Render button with a frame (default: true) */ public function __construct(Element $element, array $config = array()) { // Parent constructor $target = isset($config['button']) ? $config['button'] : new Tag('a'); parent::__construct($element, $target, $config); // Initialization $this->element->addClasses(array('oo-ui-buttonElement')); $this->target->addClasses(array('oo-ui-buttonElement-button')); $this->toggleFramed(isset($config['framed']) ? $config['framed'] : true); $this->target->setAttributes(array('role' => 'button')); }
/** * @param Element $element Element being mixed into * @param array $config Configuration options */ public function __construct(Element $element, array $config = array()) { // Parent constructor $target = isset($config['group']) ? $config['group'] : new Tag('div'); parent::__construct($element, $target, $config); }