## Class TScaffoldEditView

Description

Template control for editing an Active Record instance.

The RecordClass determines the Active Record class to be edited. A particular record can be edited by specifying the RecordPk value (may be an array for composite keys).

The default editor input controls are created based on the column types. The editor layout can be specified by a renderer by set the value of the EditRenderer property to the class name of a class that implements TScaffoldEditRenderer. A renderer is an external template control that implements IScaffoldEditRenderer.

The Data of the IScaffoldEditRenderer will be set as the current Active Record to be edited. The UpdateRecord() method of IScaffoldEditRenderer is called when request to save the record is requested.

Validators in the custom external editor template should have the TBaseValidator::setValidationGroup property set to the value of the getValidationGroup of the TScaffoldEditView instance (the edit view instance is the Parent of the IScaffoldEditRenderer in most cases.

Cosmetic changes to the default editor should be done using Cascading Stylesheets. For example, a particular field/property can be hidden by specifying "display:none" for the corresponding style (each field/property has unique Css class name as "property_xxx", where xxx is the property name).

- since: 3.1
- version: $Id: TScaffoldEditView.php 2208 2007-09-05 01:43:17Z wei $
- author: Wei Zhuo <weizho[at]gmail[dot]com>

Located in /Data/ActiveRecord/Scaffold/TScaffoldEditView.php (line 50)

    TComponent
       |
       --TApplicationComponent
          |
          --TControl
             |
             --TCompositeControl
                |
                --TTemplateControl
                   |
                   --TScaffoldBase
                      |
                      --TScaffoldEditView

Method Summary
void bubbleEvent (mixed $sender, mixed $param)
void createEditRenderer (TActiveRecord $record, string $classPath)
void createRepeaterEditItem (mixed $sender, mixed $param)
boolean doSave ()
TButton getCancelButton ()
TButton getClearButton ()
TActiveRecord getCurrentRecord ()
string getEditRenderer ()
TRepeater getInputRepeater ()
array getRecordPk ()
TButton getSaveButton ()
TScaffoldInputBase getScaffoldInputBuilder (TActiveRecord $record)
string getValidationGroup ()
void initializeEditForm ()
void onLoad (mixed $param)
void setEditRenderer (string $value)
void setRecordPk (array $value)
Methods
bubbleEvent (line 176)

Bubble the command name event. Stops bubbling when the page validator false.

Otherwise, the bubble event is continued.

- access: public

void bubbleEvent (mixed $sender, mixed $param)

Redefinition of:

TControl::bubbleEvent()
  This method responds to a bubbled event.

createEditRenderer (line 137)

Instantiate the external edit renderer.

- access: protected
- throws: TConfigurationException raised when renderer is not an instance of IScaffoldEditRenderer.

void createEditRenderer (TActiveRecord $record, string $classPath)

- TActiveRecord $record: record to be edited
- string $classPath: external edit renderer class name.

createRepeaterEditItem (line 156)

Initialize the default editor using the scaffold input builder.

- access: protected

void createRepeaterEditItem (mixed $sender, mixed $param)
doSave (line 195)

Check the validators, then tries to save the record.

- return: true if the validators are true, false otherwise.
- access: protected

boolean doSave ()
getCancelButton (line 256)

- return: Button to cancel the edit action (e.g. hide the edit view).
- access: public

TButton getCancelButton ()
getClearButton (line 247)

- return: Button to clear the editor inputs.
- access: public

TButton getClearButton ()
getCurrentRecord (line 103)

- return: current Active Record instance
- access: protected

TActiveRecord getCurrentRecord ()
getEditRenderer (line 69)

- return: the class name for scaffold editor. Defaults to empty, meaning not set.
- access: public

string getEditRenderer ()
getInputRepeater (line 229)

- return: default editor input controls repeater
- access: protected

TRepeater getInputRepeater ()
getRecordPk (line 95)

- return: Active Record primary key value.
- access: public

array getRecordPk ()
getSaveButton (line 238)

- return: Button triggered to save the Active Record.
- access: public

TButton getSaveButton ()
getScaffoldInputBuilder (line 267)

Create the default scaffold editor control factory.

- return: scaffold editor control factory.
- access: protected

TScaffoldInputBase getScaffoldInputBuilder (TActiveRecord $record)

- TActiveRecord $record: record instance.

getValidationGroup (line 282)

- return: editor validation group name.
- access: public

string getValidationGroup ()
initializeEditForm (line 111)

Initialize the editor form

- access: public

void initializeEditForm ()
onLoad (line 60)

Initialize the editor form if it is Visible.

- access: public

void onLoad (mixed $param)

Redefinition of:

TControl::onLoad()
  This method is invoked when the control enters 'OnLoad' stage.

setEditRenderer (line 77)

- access: public

void setEditRenderer (string $value)

- string $value: the class name for scaffold editor. Defaults to empty, meaning not set.

setRecordPk (line 85)

- access: public

void setRecordPk (array $value)

- array $value: Active Record primary key value to be edited.

#### Inherited Methods

Inherited From TScaffoldBase

> TScaffoldBase::clearRecordObject()
> TScaffoldBase::copyFrom()
> TScaffoldBase::getDefaultStyle()
> TScaffoldBase::getEnableDefaultStyle()
> TScaffoldBase::getRecordClass()
> TScaffoldBase::getRecordFinder()
> TScaffoldBase::getRecordObject()
> TScaffoldBase::getRecordPkValues()
> TScaffoldBase::getRecordPropertyValues()
> TScaffoldBase::getTableInfo()
> TScaffoldBase::onPreRender()
> TScaffoldBase::setDefaultStyle()
> TScaffoldBase::setEnableDefaultStyle()
> TScaffoldBase::setRecordClass()
> TScaffoldBase::setRecordObject()

Inherited From TTemplateControl

> TTemplateControl::createChildControls()
> TTemplateControl::getIsSourceTemplateControl()
> TTemplateControl::getMaster()
> TTemplateControl::getMasterClass()
> TTemplateControl::getTemplate()
> TTemplateControl::getTemplateDirectory()
> TTemplateControl::initRecursive()
> TTemplateControl::injectContent()
> TTemplateControl::loadTemplate()
> TTemplateControl::registerContent()
> TTemplateControl::registerContentPlaceHolder()
> TTemplateControl::setMasterClass()
> TTemplateControl::setTemplate()

Inherited From TCompositeControl

> TCompositeControl::initRecursive()

Inherited From TControl

> TControl::__construct()
> TControl::addedControl()
> TControl::addParsedObject()
> TControl::addToPostDataLoader()
> TControl::applyStyleSheetSkin()
> TControl::autoBindProperty()
> TControl::autoDataBindProperties()
> TControl::bindProperty()
> TControl::broadcastEvent()
> TControl::bubbleEvent()
> TControl::clearChildState()
> TControl::clearControlState()
> TControl::clearNamingContainer()
> TControl::clearViewState()
> TControl::convertUniqueIdToClientId()
> TControl::createChildControls()
> TControl::createControlCollection()
> TControl::dataBind()
> TControl::dataBindChildren()
> TControl::dataBindProperties()
> TControl::ensureChildControls()
> TControl::findControl()
> TControl::findControlsByID()
> TControl::findControlsByType()
> TControl::focus()
> TControl::getAdapter()
> TControl::getAllowChildControls()
> TControl::getAttribute()
> TControl::getAttributes()
> TControl::getChildControlsCreated()
> TControl::getClientID()
> TControl::getControls()
> TControl::getControlStage()
> TControl::getControlState()
> TControl::getCustomData()
> TControl::getEnabled()
> TControl::getEnableTheming()
> TControl::getEnableViewState()
> TControl::getHasAdapter()
> TControl::getHasAttributes()
> TControl::getHasChildInitialized()
> TControl::getHasControls()
> TControl::getHasInitialized()
> TControl::getHasLoaded()
> TControl::getHasLoadedPostData()
> TControl::getHasPreRendered()
> TControl::getID()
> TControl::getNamingContainer()
> TControl::getPage()
> TControl::getParent()
> TControl::getRegisteredObject()
> TControl::getSkinID()
> TControl::getSourceTemplateControl()
> TControl::getTemplateControl()
> TControl::getUniqueID()
> TControl::getViewState()
> TControl::getVisible()
> TControl::hasAttribute()
> TControl::initRecursive()
> TControl::isDescendentOf()
> TControl::isObjectRegistered()
> TControl::loadRecursive()
> TControl::loadState()
> TControl::loadStateRecursive()
> TControl::onDataBinding()
> TControl::onInit()
> TControl::onLoad()
> TControl::onPreRender()
> TControl::onUnload()
> TControl::preRenderRecursive()
> TControl::raiseBubbleEvent()
> TControl::registerObject()
> TControl::removeAttribute()
> TControl::removedControl()
> TControl::render()
> TControl::renderChildren()
> TControl::renderControl()
> TControl::saveState()
> TControl::saveStateRecursive()
> TControl::setAdapter()
> TControl::setAttribute()
> TControl::setChildControlsCreated()
> TControl::setControlStage()
> TControl::setControlState()
> TControl::setCustomData()
> TControl::setEnabled()
> TControl::setEnableTheming()
> TControl::setEnableViewState()
> TControl::setID()
> TControl::setPage()
> TControl::setSkinID()
> TControl::setTemplateControl()
> TControl::setViewState()
> TControl::setVisible()
> TControl::trackViewState()
> TControl::traverseChildControls()
> TControl::unbindProperty()
> TControl::unloadRecursive()
> TControl::unregisterObject()
> TControl::__get()

Inherited From TApplicationComponent

> TApplicationComponent::getApplication()
> TApplicationComponent::getRequest()
> TApplicationComponent::getResponse()
> TApplicationComponent::getService()
> TApplicationComponent::getSession()
> TApplicationComponent::getUser()
> TApplicationComponent::publishAsset()
> TApplicationComponent::publishFilePath()

Inherited From TComponent

> TComponent::addParsedObject()
> TComponent::attachEventHandler()
> TComponent::canGetProperty()
> TComponent::canSetProperty()
> TComponent::createdOnTemplate()
> TComponent::detachEventHandler()
> TComponent::evaluateExpression()
> TComponent::evaluateStatements()
> TComponent::getEventHandlers()
> TComponent::getSubProperty()
> TComponent::hasEvent()
> TComponent::hasEventHandler()
> TComponent::hasProperty()
> TComponent::raiseEvent()
> TComponent::setSubProperty()
> TComponent::__get()
> TComponent::__set()

Class Constants

#### Inherited Constants

Inherited from TTemplateControl

> TTemplateControl::EXT_TEMPLATE

Inherited from TControl

> TControl::AUTOMATIC_ID_PREFIX
> TControl::CLIENT_ID_SEPARATOR
> TControl::CS_CHILD_INITIALIZED
> TControl::CS_CONSTRUCTED
> TControl::CS_INITIALIZED
> TControl::CS_LOADED
> TControl::CS_PRERENDERED
> TControl::CS_STATE_LOADED
> TControl::ID_FORMAT
> TControl::ID_SEPARATOR
> TControl::IS_CHILD_CREATED
> TControl::IS_CREATING_CHILD
> TControl::IS_DISABLE_THEMING
> TControl::IS_DISABLE_VIEWSTATE
> TControl::IS_ID_SET
> TControl::IS_SKIN_APPLIED
> TControl::IS_STYLESHEET_APPLIED
> TControl::RF_ADAPTER
> TControl::RF_AUTO_BINDINGS
> TControl::RF_CHILD_STATE
> TControl::RF_CONTROLS
> TControl::RF_CONTROLSTATE
> TControl::RF_DATA_BINDINGS
> TControl::RF_EVENTS
> TControl::RF_NAMED_CONTROLS
> TControl::RF_NAMED_CONTROLS_ID
> TControl::RF_NAMED_OBJECTS
> TControl::RF_SKIN_ID

Documentation generated on Mon, 21 Apr 2008 11:36:06 -0400 by phpDocumentor 1.3.0RC4