HEX
Server: Microsoft-IIS/10.0
System: Windows NT ITPWINWEBSVR22 10.0 build 20348 (Windows Server 2022) AMD64
User: www.conferencesearch.co.uk (0)
PHP: 8.3.30
Disabled: NONE
Upload Files
File: D:/web/itpartnership/radphp/rpcl/checklst.inc.php
<?php
/**
*  This file is part of the RPCL project
*
*  Copyright (c) 2004-2011 Embarcadero Technologies, Inc.
*
*  Checkout AUTHORS file for more information on the developers
*
*  This library is free software; you can redistribute it and/or
*  modify it under the terms of the GNU Lesser General Public
*  License as published by the Free Software Foundation; either
*  version 2.1 of the License, or (at your option) any later version.
*
*  This library is distributed in the hope that it will be useful,
*  but WITHOUT ANY WARRANTY; without even the implied warranty of
*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
*  Lesser General Public License for more details.
*
*  You should have received a copy of the GNU Lesser General Public
*  License along with this library; if not, write to the Free Software
*  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307
*  USA
*
*/

use_unit("controls.inc.php");
use_unit("stdctrls.inc.php");

/**
 * Base class for CheckListBox
 *
 * A class for generating a list where all items have a checkbox at the left.
 * Users can check or uncheck items in the list.
 */
class CustomCheckListBox extends FocusControl
{
        protected $_items = array();
        protected $_borderstyle = bsSingle;
        protected $_borderwidth="1";
        protected $_bordercolor="#CCCCCC";

        protected $_onclick = null;
        protected $_onsubmit = null;
        protected $_orientation="orVertical";

//        protected $_datasource = null;
//        protected $_datafield = "";
        protected $_taborder=0;
        protected $_tabstop=1;
        protected $_columns=1;
        protected $_header=array();
        protected $_headerbackgroundcolor="#CCCCCC";
        protected $_headercolor="#FFFFFF";
        protected $_sorted=false;


        function __construct($aowner = null)
        {
                //Calls inherited constructor
                parent::__construct($aowner);

                $this->Clear();

                $this->Width = 185;
                $this->Height = 89;

                $this->ControlStyle="csRenderOwner=1";
                $this->ControlStyle="csRenderAlso=StyleSheet";
        }

        function loaded()
        {
                parent::loaded();
//                $this->writeDataSource($this->_datasource);
        }

        function preinit()
        {
                $submitted = $this->input->{$this->Name};

                if (is_object($submitted))
                {
                    $this->_checked=$submitted->asStringArray();
                }
                else
                {
                  //There is a post, but nothing for this control posted, so clean the array
                  if ($_SERVER['REQUEST_METHOD']=='POST')
                  {
                    $this->_checked=array();
                  }
                }
        }

        function init()
        {
                parent::init();

                $submitted = $this->input->{$this->Name};

                if (is_object($submitted))
                {
                        // Allows the OnSubmit event to be fired because it is not
                        // a mouse or keyboard event.
                        if ($this->_onsubmit != null)
                        {
                                $this->callEvent('onsubmit', array());
                        }
                }

                $submitEvent = $this->input->{$this->readJSWrapperHiddenFieldName()};

                if (is_object($submitEvent) && $this->_enabled == 1)
                {
                        // Checks if a click event has been fired
                        if ($this->_onclick != null && $submitEvent->asString() == $this->readJSWrapperSubmitEventValue($this->_onclick))
                        {
                                $this->callEvent('onclick', array());
                        }
                }
        }


        //TODO: Add properties to allow you get/set which items are checked on the list
        function dumpContents()
        {
                $events = "";
                if ($this->_enabled == 1)
                {
                        // Gets the string for the JS Events
                        $events = $this->readJsEvents();

                        // Adds or replaces the JS events with the wrappers if necessary
                        $this->addJSWrapperToEvents($events, $this->_onclick,    $this->_jsonclick,    "onclick");
                }

                if ($this->_borderstyle == bsNone )
                {       $border = ""; }
                else
                {       $border = "solid"; }
                if ($this->_borderwidth !=="")
                {       $border .= " " . $this->_borderwidth . "px"; }
                if ($this->_bordercolor !=="")
                {       $border .= " " . $this->_bordercolor; }
                if ($border != "")
                {       $border = "border: " . $border . ";"; }

                $class = ($this->Style != "") ? "class=\"$this->StyleClass\"" : "";

                //let's check if it is a MCheckBoxGroup
                $Mbox=array_key_exists("data-role",$this->_attributes);

                if(!$Mbox)
                  echo "  <DIV style=\"OVERFLOW-Y:auto; OVERFLOW-X:hidden; WIDTH:{$this->Width}px; HEIGHT:{$this->Height}px; $border\" $class>\n";

                $style="";
                if ($this->Style=="")
                {
                        // Gets the Font attributes
                        $style .= $this->Font->FontString;

                        if ($this->Color != "")
                        { $style  .= "background-color: " . $this->Color . ";"; }

                        // Adds the cursor to the style
                        if ($this->_cursor != "")
                        {
                                $cr = strtolower(substr($this->_cursor, 2));
                                $style .= "cursor: $cr;";
                        }
                }

                $w=$this->_width;
                $h=$this->_height;

                $spanstyle = $style;

                // Sets enabled/disabled status
                $enabled = (!$this->_enabled) ? "disabled=\"disabled\"" : "";

                // Sets tab order if tab stop set to true
                $taborder = ($this->_tabstop == 1) ? "tabindex=\"$this->_taborder\"" : "";

                 //Add correct layout table for the grouping
                $style.="table-layout:fixed;";

                // Gets the hint attribute; returns: title="[HintText]"
                $hint = $this->getHintAttribute();

                /*if ($style != "") $style = "style=\"$style\"";
                if ($spanstyle != "") $spanstyle = "style=\"$spanstyle\""; */

                // Gets the alignment of the Items
                switch ($this->_alignment)
                {
                        case agNone   : $alignment = ""; break;
                        case agLeft   : $alignment = "align=\"Left\""; break;
                        case agCenter : $alignment = "align=\"Center\""; break;
                        case agRight  : $alignment = "align=\"Right\""; break;
                        default       : $alignment = ""; break;
                }

//                if (($this->ControlState & csDesigning) != csDesigning)
//                {
//                        if ($this->hasValidDataField())
//                        {
//                                //Checks if the value of the current data-field is in the items array as value
//                                $val = $this->readDataFieldValue();
//
//                                //Dumps hidden fields to know which record to update
//                                $this->dumpHiddenKeyFields();
//                        }
//                }

                // Calls the OnShow event if assigned so the Items property can be changed
                if ($this->_onshow != null) $this->callEvent('onshow', array());

                $hinttext=$this->_hint!=$this->defaultHint()&& $this->ShowHint==true?$this->_hint:$this->defaultHint();

                //get the attributes for the element an its children
                $attributes=$this->strAttributes();
                $nestedattributes=$this->strNestedAttributes();

                echo "    <table cellpadding=\"0\" cellspacing=\"0\" title=\"$hinttext\" ".($style!=""?"style=\"$style\"":"")." $class $attributes>";
                if (is_array($this->_items)&& count($this->_items)>0)
                {/*
                        // Uses $index to call the JS CheckListBox function
                        $index = 0;
                        foreach ($this->_items as $key => $item)
                        {
                                // Adds the checked attribute if the itemindex is the current item
                                $checked = ((isset($this->_checked[$key])) && ($this->_checked[$key]==1)) ? "checked=\"checked\"" : "";
                                // Allows only an OnClick if enabled
                                $itemclick = ($this->_enabled == 1 && $this->Owner != null) ? "onclick=\"return CheckListBoxClick('$this->Name" . "_" . $index . "', $index);\"" : "";

                                $element = $this->Name . "_" . $key;
                                // Adds a new row for every item
                                echo "    <tr>\n";
                                echo "      <td width=\"20\"><input ID=\"$element\" type=\"checkbox\" name=\"$this->Name[$key]\" value=\"1\" $events $enabled $taborder $hint $class $checked /></td>\n";
                                echo "      <td $alignment><span ID=\"$element\" $itemclick $hint $spanstyle $class>$item</span></td>\n";
                                echo "    </tr>\n";
                                $index++;
                        }
                }
                echo "    </table>\n";*/

                        $index = 0;


                        //Avoid div by 0
                        $numItems=count($this->items);
                        if($this->_orientation=="orHorizontal")
                          $this->_columns=$numItems;

                        $columnsWidth=$w/$this->_columns;
                        $itemsPerColumn=ceil($numItems/$this->_columns);
                        $rowHeight= $h/$itemsPerColumn;
                        $itemsPerRow=ceil($numItems/$itemsPerColumn);

                        if($this->_orientation=="orHorizontal")
                          $spanstyle.="width:{$columnsWidth}px;";
                        if($Mbox)
                          $spanstyle.="height:{$rowHeight}px;white-space:nowrap;";

                        if ($style != "") $style = "style=\"$style\"";
                        if ($spanstyle != "") $spanstyle = "style=\"$spanstyle\"";

                        for($row=0; $row<$itemsPerColumn; ++$row)
                        {
                                echo "<tr>\n";

                                for($column=0; $column<$itemsPerRow; ++ $column)
                                {
                                        //echo "<td width=\"20\">\n";
                                        //do we have more items to place in this <td>?
                                        $curItemNum=$row+$itemsPerColumn*$column;
                                        if($curItemNum<$numItems)
                                        {
                                                $key=$curItemNum;
                                                $item=$this->_items[$key];

                                                $element = $this->Name . "_" . $key;

                                                $itemWidth=$columnsWidth-20;

                                                $headerStyle="";
                                                if(!$Mbox)
                                                {
                                                  if(isset($this->_header[$curItemNum])&& $this->_header[$curItemNum]==true)
                                                  {
                                                        echo "      <td width=\"20\" style=\" color:$this->_headercolor; background-color:$this->_headerbackgroundcolor \"><input ID=\"$element\" type=\"checkbox\" style=\"  visibility:hidden\" $nestedattributes ></input></td>\n";
                                                        $headerStyle=" color:$this->_headercolor; background-color:$this->_headerbackgroundcolor ";
                                                  }
                                                  else
                                                  {
                                                        //if this item is checked set it
                                                        $checked = ((isset($this->_checked[$key])) && ($this->_checked[$key]==1)) ? "checked=\"checked\"" : "";
                                                        echo "      <td width=\"20\"><input ID=\"$element\" type=\"checkbox\" name=\"$this->Name[$key]\" value=\"1\" $events $enabled $taborder $hint $class $checked $nestedattributes/></td>\n";
                                                  }
                                                }
                                                else
                                                {
                                                  echo "<td width=\"$columnsWidth\" colspan='2' style=\"height:{$rowHeight}px\" $alignment>";
                                                  $checked = ((isset($this->_checked[$key])) && ($this->_checked[$key]==1)) ? "checked=\"checked\"" : "";
                                                  echo "<input id=\"$element\" type=\"checkbox\" name=\"$this->Name[$key]\" value=\"1\" $events $enabled $taborder $hint $class $checked $nestedattributes/>";
                                                }
                                                // Allows only an OnClick if enabled
                                                $itemclick = ($this->_enabled == 1 && $this->Owner != null) ? "onclick=\"return CheckListBoxClick('$this->Name" . "_" . $index . "', $index);\"" : "";

                                                //ie needs cell style just in a span inside <td>, firefox needs them in the <td> amazing... ��
                                                if(!$Mbox)
                                                {
                                                  echo "</td><td $alignment width=\"$itemWidth\ height=\"$rowHeight\" style=\"overflow:hidden;white-space:nowrap; $headerStyle\">\n";
                                                  echo "<span id=$element  style=\"white-space:nowrap;\" $itemclick $hinttext $spanstyle $class>$item</span>\n";
                                                }
                                                else
                                                {
                                                  echo "<label for=\"$element\" $alignment $spanstyle $hinttext  $class>$item</label></td>\n";
                                                }
                                        }
                                        //echo "</td>\n";
                                }
                                echo "</tr>\n";
                        }
                }
                echo "  </table>\n";
                if(!$Mbox)
                  echo "  </DIV>";

                // Adds a hidden field to determine which radiogroup fired the event
                if ($this->_onclick != null && !$Mbox)
                {
                        echo "\n";
                        echo "<input type=\"hidden\" name=\"".$this->readJSWrapperHiddenFieldName()."\" value=\"\" />";
                }
        }

         function dumpFormItems()
        {
                        // Adds a hidden field so we can determine for which event the chart was fired
                        if ($this->_onclick != null)
                        {
                                $hiddenwrapperfield = $this->readJSWrapperHiddenFieldName();
                                echo "<input type=\"hidden\" id=\"$hiddenwrapperfield\" name=\"$hiddenwrapperfield\" value=\"\" />";
                        }
        }

        /*
        * Writes the Javascript section to the header
        */
        function dumpJavascript()
        {
                parent::dumpJavascript();

                if ($this->_enabled == 1)
                {
                        if ($this->_onclick != null && !defined($this->_onclick))
                        {
                                // Outputs the same function only once in case two or
                                //more objects use the same OnClick event handler.
                                // Otherwise, if for example two radio groups use the same
                                // OnClick event handler, it would be output twice.
                                $def=$this->_onclick;
                                define($def,1);

                                // Outputs the wrapper function
                                echo $this->getJSWrapperFunction($this->_onclick);
                        }

                        // Outputs the function only once
                        if (!defined('CheckListBoxClick'))
                        {
                                define('CheckListBoxClick', 1);

                                echo "function CheckListBoxClick(name, index)\n";
                                echo "{\n";
                                echo "  var event = event || window.event;\n";
                                echo "  var obj=document.getElementById(name);\n";
                                echo "  if (obj) {\n";
                                echo "    if (!obj.disabled) {\n";
                                echo "      obj.checked = !obj.checked;\n";
                                echo "      return obj.onclick();\n";
                                echo "    }\n";
                                echo "  }\n";
                                echo "  return false;\n";
                                echo "}\n";
                        }
                }
        }

