public class Tabbox extends XulElement
Event:
Mold:
Toolbar only works in the horizontal default mold and
the isTabscroll() to be true. (since 3.6.3)
Default getZclass(): z-tabbox. (since 3.5.0)
Besides creating Tab and Tabpanel programmatically, you could
assign a data model (a ListModel to a Tabbox via setModel(ListModel)
and then the tabbox will retrieve data via ListModel.getElementAt(int) when
necessary. (since 7.0.0) [ZK EE]
Besides assign a list model, you could assign a renderer (a
TabboxRenderer instance) to a Tabbox, such that the Tabbox will
use this renderer to render the data returned by
ListModel.getElementAt(int). If not assigned, the default renderer, which
assumes a label per Tab and Tabpanel, is used. In other words, the default renderer
adds a label to a Tab and Tabpanel by calling toString against the object returned by
ListModel.getElementAt(int) (since 7.0.0) [ZK EE]
To retrieve what are selected in Tabbox with a Selectable
ListModel, you shall use Selectable.getSelection() to get what
is currently selected object in ListModel rather than using
getSelectedTab(). That is, you shall operate on the data of
the ListModel rather than on the Tab of the Tabbox
if you use the Selectable ListModel. (since 7.0.0) [ZK EE]
Set selection = ((Selectable)getModel()).getSelection();
HtmlBasedComponent.ExtraCtrlAbstractComponent.Children_zclassAPPLICATION_SCOPE, COMPONENT_SCOPE, DESKTOP_SCOPE, PAGE_SCOPE, REQUEST_SCOPE, SESSION_SCOPE, SPACE_SCOPECE_BUSY_IGNORE, CE_DUPLICATE_IGNORE, CE_IMPORTANT, CE_NON_DEFERRABLE, CE_REPEAT_IGNORE| Constructor and Description |
|---|
Tabbox() |
| Modifier and Type | Method and Description |
|---|---|
void |
beforeChildAdded(Component child,
Component refChild)
Default: does nothing.
|
protected void |
clearSelectedTab() |
java.lang.Object |
clone()
Clones the component.
|
TabboxEngine |
getEngine()
Returns the implementation tabbox engine.
|
<T> ListModel<T> |
getModel()
Returns the model associated with this selectbox, or null if this
selectbox is not associated with any list data model.
|
java.lang.String |
getOrient()
Returns the orient.
|
java.lang.String |
getPanelSpacing()
Returns the spacing between
Tabpanel. |
Selectable<java.lang.Object> |
getSelectableModel() |
int |
getSelectedIndex()
Returns the selected index.
|
Tabpanel |
getSelectedPanel()
Returns the selected tab panel.
|
Tab |
getSelectedTab()
Returns the selected tab.
|
<T> TabboxRenderer<T> |
getTabboxRenderer()
Returns the renderer to render each tab and tabpanel, or null if the default renderer
is used.
|
Tabpanels |
getTabpanels()
Returns the tabpanels that this tabbox owns.
|
Tabs |
getTabs()
Returns the tabs that this tabbox owns.
|
Toolbar |
getToolbar()
Returns the auxiliary toolbar that this tabbox owns.
|
java.lang.String |
getZclass()
Returns the ZK Cascading Style class(es) for this component.
|
boolean |
insertBefore(Component child,
Component refChild)
Inserts a child before the reference child.
|
boolean |
isBottom()
Returns whether it is the bottom orientation.
|
boolean |
isHorizontal()
Returns whether it is a horizontal tabbox.
|
boolean |
isLeft()
Returns whether it is the left orientation.
|
boolean |
isMaximalHeight()
Returns whether to use maximum height of all tabpanel in initial phase.
|
boolean |
isRight()
Returns whether it is the right orientation.
|
boolean |
isTabscroll()
Returns whether the tab scrolling is enabled.
|
boolean |
isTop()
Returns whether it is the top orientation.
|
boolean |
isVertical()
Returns whether it is a vertical tabbox.
|
protected TabboxEngine |
newTabboxEngine()
Instantiates the default tabbox engine.
|
void |
onChildRemoved(Component child)
Default: does nothing.
|
void |
onInitRender() |
void |
postOnInitRender()
Component internal use only.
|
protected void |
renderProperties(ContentRenderer renderer)
Renders the content of this component, excluding the enclosing
tags and children.
|
void |
setEngine(TabboxEngine engine)
Sets the tabbox engine for
ListModel |
void |
setMaximalHeight(boolean maximalHeight)
Sets whether to use maximum height of all tabpanel in initial phase.
|
void |
setModel(ListModel<?> model)
Sets the list model associated with this t.
|
void |
setMold(java.lang.String mold)
Sets the mold.
|
void |
setOrient(java.lang.String orient)
Sets the orient.
|
void |
setPanelSpacing(java.lang.String panelSpacing)
Sets the spacing between
Tabpanel. |
void |
setSelectedIndex(int j)
Sets the selected index.
|
void |
setSelectedPanel(Tabpanel panel)
Sets the selected tab panel.
|
void |
setSelectedTab(Tab tab)
Sets the selected tab.
|
void |
setTabboxRenderer(java.lang.String clsnm)
Sets the renderer by use of a class name.
|
void |
setTabboxRenderer(TabboxRenderer<?> renderer)
Sets the renderer which is used to render each tab and tabpanel if
getModel()
is not null. |
void |
setTabscroll(boolean tabscroll)
Sets whether to enable the tab scrolling.
|
getContext, getCtrlKeys, getPopup, getPropertyAccess, getTooltip, setContext, setContext, setCtrlKeys, setPopup, setPopup, setTooltip, setTooltipfocus, getAction, getDraggable, getDroppable, getExtraCtrl, getHeight, getHflex, getLeft, getRenderdefer, getSclass, getStyle, getTooltiptext, getTop, getVflex, getWidth, getZindex, getZIndex, service, setAction, setClass, setDraggable, setDroppable, setFocus, setHeight, setHeightDirectly, setHflex, setHflexDirectly, setLeft, setLeftDirectly, setRenderdefer, setSclass, setStyle, setTooltiptext, setTop, setTopDirectly, setVflex, setWidth, setWidthDirectly, setZclass, setZindex, setZIndex, setZIndexDirectlyaddAnnotation, addAnnotation, addClientEvent, addEventHandler, addEventListener, addEventListener, addForward, addForward, addForward, addForward, addMoved, addRedrawCallback, addScopeListener, addShadowRoot, addShadowRootBefore, addSharedEventHandlerMap, appendChild, applyProperties, beforeChildRemoved, beforeParentChanged, detach, didActivate, didActivate, didDeserialize, didDeserialize, disableBindingAnnotation, disableClientUpdate, enableBindingAnnotation, equals, getAnnotatedProperties, getAnnotatedPropertiesBy, getAnnotation, getAnnotation, getAnnotations, getAnnotations, getAnnotations, getAttribute, getAttribute, getAttribute, getAttributeOrFellow, getAttributes, getAttributes, getAuService, getAutag, getChildren, getClientAttribute, getClientDataAttribute, getClientEvents, getDefaultMold, getDefinition, getDesktop, getEventHandler, getEventHandlerNames, getEventListenerMap, getEventListeners, getFellow, getFellow, getFellowIfAny, getFellowIfAny, getFellows, getFirstChild, getId, getLastChild, getListenerIterator, getMold, getNextSibling, getPage, getParent, getPreviousSibling, getRedrawCallback, getRoot, getShadowRoots, getShadowVariable, getShadowVariable0, getSpaceOwner, getSpecialRendererOutput, getStubonly, getSubBindingAnnotationCount, getTemplate, getTemplateNames, getUuid, getWidgetAttribute, getWidgetAttributeNames, getWidgetClass, getWidgetListener, getWidgetListenerNames, getWidgetOverride, getWidgetOverrideNames, hasAttribute, hasAttribute, hasAttribute, hasAttributeOrFellow, hasBindingAnnotation, hasFellow, hasFellow, hasSubBindingAnnotation, invalidate, isChildable, isInvalidated, isListenerAvailable, isVisible, onChildAdded, onPageAttached, onPageDetached, onWrongValue, query, queryAll, redraw, redrawChildren, removeAttribute, removeAttribute, removeAttribute, removeChild, removeEventListener, removeForward, removeForward, removeRedrawCallback, removeScopeListener, removeShadowRoot, render, render, render, replace, response, response, response, service, sessionDidActivate, sessionWillPassivate, setAttribute, setAttribute, setAttribute, setAuService, setAutag, setClientAttribute, setClientDataAttribute, setDefinition, setDefinition, setId, setPage, setPageBefore, setParent, setStubonly, setStubonly, setSubBindingAnnotationCount, setTemplate, setVisible, setVisibleDirectly, setWidgetAttribute, setWidgetClass, setWidgetListener, setWidgetOverride, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdateWidgetListener, smartUpdateWidgetOverride, toString, updateByClient, updateSubBindingAnnotationCount, willPassivate, willPassivate, willSerialize, willSerializepublic TabboxEngine getEngine() throws UiException
UiException - if failed to load the engine.public void setEngine(TabboxEngine engine)
ListModelprotected TabboxEngine newTabboxEngine() throws UiException
setEngine(org.zkoss.zul.impl.TabboxEngine) is not called with non-null
engine.
By default, it looks up the library property called
org.zkoss.zul.tabbox.engine.class.
If found, the value is assumed to be
the class name of the tabbox engine (it must implement
TabboxEngine).
If not found, UiException is thrown.
Derived class might override this method to provide your own default class.
UiException - if failed to instantiate the enginepublic Selectable<java.lang.Object> getSelectableModel()
public void setModel(ListModel<?> model)
model - the list model to associate, or null to dissociate any
previous model.UiException - if failed to initialize with the modelpublic <T> TabboxRenderer<T> getTabboxRenderer()
public void setTabboxRenderer(TabboxRenderer<?> renderer)
getModel()
is not null. [ZK EE]
Note: changing a render will not cause the tabbox to re-render. If you
want it to re-render, you could assign the same model again (i.e.,
setModel(null) and than setModel(oldModel)), or fire an ListDataEvent event.
renderer - the renderer, or null to use the default.UiException - if failed to initialize with the modelpublic void setTabboxRenderer(java.lang.String clsnm)
throws java.lang.ClassNotFoundException,
java.lang.NoSuchMethodException,
java.lang.IllegalAccessException,
java.lang.InstantiationException,
java.lang.reflect.InvocationTargetException
java.lang.ClassNotFoundExceptionjava.lang.NoSuchMethodExceptionjava.lang.IllegalAccessExceptionjava.lang.InstantiationExceptionjava.lang.reflect.InvocationTargetExceptionsetTabboxRenderer(TabboxRenderer)public void onInitRender()
public void postOnInitRender()
public <T> ListModel<T> getModel()
public Tabs getTabs()
public Toolbar getToolbar()
public Tabpanels getTabpanels()
public boolean isTabscroll()
public void setTabscroll(boolean tabscroll)
public boolean isMaximalHeight()
Default: false.
public void setMaximalHeight(boolean maximalHeight)
The Client ROD feature will be disabled if it is set to true.
public java.lang.String getPanelSpacing()
Tabpanel. This is used by certain
molds, such as accordion.
Default: null (no spacing).
public void setPanelSpacing(java.lang.String panelSpacing)
Tabpanel. This is used by certain molds,
such as accordion.public int getSelectedIndex()
public void setSelectedIndex(int j)
public Tabpanel getSelectedPanel()
public void setSelectedPanel(Tabpanel panel)
public Tab getSelectedTab()
public void setSelectedTab(Tab tab)
public java.lang.String getOrient()
Default: "top".
Note: only the default mold supports it (not supported if accordion).
public void setMold(java.lang.String mold)
setMold in interface ComponentsetMold in class AbstractComponentmold - default , accordion and accordion-liteComponentDefinitionpublic void setOrient(java.lang.String orient)
throws WrongValueException
orient - either "top", "left", "bottom or "right".WrongValueExceptionpublic boolean isHorizontal()
public boolean isTop()
public boolean isBottom()
public boolean isVertical()
public boolean isLeft()
public boolean isRight()
public java.lang.String getZclass()
HtmlBasedComponentAbstractComponent.getMold()).
Default: null (the default value depends on element).
HtmlBasedComponent.setZclass(java.lang.String)) will completely replace the default style
of a component. In other words, the default style of a component
is associated with the default value of HtmlBasedComponent.getZclass().
Once it is changed, the default style won't be applied at all.
If you want to perform small adjustments, use HtmlBasedComponent.setSclass(java.lang.String)
instead.
getZclass in class HtmlBasedComponentHtmlBasedComponent.getSclass()public void beforeChildAdded(Component child, Component refChild)
AbstractComponentbeforeChildAdded in interface ComponentCtrlbeforeChildAdded in class AbstractComponentchild - the child to be added (never null).refChild - another child component that the new child
will be inserted before it. If null, the new child will be the
last child.ComponentCtrl.beforeChildAdded(org.zkoss.zk.ui.Component, org.zkoss.zk.ui.Component)public boolean insertBefore(Component child, Component refChild)
ComponentYou could use Component.setParent(org.zkoss.zk.ui.Component) or Component.appendChild(org.zkoss.zk.ui.Component)
instead of this method, unless
you want to control where to put the child.
Note: Component.setParent(org.zkoss.zk.ui.Component) always calls back Component.insertBefore(org.zkoss.zk.ui.Component, org.zkoss.zk.ui.Component)
and/or Component.removeChild(org.zkoss.zk.ui.Component),
while Component.insertBefore(org.zkoss.zk.ui.Component, org.zkoss.zk.ui.Component) and Component.removeChild(org.zkoss.zk.ui.Component)
always calls back Component.setParent(org.zkoss.zk.ui.Component),
if the parent is changed. Thus, you don't need to override
both Component.insertBefore(org.zkoss.zk.ui.Component, org.zkoss.zk.ui.Component) and Component.setParent(org.zkoss.zk.ui.Component), if you want
to customize the behavior.
If you would like to monitor if a component is attached or detached
from a page, you could register a desktop listener implementing
UiLifeCycle.
insertBefore in interface ComponentinsertBefore in class AbstractComponentchild - the new child to be inserted.refChild - the child before which you want the new child
being inserted. If null, the new child is append to the end.public void onChildRemoved(Component child)
AbstractComponentonChildRemoved in interface ComponentCtrlonChildRemoved in class AbstractComponentComponentCtrl.onChildRemoved(org.zkoss.zk.ui.Component)protected void clearSelectedTab()
public java.lang.Object clone()
Componentclone in interface Componentclone in class XulElementprotected void renderProperties(ContentRenderer renderer) throws java.io.IOException
HtmlBasedComponentrenderProperties in class XulElementjava.io.IOExceptionCopyright © 2005-2011 Potix Corporation. All Rights Reserved.