Class TTabPanel
Class TTabPanel.
TTabPanel displays a tabbed panel. Users can click on the tab bar to switching among different tab views. Each tab view is an independent panel that can contain arbitrary content. A TTabPanel control consists of one or several TTabView controls representing the possible tab views. At any time, only one tab view is visible (active), which is specified by any of the following properties: If both ActiveViewIndex and ActiveViewID are set, the latter takes precedence. TTabPanel uses CSS to specify the appearance of the tab bar and panel. By default, an embedded CSS file will be published which contains the default CSS for TTabPanel. You may also use your own CSS file by specifying the CssUrl property. The following properties specify the CSS classes used for elements in a TTabPanel: - CssClass - the CSS class name for the outer-most div element (defaults to 'tab-panel');
- TabCssClass - the CSS class name for nonactive tab div elements (defaults to 'tab-normal');
- ActiveTabCssClass - the CSS class name for the active tab div element (defaults to 'tab-active');
- ViewCssClass - the CSS class for the div element enclosing view content (defaults to 'tab-view');
To use TTabPanel, write a template like following:
Constants Inherited From TControl |
AUTOMATIC_ID_PREFIX,
CLIENT_ID_SEPARATOR,
CS_CHILD_INITIALIZED,
CS_CONSTRUCTED,
CS_INITIALIZED,
CS_LOADED,
CS_PRERENDERED,
CS_STATE_LOADED,
ID_FORMAT,
ID_SEPARATOR,
IS_CHILD_CREATED,
IS_CREATING_CHILD,
IS_DISABLE_THEMING,
IS_DISABLE_VIEWSTATE,
IS_ID_SET,
IS_SKIN_APPLIED,
IS_STYLESHEET_APPLIED,
RF_ADAPTER,
RF_AUTO_BINDINGS,
RF_CHILD_STATE,
RF_CONTROLS,
RF_CONTROLSTATE,
RF_DATA_BINDINGS,
RF_EVENTS,
RF_NAMED_CONTROLS,
RF_NAMED_CONTROLS_ID,
RF_NAMED_OBJECTS,
RF_SKIN_ID,
|
Method Summary |
protected
void
|
Activates the specified view.
|
protected
void
|
Adds attributes to renderer.
|
void
|
Adds object parsed from template to the control.
|
protected
TTabViewCollection
|
Creates a control collection object that is to be used to hold child controls
|
string
|
|
TStyle
|
|
TTabView
|
Returns the currently active view.
|
string
|
Returns the ID of the active tab view.
|
integer
|
Returns the index of the active tab view.
|
protected
string
|
Gets the name of the javascript class responsible for performing postback for this control.
|
protected
array
|
|
string
|
|
string
|
|
boolean
|
Returns a value indicating whether postback has caused the control data change.
|
string
|
|
TStyle
|
|
protected
string
|
|
string
|
|
TTabViewCollection
|
|
TStyle
|
|
boolean
|
Loads user input data.
|
void
|
Registers CSS and JS.
|
void
|
Raises postdata changed event.
|
protected
void
|
Registers the relevant JavaScript.
|
protected
void
|
Registers the CSS relevant to the TTabControl.
|
void
|
Renders body contents of the tab control.
|
void
|
|
void
|
|
void
|
|
void
|
|
void
|
|
void
|
|
void
|
|
Methods Inherited From TWebControl |
TWebControl::addAttributesToRender(), TWebControl::clearStyle(), TWebControl::copyBaseAttributes(), TWebControl::createStyle(), TWebControl::getAccessKey(), TWebControl::getBackColor(), TWebControl::getBorderColor(), TWebControl::getBorderStyle(), TWebControl::getBorderWidth(), TWebControl::getCssClass(), TWebControl::getDisplay(), TWebControl::getFont(), TWebControl::getForeColor(), TWebControl::getHasStyle(), TWebControl::getHeight(), TWebControl::getStyle(), TWebControl::getTabIndex(), TWebControl::getTagName(), TWebControl::getToolTip(), TWebControl::getWidth(), TWebControl::render(), TWebControl::renderBeginTag(), TWebControl::renderContents(), TWebControl::renderEndTag(), TWebControl::setAccessKey(), TWebControl::setBackColor(), TWebControl::setBorderColor(), TWebControl::setBorderStyle(), TWebControl::setBorderWidth(), TWebControl::setCssClass(), TWebControl::setDisplay(), TWebControl::setForeColor(), TWebControl::setHeight(), TWebControl::setStyle(), TWebControl::setTabIndex(), TWebControl::setToolTip(), TWebControl::setWidth()
|
Methods Inherited From TControl |
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()
|
Methods 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()
|
Method Details |
activateView
protected void activateView |
(TTabView $view ) |
Activates the specified view.
If there is any other view currently active, it will be deactivated.
Input |
TTabView | $view | the view to be activated. If null, all views will be deactivated. |
Output |
Exception |
|
addAttributesToRender
protected void addAttributesToRender |
(THtmlWriter $writer ) |
Adds attributes to renderer.
|
addParsedObject
public void addParsedObject |
(mixed $object ) |
Adds object parsed from template to the control.
This method adds only TTabView objects into the Views collection. All other objects are ignored.
Input |
mixed | $object | object parsed from template |
Output |
Exception |
|
createControlCollection
Creates a control collection object that is to be used to hold child controls
|
getActiveTabCssClass
public string getActiveTabCssClass |
() |
Output |
string
| CSS class for the active tab. Defaults to 'tab-active'. |
Exception |
|
getActiveTabStyle
public TStyle getActiveTabStyle |
() |
Output |
TStyle
| the style for the active tab div |
Exception |
|
getActiveView
Returns the currently active view.
This method will examin the ActiveViewID, ActiveViewIndex and Views collection to determine which view is currently active. It will update ActiveViewID and ActiveViewIndex accordingly.
Output |
TTabView
| the currently active view, null if no active view |
Exception |
throws | TInvalidDataValueException if the active view ID or index set previously is invalid |
|
getActiveViewID
public string getActiveViewID |
() |
Returns the ID of the active tab view.
Note, this property may not return the correct ID. To ensure the correctness, call getActiveView() first.
Output |
string
| The ID of the active tab view. Defaults to '', meaning not set. |
Exception |
|
getActiveViewIndex
public integer getActiveViewIndex |
() |
Returns the index of the active tab view.
Note, this property may not return the correct index. To ensure the correctness, call getActiveView() first.
Output |
integer
| the zero-based index of the active tab view. If -1, it means no active tab view. Default is 0 (the first view is active). |
Exception |
|
getClientClassName
protected string getClientClassName |
() |
Gets the name of the javascript class responsible for performing postback for this control.
This method overrides the parent implementation.
Output |
string
| the javascript class name |
Exception |
|
getClientOptions
protected array getClientOptions |
() |
Output |
array
| the options for JavaScript |
Exception |
|
getCssClass
public string getCssClass |
() |
Output |
string
| CSS class for the whole tab control div. Defaults to 'tab-panel'. |
Exception |
|
getCssUrl
public string getCssUrl |
() |
Output |
string
| URL for the CSS file including all relevant CSS class definitions. Defaults to ''. |
Exception |
|
getDataChanged
public boolean getDataChanged |
() |
Returns a value indicating whether postback has caused the control data change.
This method is required by the IPostBackDataHandler interface.
Output |
boolean
| whether postback has caused the control data change. False if the page is not in postback mode. |
Exception |
|
getTabCssClass
public string getTabCssClass |
() |
Output |
string
| CSS class for non-active tabs. Defaults to 'tab-normal'. |
Exception |
|
getTabStyle
Output |
TStyle
| the style for all the inactive tab div |
Exception |
|
getTagName
protected string getTagName |
() |
Output |
string
| tag name for the control |
Exception |
|
getViewCssClass
public string getViewCssClass |
() |
Output |
string
| CSS class for the currently displayed view div. Defaults to 'tab-view'. |
Exception |
|
getViews
|
getViewStyle
Output |
TStyle
| the style for all the view div |
Exception |
|
loadPostData
public boolean loadPostData |
(string $key , array $values ) |
Loads user input data.
This method is primarly used by framework developers.
Input |
string | $key | the key that can be used to retrieve data from the input data collection |
array | $values | the input data collection |
Output |
boolean
| whether the data of the control has been changed |
Exception |
|
onPreRender
public void onPreRender |
(mixed $param ) |
Registers CSS and JS.
This method is invoked right before the control rendering, if the control is visible.
Input |
mixed | $param | event parameter |
Output |
Exception |
|
raisePostDataChangedEvent
public void raisePostDataChangedEvent |
() |
Raises postdata changed event.
This method is required by IPostBackDataHandler interface. It is invoked by the framework when ActiveViewIndex property is changed on postback. This method is primarly used by framework developers.
|
registerClientScript
protected void registerClientScript |
() |
Registers the relevant JavaScript.
|
registerStyleSheet
protected void registerStyleSheet |
() |
Registers the CSS relevant to the TTabControl.
It will register the CSS file specified by CssUrl. If that is not set, it will use the default CSS.
|
renderContents
Renders body contents of the tab control.
Input |
THtmlWriter | $writer | the writer used for the rendering purpose. |
Output |
Exception |
|
setActiveTabCssClass
public void setActiveTabCssClass |
(string $value ) |
Input |
string | $value | CSS class for the active tab. |
Output |
Exception |
|
setActiveView
public void setActiveView |
(TTabView $view ) |
Input |
TTabView | $view | the view to be activated |
Output |
Exception |
throws | TInvalidOperationException if the view is not in the view collection |
|
setActiveViewID
public void setActiveViewID |
(string $value ) |
Input |
string | $value | The ID of the active tab view. |
Output |
Exception |
|
setActiveViewIndex
public void setActiveViewIndex |
(integer $value ) |
Input |
integer | $value | the zero-based index of the current view in the view collection. -1 if no active view. |
Output |
Exception |
throws | TInvalidDataValueException if the view index is invalid |
|
setCssUrl
public void setCssUrl |
(string $value ) |
Input |
string | $value | URL for the CSS file including all relevant CSS class definitions. |
Output |
Exception |
|
setTabCssClass
public void setTabCssClass |
(string $value ) |
Input |
string | $value | CSS class for non-active tabs. |
Output |
Exception |
|
setViewCssClass
public void setViewCssClass |
(string $value ) |
Input |
string | $value | CSS class for the currently displayed view div. |
Output |
Exception |
|
|