        /**
        * Adds an item to the list and returns the number of items on the list. Each
        * item can have a key which will be used as the value when the form is posted
        * to the server.
        *
        * @see Clear(), readCount()
        *
        * @param mixed $item Value of item to add.
        * @param mixed $itemkey Key of the item in the array. Default key is used if null.
        * @return integer Return the number of items in the list.
        */
        function AddItem($item, $itemkey = null)
        {
                end($this->_items);     //Sets the array to the end
                if ($itemkey != null)   //Adds the item at specified position
                {
                        $this->_items[$itemkey] = $item;
                }
                else                    //Adds the item as the last one
                {
                        $this->_items[] = $item;
                }

                /*if($this->Sorted)
                        asort($this->_items);*/

                return($this->Count);
        }

        /**
        * Deletes all of the items from the list control by assigning an empty
        * array to the items property
        *
        * @see AddItem(), readCount()
        */
        function Clear()
        {
                $this->_items = array();
        }


        /**
        * Return the item in the list box specified by $itemkey
        *
        * Use ItemAtPos to get the value of an item specified by its key value.
        * If not item is found, null is returned
        *
        * @param string $itemkey Key of the item to search for
        * @return string|null
        */
        function ItemAtPos($itemkey)
        {
                if(isset($this->_items[$itemkey]))
                        return $this->_items[$itemkey];
                else
                        return null;
        }

        /**
        * Set the checked property for all items to true
        *
        * Use this method to check all items in the listbox, so the checkbox attached
        * shows a mark inside.
        *
        */
        function SelectAll()
        {
                foreach($this->items as $k=>$v)
                        $this->_checked[$k]=true;
        }

        /**
        * Returns the number of items in the list. This value is the count of the
        * internal items array
        *
        * @see AddItem(), Clear()
        *
        * @return integer
        */
        function readCount()                    { return count($this->_items); }

        /**
         * Specifies Border width used to display a control
         *
         * Use this property to specify the width, in pixels, of the border to
         * use when rendering this control on the browser.
         *
         * The default value is 1.
         *
         * @see readBorderColor(), readBorderStyle()
         *
         * @return integer
         */
        function readBorderWidth()              { return $this->_borderwidth; }
        function writeBorderWidth($value)       { $this->_borderwidth=$value; }
        function defaultBorderWidth()           { return 1; }

        /**
         * Specifies Border color used to display a control.
         *
         * Use this property to specify the color to be used when drawing the
         * border of this control. You can use any color specifier, from RGB to
         * a color name.
         *
         * @see readBorderWidth(), readBorderStyle()
         *
         * @return string
         */
        function readBorderColor()              { return $this->_bordercolor; }
        function writeBorderColor($value)       { $this->_bordercolor=$value; }
        function defaultBorderColor()           { return "#CCCCCC"; }

        /**
         * Specifies Border Style used to display a control
         *
         * Valid values for this property are:
         *
         * bsSingle - The control will show a single border
         *
         * bsNone - The control won't show a border
         *
         * @see readBorderWidth(), readBorderColor()
         *
         * @return enum
         */
        function readBorderStyle()              { return $this->_borderstyle; }
        function writeBorderStyle($value)       { $this->_borderstyle=$value; }
        function defaultBorderStyle()           { return bsSingle; }

        /**
        * Occurs when the user clicks the control.
        *
        * Use the OnClick event handler to respond when the user clicks the control.
        *
        * Usually OnClick occurs when the user presses and releases the left mouse button
        * with the mouse pointer over the control. This event can also occur when:
        *
        * The user selects an item in a grid, outline, list, or combo box by pressing an arrow key.
        *
        * The user presses Spacebar while a button or check box has focus.
        *
        * The user presses Enter when the active form has a default button (specified by the Default property).
        *
        * The user presses Esc when the active form has a cancel button (specified by the Cancel property).
        *
        * @return mixed Returns the event handler or null if no handler is set.
        */
        function readOnClick()                  { return $this->_onclick; }
        function writeOnClick($value)           { $this->_onclick = $value; }
        function defaultOnClick()               { return null; }

        /**
        * Occurs when the control is submitted.
        *
        * Use this event to react when the form is submitted and, therefore,
        * this control is updated with the new values sent by the user.
        *
        * @return mixed
        */
        function readOnSubmit()                 { return $this->_onsubmit; }
        function writeOnSubmit($value)          { $this->_onsubmit=$value; }
        function defaultOnSubmit()              { return null; }


        /**
        * Defines an array of items taht will be rendered as columns using
        * BackgroundHeaderColor and HeaderColor properties
        */
        function getHeader()                   { return $this->_header; }
        function setHeader($value)
        {
          //This changes string-key based array to integer-key based array
          $this->_header=array();
          reset($value);
          while (list($k,$v)=each($value))
          {
            $this->_header[$k]=$v;
          }
        }
        function defaultHeader()                { return array();        }

        //TODO: Implement data-aware properties
//        function readDataField()              { return $this->_datafield; }
//        function writeDataField($value)       { $this->_datafield = $value; }
//        function defaultDataField()           { return ""; }

//        function readDataSource()             { return $this->_datasource; }
//        function writeDataSource($value)      { $this->_datasource = $this->fixupProperty($value); }
//        function defaultDataSource()          { return null; }

        /**
        * Contains the strings that appear in the list. This is an array in which each
        * item has a key and a value ($key=>$value)
        *
        * @see AddItem(), readCount()
        *
        * @return array
        */
        function readItems()                    { return $this->_items; }
        function writeItems($value)
        {
                if (is_array($value)) { $this->_items = $value; }
                else  { $this->_items = (empty($value)) ? array() : array($value); }
        }
        function defaultItems()                 { return array(); }

        protected $_checked=array();

        /**
        * Array property which specifies which items are checked or not
        *
        * Use this property to read which items have been checked by the user or
        * to set the initial items that must be checked.
        *
        * <code>
        * <?php
        *      //This set, before the control is shown, the first and third items
        *      //to checked state and the second item will be unchecked
        *      function CheckListBox1BeforeShow($sender, $params)
        *      {
        *         $checked=array();
        *         $checked[]=1;
        *         $checked[]=0;
        *         $checked[]=1;
        *         $this->CheckListBox1->Checked=$checked;
        *      }
        * ?>
        * </code>
        *
        * <code>
        * <?php
        *      //Reading the checked property, you can know which items have been
        *      //checked by the user
        *      function Button2Click($sender, $params)
        *      {
        *               $checked=$this->CheckListBox1->Checked;
        *
        *               reset($checked);
        *               while(list($key, $val)=each($checked))
        *               {
        *                       if ($val==1) echo "The item #$key is checked<br>";
        *               }
        *      }
        * ?>
        * </code>
        * @return array
        */
        function getChecked() { return $this->_checked; }
        function setChecked($value)
        {
          //This changes string-key based array to integer-key based array
          $this->_checked=array();
          reset($value);
          while (list($k,$v)=each($value))
          {
            $this->_checked[$k]=$v;
          }
        }
        function defaultChecked() { return array(); }

        /**
        * TabOrder indicates the order in which controls are accessed when using
        * the Tab key.
        * The TabOrder value can be between 0 and 32767.
        * @see readTabStop()
        * @return integer
        */
        function readTabOrder()                 { return $this->_taborder; }
        function writeTabOrder($value)          { $this->_taborder=$value; }
        function defaultTabOrder()              { return 0; }

        /**
        * Enables or disables the TabOrder property. The browser may still assign
        * a TabOrder by itself internally. This cannot be controlled by HTML.
        * @see readTabOrder()
        * @return bool
        */
        function readTabStop()                  { return $this->_tabstop; }
        function writeTabStop($value)           { $this->_tabstop=$value; }
        function defaultTabStop()               { return 1; }


        /**
        * Specifies the number of columns that the list box uses to display its items.
        *
        * Set Columns to indicate the number of columns in a list box.
        * This causes the list box to accommodate new items that do not fit in the
        * specified number of columns by adding additional rows.
        *
        * @return integer
        */
        function getColumns() { return $this->_columns; }
        function setColumns($value) { $this->_columns=$value?$value:1; }
        function defaultColumns() { return 1; }

        /**
        * Specifies the background color for a header item in the listbox.
        *
        * Set HeaderBackgroundColor to indicate the color that appears as the
        * background of header items. Header items are items in the list box for
        * which the Header property is true. HeaderBackgroundColor can make a
        * header item visually more distinct from the checkable items in the list box.
        *
        * @return string
        */
        function getHeaderBackgroundColor() { return $this->_headerbackgroundcolor; }
        function setHeaderBackgroundColor($value) { $this->_headerbackgroundcolor=$value; }
        function defaultHeaderBackgroundColor() { return "#CCCCCC"; }

        /**
        * Specifies the font color for a header item in the list box.
        *
        * Set HeaderColor to indicate the font color of header items. Header items
        * are items in the list box for which the Header property is true.
        * HeaderColor should be a color that provides contrast with the HeaderBackgroundColor
        * property, which specifies the background color for header items.
        *
        * @return string
        */
        function getHeaderColor() { return $this->_headercolor; }
        function setHeaderColor($value) { $this->_headercolor=$value; }
        function defaultHeaderColor() { return "#FFFFFF"; }

       /* function getSorted() { return $this->_sorted; }
        function setSorted($value) { $this->_sorted=$value;  if($this->_sorted) asort($this->_items);}
        function defaultSorted() { return false; }*/

         /**
        * Indicate the orientation of the items
        */
        function readOrientation() { return $this->_orientation; }
        function writeOrientation($value) { $this->_orientation=$value; }
        function defaultOrientation() { return "orVertical"; }

}

/**
* CheckListBox displays a list with check boxes next to each item.
*
* CheckListBox is similar to ListBox, except that each item has a check box next to it.
* Users can check or uncheck items in the list.
*
*/
class CheckListBox extends CustomCheckListBox
{
        /*
        * Publishes the events for the CheckBox component
        */
        function getOnClick()                   { return $this->readOnClick(); }
        function setOnClick($value)             { $this->writeOnClick($value); }

        function getOnSubmit()                  { return $this->readOnSubmit(); }
        function setOnSubmit($value)            { $this->writeOnSubmit($value); }

        /*
        * Publishes the JS events for the CheckBox component
        */
        function getjsOnBlur()                  { return $this->readjsOnBlur(); }
        function setjsOnBlur($value)            { $this->writejsOnBlur($value); }

        function getjsOnChange()                { return $this->readjsOnChange(); }
        function setjsOnChange($value)          { $this->writejsOnChange($value); }

        function getjsOnClick()                 { return $this->readjsOnClick(); }
        function setjsOnClick($value)           { $this->writejsOnClick($value); }

        function getjsOnDblClick()              { return $this->readjsOnDblClick(); }
        function setjsOnDblClick($value)        { $this->writejsOnDblClick($value); }

        function getjsOnFocus()                 { return $this->readjsOnFocus(); }
        function setjsOnFocus($value)           { $this->writejsOnFocus($value); }

        function getjsOnMouseDown()             { return $this->readjsOnMouseDown(); }
        function setjsOnMouseDown($value)       { $this->writejsOnMouseDown($value); }

        function getjsOnMouseUp()               { return $this->readjsOnMouseUp(); }
        function setjsOnMouseUp($value)         { $this->writejsOnMouseUp($value); }

        function getjsOnMouseOver()             { return $this->readjsOnMouseOver(); }
        function setjsOnMouseOver($value)       { $this->writejsOnMouseOver($value); }

        function getjsOnMouseMove()             { return $this->readjsOnMouseMove(); }
        function setjsOnMouseMove($value)       { $this->writejsOnMouseMove($value); }

        function getjsOnMouseOut()              { return $this->readjsOnMouseOut(); }
        function setjsOnMouseOut($value)        { $this->writejsOnMouseOut($value); }

        function getjsOnKeyPress()              { return $this->readjsOnKeyPress(); }
        function setjsOnKeyPress($value)        { $this->writejsOnKeyPress($value); }

        function getjsOnKeyDown()               { return $this->readjsOnKeyDown(); }
        function setjsOnKeyDown($value)         { $this->writejsOnKeyDown($value); }

        function getjsOnKeyUp()                 { return $this->readjsOnKeyUp(); }
        function setjsOnKeyUp($value)           { $this->writejsOnKeyUp($value); }

        /*
        * Publishes the properties for the CheckBox component
        */

        function getAlignment()                 { return $this->readAlignment(); }
        function setAlignment($value)           { $this->writeAlignment($value); }

        function getBorderWidth()               { return $this->readBorderWidth(); }
        function setBorderWidth($value)         { $this->writeBorderWidth($value); }

        function getBorderColor()               { return $this->readBorderColor(); }
        function setBorderColor($value)         { $this->writeBorderColor($value); }

        function getBorderStyle()               { return $this->readBorderStyle(); }
        function setBorderStyle($value)         { $this->writeBorderStyle($value); }

        function getColor()                     { return $this->readColor(); }
        function setColor($value)               { $this->writeColor($value); }

//        function getDataField()                 { return $this->readDataField(); }
//        function setDataField($value)           { $this->writeDataField($value); }

//        function getDataSource()                { return $this->readDataSource(); }
//        function setDataSource($value)          { $this->writeDataSource($value); }

        function getEnabled()                   { return $this->readEnabled(); }
        function setEnabled($value)             { $this->writeEnabled($value); }

        function getFont()                      { return $this->readFont(); }
        function setFont($value)                { $this->writeFont($value); }

        function getItems()                     { return $this->readItems(); }
        function setItems($value)               { $this->writeItems($value); }

        function getParentColor()               { return $this->readParentColor(); }
        function setParentColor($value)         { $this->writeParentColor($value); }

        function getParentFont()                { return $this->readParentFont(); }
        function setParentFont($value)          { $this->writeParentFont($value); }

        function getParentShowHint()            { return $this->readParentShowHint(); }
        function setParentShowHint($value)      { $this->writeParentShowHint($value); }

        function getPopupMenu()                 { return $this->readPopupMenu(); }
        function setPopupMenu($value)           { $this->writePopupMenu($value); }

        function getShowHint()                  { return $this->readShowHint(); }
        function setShowHint($value)            { $this->writeShowHint($value); }

        function getStyle()                     { return $this->readstyle(); }
        function setStyle($value)               { $this->writestyle($value); }

        function getTabOrder()                  { return $this->readTabOrder(); }
        function setTabOrder($value)            { $this->writeTabOrder($value); }

        function getTabStop()                   { return $this->readTabStop(); }
        function setTabStop($value)             { $this->writeTabStop($value); }

        function getVisible()                   { return $this->readVisible(); }
        function setVisible($value)             { $this->writeVisible($value); }

    function getOrientation() { return $this->readorientation(); }
    function setOrientation($value) { $this->writeorientation($value); }


}

?>