1: <?php
2:
3: /**
4: * This file is part of the Nette Framework (https://nette.org)
5: *
6: * Copyright (c) 2004 David Grudl (http://davidgrudl.com)
7: *
8: * For the full copyright and license information, please view
9: * the file license.txt that was distributed with this source code.
10: */
11:
12: namespace Nette\Forms;
13:
14: use Nette;
15:
16:
17:
18: /**
19: * Check box control. Allows the user to select a true or false condition.
20: *
21: * @author David Grudl
22: */
23: class Checkbox extends FormControl
24: {
25:
26: /**
27: * @param string label
28: */
29: public function __construct($label = NULL)
30: {
31: parent::__construct($label);
32: $this->control->type = 'checkbox';
33: $this->value = FALSE;
34: }
35:
36:
37:
38: /**
39: * Sets control's value.
40: * @param bool
41: * @return Checkbox provides a fluent interface
42: */
43: public function setValue($value)
44: {
45: $this->value = is_scalar($value) ? (bool) $value : FALSE;
46: return $this;
47: }
48:
49:
50:
51: /**
52: * Generates control's HTML element.
53: * @return Nette\Web\Html
54: */
55: public function getControl()
56: {
57: return parent::getControl()->checked($this->value);
58: }
59:
60: }
61: