## Class TTemplateControl

Description

Implements interfaces:

- INamingContainer

TTemplateControl class.

TTemplateControl is the base class for all controls that use templates. By default, a control template is assumed to be in a file under the same directory with the control class file. They have the same file name and different extension name. For template file, the extension name is ".tpl".

- since: 3.0
- version: $Revision: $ $Date: $
- author: Qiang Xue <qiang.xue@gmail.com>

Located in /Web/UI/TTemplateControl.php (line 25)

    TComponent
       |
       --TApplicationComponent
          |
          --TControl
             |
             --TTemplateControl

Direct descendents

Class | Description
--- | ---
TPage | TPage class

Class Constant Summary
EXT_TEMPLATE = '.tpl'
Method Summary
void createChildControls ()
boolean getIsSourceTemplateControl ()
TTemplateControl|null getMaster ()
string getMasterClass ()
ITemplate|null getTemplate ()
string getTemplateDirectory ()
void initRecursive ([TControl $namingContainer = null])
void injectContent (string $id, TContent $content)
ITemplate loadTemplate ()
void registerContent (string $id, TContent $object)
void registerContentPlaceHolder (string $id, TContentPlaceHolder $object)
void setMasterClass (string $value)
void setTemplate (ITemplate $value)
Methods
createChildControls (line 126)

Creates child controls.

This method is overriden to load and instantiate control template. This method should only be used by framework and control developers.

- access: public

void createChildControls ()

Redefinition of:

TControl::createChildControls()
  Creates child controls.

getIsSourceTemplateControl (line 90)

- return: whether this control is a source template control. A source template control loads its template from external storage, such as file, db, rather than from within another template.
- access: public

boolean getIsSourceTemplateControl ()
getMaster (line 187)

- return: master control associated with this control, null if none
- access: public

TTemplateControl|null getMaster ()
getMasterClass (line 171)

- return: master class name (in namespace form)
- access: public

string getMasterClass ()
getTemplate (line 61)

Returns the template object associated with this control object.

- return: the parsed template, null if none
- access: public

ITemplate|null getTemplate ()
getTemplateDirectory (line 101)

- return: the directory containing the template. Empty if no template available.
- access: public

string getTemplateDirectory ()
initRecursive (line 219)

Performs the OnInit step for the control and all its child controls.

This method overrides the parent implementation by ensuring child controls are created first, and if master class is set, master will be applied. Only framework developers should use this method.

- access: protected

void initRecursive ([TControl $namingContainer = null])

- TControl $namingContainer: the naming container control

Redefinition of:

TControl::initRecursive()
  Performs the Init step for the control and all its child controls.

injectContent (line 198)

Injects all content controls (and their children) to the corresponding content placeholders.

This method should only be used by framework and control developers.

- access: public

void injectContent (string $id, TContent $content)

- string $id: ID of the content control
- TContent $content: the content to be injected

loadTemplate (line 113)

Loads the template associated with this control class.

- return: the parsed template structure
- access: protected

ITemplate loadTemplate ()
registerContent (line 146)

Registers a content control.

- access: public

void registerContent (string $id, TContent $object)

- string $id: ID of the content
- TContent $object

registerContentPlaceHolder (line 160)

Registers a content placeholder to this template control.

This method should only be used by framework and control developers.

- access: public

void registerContentPlaceHolder (string $id, TContentPlaceHolder $object)

- string $id: placeholder ID
- TContentPlaceHolder $object: placeholder control

setMasterClass (line 179)

- access: public

void setMasterClass (string $value)

- string $value: master control class name (in namespace form)

setTemplate (line 80)

Sets the parsed template.

Note, the template will be applied to the whole control class. This method should only be used by framework and control developers.

- access: public

void setTemplate (ITemplate $value)

- ITemplate $value: the parsed template

#### Inherited Methods

Inherited From TControl

> TControl::__construct()
> TControl::addedControl()
> TControl::addParsedObject()
> TControl::applyStyleSheetSkin()
> TControl::autoBindProperty()
> TControl::autoDataBindProperties()
> TControl::bindProperty()
> TControl::broadcastEvent()
> TControl::broadcastEventInternal()
> TControl::clearChildState()
> TControl::clearControlState()
> TControl::clearNamingContainer()
> TControl::clearViewState()
> TControl::createChildControls()
> TControl::createControlCollection()
> TControl::createdOnTemplate()
> 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::getEnabled()
> TControl::getEnableTheming()
> TControl::getEnableViewState()
> TControl::getHasAdapter()
> TControl::getHasAttributes()
> TControl::getHasControls()
> 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::onBubbleEvent()
> 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::setEnabled()
> TControl::setEnableTheming()
> TControl::setEnableViewState()
> TControl::setID()
> TControl::setPage()
> TControl::setSkinID()
> TControl::setTemplateControl()
> TControl::setViewState()
> TControl::setVisible()
> 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::attachEventHandler()
> TComponent::canGetProperty()
> TComponent::canSetProperty()
> 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
EXT_TEMPLATE = '.tpl' (line 30)

template file extension.

#### Inherited Constants

Inherited from TControl

Documentation generated on Mon, 01 May 2006 23:04:51 -0400 by phpDocumentor 1.3.0RC4