diff options
| author | ctrlaltca@gmail.com <> | 2011-05-21 17:10:29 +0000 | 
|---|---|---|
| committer | ctrlaltca@gmail.com <> | 2011-05-21 17:10:29 +0000 | 
| commit | 6f00b28a1d9c7409c956a83866eac48a9493e83c (patch) | |
| tree | fb3e14f0a527cf32d186932b13bd6ae9ed50a5c1 /framework/Web/UI/WebControls | |
| parent | 5a91b2a3328c8c15ce9dbed9a599ab87f9e8f112 (diff) | |
branch/3.1: merged bugfixesfrom trunk/ up to r2880; correct svn:mergeinfo property
Diffstat (limited to 'framework/Web/UI/WebControls')
| -rw-r--r-- | framework/Web/UI/WebControls/TBoundColumn.php | 16 | ||||
| -rw-r--r-- | framework/Web/UI/WebControls/TDatePicker.php | 4 | ||||
| -rw-r--r-- | framework/Web/UI/WebControls/TListControl.php | 151 | 
3 files changed, 21 insertions, 150 deletions
diff --git a/framework/Web/UI/WebControls/TBoundColumn.php b/framework/Web/UI/WebControls/TBoundColumn.php index fdcde9b2..098ffeef 100644 --- a/framework/Web/UI/WebControls/TBoundColumn.php +++ b/framework/Web/UI/WebControls/TBoundColumn.php @@ -197,6 +197,7 @@ class TBoundColumn extends TDataGridColumn  							$control->setItemType($item->getItemType());
  						}
  						$cell->getControls()->add($control);
 +						$cell->registerObject('EditControl',$control);
  					}
  					else
  					{
 @@ -206,7 +207,20 @@ class TBoundColumn extends TDataGridColumn  					}
  				}
  				else
 -					$control=$cell;
 +				{
 +					if(($classPath=$this->getItemRenderer())!=='')
 +					{
 +						$control=Prado::createComponent($classPath);
 +						if($control instanceof IItemDataRenderer)
 +						{
 +							$control->setItemIndex($item->getItemIndex());
 +							$control->setItemType($item->getItemType());
 +						}
 +						$cell->getControls()->add($control);
 +					}
 +					else
 +						$control=$cell;
 +				}
  				$control->attachEventHandler('OnDataBinding',array($this,'dataBindColumn'));
  				break;
  			default:
 diff --git a/framework/Web/UI/WebControls/TDatePicker.php b/framework/Web/UI/WebControls/TDatePicker.php index e678b046..c81d8bc1 100644 --- a/framework/Web/UI/WebControls/TDatePicker.php +++ b/framework/Web/UI/WebControls/TDatePicker.php @@ -487,7 +487,7 @@ class TDatePicker extends TTextBox  		if(isset($values[$key.'$day']))
  			$day = intval($values[$key.'$day']);
  		else
 -			$day = 1;
 +			$day = $date['mday'];
  		if(isset($values[$key.'$month']))
  			$month = intval($values[$key.'$month']) + 1;
 @@ -961,4 +961,4 @@ class TDatePickerPositionMode extends TEnumerable  {
  	const Top='Top';
  	const Bottom='Bottom';
 -}
