phpMv  -UI toolkit 2.4.12
jQuery, jQuery UI, Twitter Bootstrap and Semantic-UI library for php & php MVC Frameworks
HtmlFormDropdown.php
Go to the documentation of this file.
1 <?php
3 
7 
9 
10  public function __construct($identifier, $items = array(), $label = NULL, $value = "", $multiple = false, $associative = true) {
11  parent::__construct("field-" . $identifier, (new HtmlDropdown("dropdown-" . $identifier, $value, $items, $associative))->asSelect($identifier, $multiple), $label);
12  $this->_identifier = $identifier;
13  }
14 
15  public function setItems($items) {
16  return $this->getField()->setItems($items);
17  }
18 
19  public function addItem($item, $value = NULL, $image = NULL) {
20  return $this->getField()->addItem($item, $value, $image);
21  }
22 
23  public static function multipleDropdown($identifier, $items = array(), $label = NULL, $value = "", $associative = true) {
24  return new HtmlFormDropdown($identifier, $items, $label, $value, true, $associative);
25  }
26 
31  public function getDataField() {
32  return $this->getField()->getInput();
33  }
34 
35  public function asSelect($name = NULL, $multiple = false, $selection = true) {
36  $this->getField()->asSelect($name, $multiple, $selection);
37  return $this;
38  }
39 
40  public function setClearable($value) {
41  return $this->getField()->setClearable($value);
42  }
43 
49  public function asButton($floating = false) {
50  $field = $this->content["field"];
51  $label = $this->content["label"];
52  $field->addContent($label);
53  $this->content = [
54  "field" => $field
55  ];
56  $this->content["field"]->asButton($floating);
57  return $this->content["field"];
58  }
59 
68  public function addAction($action, $direction = Direction::RIGHT, $icon = NULL, $labeled = false) {
69  $this->getField()->setStyle('display:inline-block; width: auto');
70  $actionO = $action;
71  if (\is_object($action) === false) {
72  $actionO = new HtmlButton("action-" . $this->identifier, $action);
73  if (isset($icon))
74  $actionO->addIcon($icon, true, $labeled);
75  }
76  $this->addContent($actionO, \strstr($direction, Direction::LEFT) !== false);
77  return $actionO;
78  }
79 }
Semantic Button component.
Definition: HtmlButton.php:18
addContent($content, $before=false)
__construct($identifier, $items=array(), $label=NULL, $value="", $multiple=false, $associative=true)
addAction($action, $direction=Direction::RIGHT, $icon=NULL, $labeled=false)
static multipleDropdown($identifier, $items=array(), $label=NULL, $value="", $associative=true)
asSelect($name=NULL, $multiple=false, $selection=true)