diff options
Diffstat (limited to 'framework/Web/UI/ActiveControls/TActiveTextBox.php')
| -rw-r--r-- | framework/Web/UI/ActiveControls/TActiveTextBox.php | 69 | 
1 files changed, 65 insertions, 4 deletions
| diff --git a/framework/Web/UI/ActiveControls/TActiveTextBox.php b/framework/Web/UI/ActiveControls/TActiveTextBox.php index ece08e11..2e207f92 100644 --- a/framework/Web/UI/ActiveControls/TActiveTextBox.php +++ b/framework/Web/UI/ActiveControls/TActiveTextBox.php @@ -1,9 +1,30 @@  <?php
 -/*
 - * Created on 6/05/2006
 +/**
 + * TActiveTextBox class file.
 + *
 + * @author Wei Zhuo <weizhuo[at]gamil[dot]com>
 + * @link http://www.pradosoft.com/
 + * @copyright Copyright © 2006 PradoSoft
 + * @license http://www.pradosoft.com/license/
 + * @version $Revision: $  : $
 + * @package System.Web.UI.ActiveControls
   */
 -class TActiveTextBox extends TTextBox
 +/**
 + * TActiveTextBox class.
 + * 
 + * TActiveTextBox allows the {@link setText Text} property of the textbox to
 + * be changed during callback. When {@link setAutoPostBack AutoPostBack} property
 + * is true, changes to the textbox contents will perform a callback request causing
 + * {@link onTextChanged OnTextChange} to be fired first followed by {@link onCallback OnCallback}
 + * event.
 + *
 + * @author Wei Zhuo <weizhuo[at]gmail[dot]com>
 + * @version $Revision: $  Sun Jun 18 20:05:16 EST 2006 $
 + * @package System.Web.UI.ActiveControls
 + * @since 3.0
 + */
 +class TActiveTextBox extends TTextBox implements ICallbackEventHandler, IActiveControl
  {
  	/**
  	 * Creates a new callback control, sets the adapter to
 @@ -15,7 +36,10 @@ class TActiveTextBox extends TTextBox  		parent::__construct();
  		$this->setAdapter(new TActiveControlAdapter($this));
  	}
 -
 +	
 +	/**
 +	 * @return TBaseActiveCallbackControl standard callback control options.
 +	 */
  	public function getActiveControl()
  	{
  		return $this->getAdapter()->getBaseActiveControl();
 @@ -31,6 +55,43 @@ class TActiveTextBox extends TTextBox  		if($this->getActiveControl()->canUpdateClientSide() && $this->getHasLoadedPostData())
  			$this->getPage()->getCallbackClient()->setValue($this, $value);
  	}
 +	
 +	/**
 +	 * Raises the callback event. This method is required by {@link
 +	 * ICallbackEventHandler} interface. If {@link getCausesValidation
 +	 * CausesValidation} is true, it will invoke the page's {@link TPage::
 +	 * validate validate} method first. It will raise {@link onTextChanged
 +	 * onTextChanged} event first and then the {@link onCallback OnCallback} event. 
 +	 * This method is mainly used by framework and control developers.
 +	 * @param TCallbackEventParameter the event parameter
 +	 */
 + 	public function raiseCallbackEvent($param)
 +	{
 +		$this->raisePostDataChangedEvent($param);
 +		$this->onCallback($param);
 +	}	
 +	
 +	/**
 +	 * This method is invoked when a callback is requested. The method raises
 +	 * 'OnCallback' event to fire up the event handlers. If you override this
 +	 * method, be sure to call the parent implementation so that the event
 +	 * handler can be invoked.
 +	 * @param TCallbackEventParameter event parameter to be passed to the event handlers
 +	 */
 +	public function onCallback($param)
 +	{
 +		$this->raiseEvent('OnCallback', $this, $param);
 +	}
 +
 +	/**
 +	 * Renders the javascript for textbox.
 +	 */
 +	protected function renderClientControlScript($writer)
 +	{
 +		$writer->addAttribute('id',$this->getClientID());
 +		$this->getActiveControl()->registerCallbackClientScript(
 +			$this->getClientClassName(), $this->getPostBackOptions());
 +	}
  	/**
  	 * Gets the name of the javascript class responsible for performing postback for this control.
 | 
