* @author Sergei Walter <sergeiw[at]gmail[dot]com>
* @copyright 2008 Sergei Walter
* @license http://www.gnu.org/licenses/lgpl.html
* @link http://php-ext.googlecode.com
*
* Reference for Ext JS: http://extjs.com
*
*/
/**
* @see PhpExt_Observable
*/
include_once 'PhpExt/Observable.php';
/**
* @see PhpExt_Config_ConfigObject
*/
include_once 'PhpExt/Config/ConfigObject.php';
/**
* The Store class encapsulates a client side cache of {@link PhpExt_Data_Record Record} objects which provide input data for Components such as the {@link PhpExt_Grid_GridPanel GridPanel}, the {@link PhpExt_Form_ComboBox ComboBox}, or the {@link PhpExt_DataView DataView}
* <p>A Store object uses its configured implementation of {@link PhpExt_Data_DataProxy DataProxy} to access a data object unless you call {@link PhpExt_Data_Store::loadData() loadData} directly and pass in your data.</p>
* <p>A Store object has no knowledge of the format of the data returned by the Proxy.</p>
* <p>A Store object uses its configured implementation of {@link PhpExt_Data_DataReader DataReader} to create {@link PhpExt_Data_Record Record} instances from the data object. These Records are cached and made available through accessor functions.</p>
* True if sorting is to be handled by requesting the Proxy to provide a refreshed version of the data object in sorted order, as opposed to sorting the Record cache in place (defaults to false).
* If remote sorting is specified, then clicking on a column header causes the current page to be requested from the server with the addition of the following two parameters:
* - sort : String
* The name (as specified in the Record's Field definition) of the field to sort on.
* True if sorting is to be handled by requesting the Proxy to provide a refreshed version of the data object in sorted order, as opposed to sorting the Record cache in place (defaults to false).
* If remote sorting is specified, then clicking on a column header causes the current page to be requested from the server with the addition of the following two parameters:
* - sort : String
* The name (as specified in the Record's Field definition) of the field to sort on.
* Loads the Record cache from the configured Proxy using the configured Reader.
* <p>If using remote paging, then the first load call must specify the start and limit properties in the options.params property to establish the initial position within the dataset, and the number of Records to cache on each read from the Proxy.</p>
* <p><b>It is important to note that for remote data sources, loading is asynchronous, and this call will return before the new data has been loaded. Perform any post-processing in a callback function, or in a "load" event handler.</b></p>
* @param PhpExt_Data_StoreLoadOptions $options
* @return void
*/
public function load(PhpExt_Data_StoreLoadOptions $options = null) {
* Loads data from a passed data block. A Reader which understands the format of the data must have been configured in the constructor.
* @param mixed $data The data block from which to read the Records. The format of the data expected is dependent on the type of Reader that is configured and should correspond to that Reader's readRecords parameter.
* @param boolean $append (Optional) True to append the new Records rather than replace the existing cache.
*/
public function loadData($data, $append = false) {