\ No newline at end of file +}
 diff --git a/framework/Web/UI/WebControls/TListControl.php b/framework/Web/UI/WebControls/TListControl.php index c69b387e..e0c25b9e 100644 --- a/framework/Web/UI/WebControls/TListControl.php +++ b/framework/Web/UI/WebControls/TListControl.php @@ -1,10 +1,12 @@  <?php
 +
  /**
   * TListControl class file
   *
 + * @author Robin J. Rogge <rojaro@gmail.com>
   * @author Qiang Xue <qiang.xue@gmail.com>
   * @link http://www.pradosoft.com/
 - * @copyright Copyright © 2005-2008 PradoSoft
 + * @copyright Copyright © 2005-2010 PradoSoft
   * @license http://www.pradosoft.com/license/
   * @version $Id$
   * @package System.Web.UI.WebControls
 @@ -15,10 +17,10 @@   */
  Prado::using('System.Web.UI.WebControls.TDataBoundControl');
  Prado::using('System.Web.UI.WebControls.TListItem');
 +Prado::using('System.Collections.TListItemCollection');
  Prado::using('System.Collections.TAttributeCollection');
  Prado::using('System.Util.TDataFieldAccessor');
 -
  /**
   * TListControl class
   *
 @@ -879,151 +881,6 @@ abstract class TListControl extends TDataBoundControl implements IDataRenderer  }
  /**
 - * TListItemCollection class.
 - *
 - * TListItemCollection maintains a list of {@link TListItem} for {@link TListControl}.
 - *
 - * @author Qiang Xue <qiang.xue@gmail.com>
 - * @version $Id$
 - * @package System.Web.UI.WebControls
 - * @since 3.0
 - */
 -class TListItemCollection extends TList
 -{
 -	/**
 -	 * Creates a list item object.
 -	 * This method may be overriden to provide a customized list item object.
 -	 * @param integer index where the newly created item is to be inserted at.
 -	 * If -1, the item will be appended to the end.
 -	 * @return TListItem list item object
 -	 */
 -	public function createListItem($index=-1)
 -	{
 -		$item=$this->createNewListItem();
 -		if($index<0)
 -			$this->add($item);
 -		else
 -			$this->insertAt($index,$item);
 -		return $item;
 -	}
 -
 -	/**
 -	 * @return TListItem new item.
 -	 */
 -	protected function createNewListItem($text=null)
 -	{
 -		$item =  new TListItem;
 -		if($text!==null)
 -			$item->setText($text);
 -		return $item;
 -	}
 -
 -	/**
 -	 * Inserts an item into the collection.
 -	 * @param integer the location where the item will be inserted.
 -	 * The current item at the place and the following ones will be moved backward.
 -	 * @param TListItem the item to be inserted.
 -	 * @throws TInvalidDataTypeException if the item being inserted is neither a string nor TListItem
 -	 */
 -	public function insertAt($index,$item)
 -	{
 -		if(is_string($item))
 -			$item = $this->createNewListItem($item);
 -		if(!($item instanceof TListItem))
 -			throw new TInvalidDataTypeException('listitemcollection_item_invalid',get_class($this));
 -		parent::insertAt($index,$item);
 -	}
 -
 -	/**
 -	 * Finds the lowest cardinal index of the item whose value is the one being looked for.
 -	 * @param string the value to be looked for
 -	 * @param boolean whether to look for disabled items also
 -	 * @return integer the index of the item found, -1 if not found.
 -	 */
 -	public function findIndexByValue($value,$includeDisabled=true)
 -	{
 -		$value=TPropertyValue::ensureString($value);
 -		$index=0;
 -		foreach($this as $item)
 -		{
 -			if($item->getValue()===$value && ($includeDisabled || $item->getEnabled()))
 -				return $index;
 -			$index++;
 -		}
 -		return -1;
 -	}
 -
 -	/**
 -	 * Finds the lowest cardinal index of the item whose text is the one being looked for.
 -	 * @param string the text to be looked for
 -	 * @param boolean whether to look for disabled items also
 -	 * @return integer the index of the item found, -1 if not found.
 -	 */
 -	public function findIndexByText($text,$includeDisabled=true)
 -	{
 -		$text=TPropertyValue::ensureString($text);
 -		$index=0;
 -		foreach($this as $item)
 -		{
 -			if($item->getText()===$text && ($includeDisabled || $item->getEnabled()))
 -				return $index;
 -			$index++;
 -		}
 -		return -1;
 -	}
 -
 -	/**
 -	 * Finds the item whose value is the one being looked for.
 -	 * @param string the value to be looked for
 -	 * @param boolean whether to look for disabled items also
 -	 * @return TListItem the item found, null if not found.
 -	 */
 -	public function findItemByValue($value,$includeDisabled=true)
 -	{
 -		if(($index=$this->findIndexByValue($value,$includeDisabled))>=0)
 -			return $this->itemAt($index);
 -		else
 -			return null;
 -	}
 -
 -	/**
 -	 * Finds the item whose text is the one being looked for.
 -	 * @param string the text to be looked for
 -	 * @param boolean whether to look for disabled items also
 -	 * @return TListItem the item found, null if not found.
 -	 */
 -	public function findItemByText($text,$includeDisabled=true)
 -	{
 -		if(($index=$this->findIndexByText($text,$includeDisabled))>=0)
 -			return $this->itemAt($index);
 -		else
 -			return null;
 -	}
 -
 -	/**
 -	 * Loads state into every item in the collection.
 -	 * This method should only be used by framework and control developers.
 -	 * @param array|null state to be loaded.
 -	 */
 -	public function loadState($state)
 -	{
 -		$this->clear();
 -		if($state!==null)
 -			$this->copyFrom($state);
 -	}
 -
 -	/**
 -	 * Saves state of items.
 -	 * This method should only be used by framework and control developers.
 -	 * @return array|null the saved state
 -	 */
 -	public function saveState()
 -	{
 -		return ($this->getCount()>0) ? $this->toArray() : null;
 -	}
 -}
 -
 -/**
   * IListControlAdapter interface
   *
   * @author Wei Zhuo <weizhuo[at]gmail[dot]com>
  | 
