1  <?php
 2  /* Copyright (c) 2012, Geert Bergman (geert@scrivo.nl)
 3   * All rights reserved.
 4   *
 5   * Redistribution and use in source and binary forms, with or without
 6   * modification, are permitted provided that the following conditions are met:
 7   *
 8   * 1. Redistributions of source code must retain the above copyright notice,
 9   *    this list of conditions and the following disclaimer.
10   * 2. Redistributions in binary form must reproduce the above copyright notice,
11   *    this list of conditions and the following disclaimer in the documentation
12   *    and/or other materials provided with the distribution.
13   * 3. Neither the name of "Scrivo" nor the names of its contributors may be
14   *    used to endorse or promote products derived from this software without
15   *    specific prior written permission.
16   *
17   * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
18   * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19   * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20   * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
21   * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22   * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23   * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24   * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25   * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26   * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27   * POSSIBILITY OF SUCH DAMAGE.
28   *
29   * $Id: CheckBox.php 841 2013-08-19 22:19:47Z geert $
30   */
31  
32  /**
33   * Implementation of the \Scrivo\ListItemProperty\CheckBox class.
34   */
35  
36  namespace Scrivo\ListItemProperty;
37  
38  /**
39   * Property to hold a check (true/false) value.
40   *
41   * @property boolean $checked The value of the check box.
42   */
43  class CheckBox extends \Scrivo\ListItemProperty {
44  
45      /**
46       * Implementation of the readable properties using the PHP magic
47       * method __get().
48       *
49       * @param string $name The name of the property to get.
50       *
51       * @return mixed The value of the requested property.
52       */
53      public function __get($name) {
54          switch($name) {
55              // Get the checkbox property.
56              case "checked":
57                  return    $this->data->equals(new \Scrivo\String("checked"));
58          }
59          return parent::__get($name);
60      }
61  
62      /**
63       * Implementation of the writable properties using the PHP magic
64       * method __set().
65       *
66       * @param string $name The name of the property to set.
67       * @param mixed $value The value of the property to set.
68       */
69      public function __set($name$value) {
70          switch($name) {
71              // Set the checkbox property.
72              case "checked":
73                  $this->data = new \Scrivo\String($value?"checked":"");
74                  return;
75          }
76          parent::__set($name$value);
77      }
78  
79  }
80  
81  ?>

Documentation generated by phpDocumentor 2.0.0a12 and ScrivoDocumentor on August 29, 2013