org.zkoss.zul
Class Window

java.lang.Object
  extended by org.zkoss.zk.ui.AbstractComponent
      extended by org.zkoss.zk.ui.HtmlBasedComponent
          extended by org.zkoss.zul.impl.XulElement
              extended by org.zkoss.zul.Window
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, Component, Scope, IdSpace, ComponentCtrl, Framable
Direct Known Subclasses:
FileuploadDlg, MessageboxDlg

public class Window
extends XulElement
implements Framable, IdSpace

A window.

Unlike other elements, each Window is an independent ID space (by implementing IdSpace). It means a window and all its descendants forms a ID space and the ID of each of them is unique in this space. You could retrieve any of them in this space by calling AbstractComponent.getFellow(java.lang.String).

If a window X is a descendant of another window Y, X's descendants are not visible in Y's space. To retrieve a descendant, say Z, of X, you have to invoke Y.getFellow('X').getFellow('Z').

Events:
onMove, onOpen, onMaximize, onMinimize, and onClose.
Note: to have better performance, onOpen is sent only if a non-deferrable event listener is registered (see Deferrable).

onMaximize and onMinimize are supported. (since 3.5.0)

onClose is sent when the close button is pressed (if isClosable() is true). The window has to detach or hide the window. By default, onClose() detaches the window. To prevent it from detached, you have to call Event.stopPropagation() to prevent onClose() is called.

On the other hand, onOpen is sent when a popup window (i.e., getMode() is popup) is closed due to user's activity (such as press ESC). This event is only a notification. In other words, the popup is hidden before the event is sent to the server. The application cannot prevent the window from being hidden.

Default getZclass(): z-window-getMode().(since 3.5.0)

Author:
tomyeh
See Also:
Serialized Form

Nested Class Summary
static class Window.Mode
          The window's mode used with setMode(Mode).
 
Nested classes/interfaces inherited from class org.zkoss.zk.ui.HtmlBasedComponent
HtmlBasedComponent.ExtraCtrl
 
Nested classes/interfaces inherited from class org.zkoss.zk.ui.AbstractComponent
AbstractComponent.Children
 
Field Summary
static int EMBEDDED
          Embeds the window as normal component.
static int HIGHLIGHTED
          Makes the window as highlighted.
static int MODAL
          Makes the window as a modal dialog. once doModal() is called, the execution of the event processing thread is suspended until one of the following occurs.
static int OVERLAPPED
          Makes the window as overlapped other components.
static int POPUP
          Makes the window as popup.
 
Fields inherited from class org.zkoss.zk.ui.HtmlBasedComponent
_zclass
 
Fields inherited from interface org.zkoss.zk.ui.Component
APPLICATION_SCOPE, COMPONENT_SCOPE, DESKTOP_SCOPE, PAGE_SCOPE, REQUEST_SCOPE, SESSION_SCOPE, SPACE_SCOPE
 
Fields inherited from interface org.zkoss.zk.ui.sys.ComponentCtrl
CE_BUSY_IGNORE, CE_DUPLICATE_IGNORE, CE_IMPORTANT, CE_NON_DEFERRABLE, CE_REPEAT_IGNORE
 
Constructor Summary
Window()
           
Window(java.lang.String title, java.lang.String border, boolean closable)
           
 
Method Summary
 void beforeChildAdded(Component child, Component refChild)
          Default: does nothing.
 java.lang.Object clone()
          Clones the component.
 void doEmbedded()
          Makes this window as embedded with other components (Default).
 void doHighlighted()
          Makes this window as highlighted.
 void doModal()
          Makes this window as a modal dialog.
 void doOverlapped()
          Makes this window as overlapped with other components.
 void doPopup()
          Makes this window as popup, which is overlapped with other component and auto-hidden when user clicks outside of the window.
 java.lang.String getBorder()
          Returns the border.
 Caption getCaption()
          Returns the caption of this window.
 java.lang.String getContentSclass()
          Returns the style class used for the content block.
 java.lang.String getContentStyle()
          Returns the CSS style for the content block of the window.
static java.lang.String getDefaultActionOnShow()
          Deprecated. As release of 5.0.0, replaced with HtmlBasedComponent.setAction(java.lang.String).
 int getMinheight()
          Returns the minimum height.
 int getMinwidth()
          Returns the minimum width.
 java.lang.String getMode()
          Returns the current mode.
 Window.Mode getModeType()
          Returns the current mode.
 java.lang.String getPosition()
          Returns how to position the window at the client screen.
 java.lang.String getTitle()
          Returns the title.
 java.lang.String getZclass()
          Returns the ZK Cascading Style class(es) for this component.
 boolean inEmbedded()
          Returns whether this is embedded with other components (Default).
 boolean inHighlighted()
          Returns whether this is a highlighted window.
 boolean inModal()
          Returns whether this is a modal dialog.
 boolean inOverlapped()
          Returns whether this is a overlapped window.
 boolean inPopup()
          Returns whether this is a popup window.
 boolean insertBefore(Component child, Component refChild)
          Inserts a child before the reference child.
 boolean isClosable()
          Returns whether to show a close button on the title bar.
 boolean isCollapsible()
          Always return false.
 boolean isMaximizable()
          Returns whether to display the maximizing button and allow the user to maximize the window.
 boolean isMaximized()
          Returns whether the window is maximized.
 boolean isMinimizable()
          Returns whether to display the minimizing button and allow the user to minimize the window.
 boolean isMinimized()
          Returns whether the window is minimized.
 boolean isShadow()
          Returns whether to show the shadow of an overlapped/popup/modal window.
 boolean isSizable()
          Returns whether the window is sizable.
 void onChildRemoved(Component child)
          Default: does nothing.
 void onClose()
          Process the onClose event sent when the close button is pressed.
 void onModal()
          Process the onModal event by making itself a modal window.
 void onPageDetached(Page page)
          Default: handles special event listeners.
protected  void renderProperties(ContentRenderer renderer)
          Renders the content of this component, excluding the enclosing tags and children.
 void service(AuRequest request, boolean everError)
          Processes an AU request.
 void setBorder(boolean border)
          Enables or disables the border.
 void setBorder(java.lang.String border)
          Sets the border (either none or normal).
 void setClosable(boolean closable)
          Sets whether to show a close button on the title bar.
 void setContentSclass(java.lang.String scls)
          Sets the style class used for the content block.
 void setContentStyle(java.lang.String style)
          Sets the CSS style for the content block of the window.
static void setDefaultActionOnShow(java.lang.String onshow)
          Deprecated. As release of 5.0.0, replaced with HtmlBasedComponent.setAction(java.lang.String).
 void setDraggable(java.lang.String draggable)
          Sets "true" or "false" to denote whether a component is draggable, or an identifier of a draggable type of objects.
 void setMaximizable(boolean maximizable)
          Sets whether to display the maximizing button and allow the user to maximize the window, when a window is maximized, the button will automatically change to a restore button with the appropriate behavior already built-in that will restore the window to its previous size.
 void setMaximized(boolean maximized)
          Sets whether the window is maximized, and then the size of the window will depend on it to show a appropriate size.
 void setMinheight(int minheight)
          Sets the minimum height in pixels allowed for this window.
 void setMinimizable(boolean minimizable)
          Sets whether to display the minimizing button and allow the user to minimize the window.
 void setMinimized(boolean minimized)
          Sets whether the window is minimized.
 void setMinwidth(int minwidth)
          Sets the minimum width in pixels allowed for this window.
 void setMode(int mode)
          Sets the mode to overlapped, popup, modal, embedded or highlighted.
 void setMode(java.lang.String name)
          Sets the mode to overlapped, popup, modal, embedded or highlighted.
 void setMode(Window.Mode mode)
          Sets the mode.
 void setPosition(java.lang.String pos)
          Sets how to position the window at the client screen.
 void setShadow(boolean shadow)
          Sets whether to show the shadow of an overlapped/popup/modal window.
 void setSizable(boolean sizable)
          Sets whether the window is sizable.
 void setTitle(java.lang.String title)
          Sets the title.
 void setTopmost()
          Makes this window as topmost.
 boolean setVisible(boolean visible)
          Changes the visibility of the window.
 
Methods inherited from class org.zkoss.zul.impl.XulElement
getContext, getCtrlKeys, getPopup, getTooltip, setContext, setContext, setCtrlKeys, setPopup, setPopup, setTooltip, setTooltip
 
Methods inherited from class org.zkoss.zk.ui.HtmlBasedComponent
focus, getAction, getDraggable, getDroppable, getExtraCtrl, getHeight, getHflex, getLeft, getRenderdefer, getSclass, getStyle, getTooltiptext, getTop, getVflex, getWidth, getZindex, getZIndex, setAction, setClass, setDroppable, setFocus, setHeight, setHeightDirectly, setHflex, setHflexDirectly, setLeft, setLeftDirectly, setRenderdefer, setSclass, setStyle, setTooltiptext, setTop, setTopDirectly, setVflex, setWidth, setWidthDirectly, setZclass, setZindex, setZIndex, setZIndexDirectly
 
Methods inherited from class org.zkoss.zk.ui.AbstractComponent
addAnnotation, addAnnotation, addClientEvent, addEventHandler, addEventListener, addEventListener, addForward, addForward, addForward, addForward, addMoved, addScopeListener, addSharedEventHandlerMap, appendChild, applyProperties, beforeChildRemoved, beforeParentChanged, detach, didActivate, didActivate, didDeserialize, didDeserialize, disableClientUpdate, equals, getAnnotatedProperties, getAnnotatedPropertiesBy, getAnnotation, getAnnotation, getAnnotations, getAnnotations, getAnnotations, getAttribute, getAttribute, getAttribute, getAttributeOrFellow, getAttributes, getAttributes, getAuService, getAutag, getChildren, getClientEvents, getDefaultMold, getDefinition, getDesktop, getEventHandler, getEventHandlerNames, getEventListenerMap, getEventListeners, getFellow, getFellow, getFellowIfAny, getFellowIfAny, getFellows, getFirstChild, getId, getLastChild, getListenerIterator, getMold, getNextSibling, getPage, getParent, getPreviousSibling, getRoot, getSpaceOwner, getStubonly, getTemplate, getTemplateNames, getUuid, getWidgetAttribute, getWidgetAttributeNames, getWidgetClass, getWidgetListener, getWidgetListenerNames, getWidgetOverride, getWidgetOverrideNames, hasAttribute, hasAttribute, hasAttribute, hasAttributeOrFellow, hasFellow, hasFellow, invalidate, isChildable, isInvalidated, isListenerAvailable, isVisible, onChildAdded, onPageAttached, onWrongValue, query, queryAll, redraw, redrawChildren, removeAttribute, removeAttribute, removeAttribute, removeChild, removeEventListener, removeForward, removeForward, removeScopeListener, render, render, render, replace, response, response, response, service, sessionDidActivate, sessionWillPassivate, setAttribute, setAttribute, setAttribute, setAuService, setAutag, setDefinition, setDefinition, setId, setMold, setPage, setPageBefore, setParent, setStubonly, setStubonly, setTemplate, setVisibleDirectly, setWidgetAttribute, setWidgetClass, setWidgetListener, setWidgetOverride, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdateWidgetListener, smartUpdateWidgetOverride, toString, updateByClient, willPassivate, willPassivate, willSerialize, willSerialize
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.zkoss.zk.ui.IdSpace
getFellow, getFellow, getFellowIfAny, getFellowIfAny, getFellows, hasFellow, hasFellow
 
Methods inherited from interface org.zkoss.zk.ui.ext.Scope
addScopeListener, getAttribute, getAttribute, getAttributes, hasAttribute, hasAttribute, removeAttribute, removeAttribute, removeScopeListener, setAttribute, setAttribute
 

Field Detail

EMBEDDED

public static final int EMBEDDED
Embeds the window as normal component.

See Also:
Constant Field Values

MODAL

public static final int MODAL
Makes the window as a modal dialog. once doModal() is called, the execution of the event processing thread is suspended until one of the following occurs.
  1. setMode(org.zkoss.zul.Window.Mode) is called with a mode other than MODAL.
  2. Either doOverlapped(), doPopup(), doEmbedded(), or doHighlighted() is called.
  3. setVisible(boolean) is called with false.
  4. The window is detached from the window.

Note: In the last two cases, the mode becomes OVERLAPPED. In other words, one might say a modal window is a special overlapped window.

See Also:
HIGHLIGHTED, Constant Field Values

OVERLAPPED

public static final int OVERLAPPED
Makes the window as overlapped other components.

See Also:
Constant Field Values

POPUP

public static final int POPUP
Makes the window as popup. It is similar to OVERLAPPED, except it is auto hidden when user clicks outside of the window.

See Also:
Constant Field Values

HIGHLIGHTED

public static final int HIGHLIGHTED
Makes the window as highlighted. Its visual effect is the same as MODAL. However, from the server side's viewpoint, it is similar to OVERLAPPED. The execution won't be suspended when doHighlighted() is called.

See Also:
MODAL, OVERLAPPED, Constant Field Values
Constructor Detail

Window

public Window()

Window

public Window(java.lang.String title,
              java.lang.String border,
              boolean closable)
Parameters:
title - the window title (see setTitle(java.lang.String)).
border - the border (see setBorder(java.lang.String)).
closable - whether it is closable (see setClosable(boolean)).
Method Detail

isMaximized

public boolean isMaximized()
Returns whether the window is maximized.

Specified by:
isMaximized in interface Framable
Since:
3.5.0

setMaximized

public void setMaximized(boolean maximized)
Sets whether the window is maximized, and then the size of the window will depend on it to show a appropriate size. In other words, if true, the size of the window will count on the size of its offset parent node whose position is absolute (by not inEmbedded()) or its parent node. Otherwise, its size will be original size. Note that the maximized effect will run at client's sizing phase not initial phase.

Default: false.

Throws:
UiException - if isMaximizable() is false.
Since:
3.5.0

isMaximizable

public boolean isMaximizable()
Returns whether to display the maximizing button and allow the user to maximize the window.

Default: false.

Specified by:
isMaximizable in interface Framable
Since:
3.5.0

setMaximizable

public void setMaximizable(boolean maximizable)
Sets whether to display the maximizing button and allow the user to maximize the window, when a window is maximized, the button will automatically change to a restore button with the appropriate behavior already built-in that will restore the window to its previous size.

Default: false.

Note: the maximize button won't be displayed if no title or caption at all.

Since:
3.5.0

isMinimized

public boolean isMinimized()
Returns whether the window is minimized.

Default: false.

Since:
3.5.0

setMinimized

public void setMinimized(boolean minimized)
Sets whether the window is minimized.

Default: false.

Throws:
UiException - if isMinimizable() is false.
Since:
3.5.0

isMinimizable

public boolean isMinimizable()
Returns whether to display the minimizing button and allow the user to minimize the window.

Default: false.

Specified by:
isMinimizable in interface Framable
Since:
3.5.0

setMinimizable

public void setMinimizable(boolean minimizable)
Sets whether to display the minimizing button and allow the user to minimize the window. Note that this button provides no implementation -- the behavior of minimizing a window is implementation-specific, so the MinimizeEvent event must be handled and a custom minimize behavior implemented for this option to be useful.

Default: false.

Note: the maximize button won't be displayed if no title or caption at all.

Since:
3.5.0
See Also:
MinimizeEvent

setMinheight

public void setMinheight(int minheight)
Sets the minimum height in pixels allowed for this window. If negative, 100 is assumed.

Default: 100.

Note: Only applies when isSizable() = true.

Since:
3.5.0

getMinheight

public int getMinheight()
Returns the minimum height.

Default: 100.

Since:
3.5.0

setMinwidth

public void setMinwidth(int minwidth)
Sets the minimum width in pixels allowed for this window. If negative, 200 is assumed.

Default: 200.

Note: Only applies when isSizable() = true.

Since:
3.5.0

getMinwidth

public int getMinwidth()
Returns the minimum width.

Default: 200.

Since:
3.5.0

setDefaultActionOnShow

public static void setDefaultActionOnShow(java.lang.String onshow)
Deprecated. As release of 5.0.0, replaced with HtmlBasedComponent.setAction(java.lang.String).


getDefaultActionOnShow

public static java.lang.String getDefaultActionOnShow()
Deprecated. As release of 5.0.0, replaced with HtmlBasedComponent.setAction(java.lang.String).


getCaption

public Caption getCaption()
Returns the caption of this window.


getBorder

public java.lang.String getBorder()
Returns the border.

Default: "none".


setBorder

public void setBorder(java.lang.String border)
Sets the border (either none or normal).

Parameters:
border - the border. If null, "0" or "false", "none" is assumed. If "true", "normal" is assumed (since 5.0.8).

setBorder

public void setBorder(boolean border)
Enables or disables the border.

Parameters:
border - whether to have a border. If true is specified, it is the same as setBorder("normal").
Since:
5.0.8

getTitle

public java.lang.String getTitle()
Returns the title. Besides this attribute, you could use Caption to define a more sophisticated caption (a.k.a., title).

If a window has a caption whose label (LabelElement.getLabel()) is not empty, then this attribute is ignored.

Default: empty.

Specified by:
getTitle in interface Framable

setTitle

public void setTitle(java.lang.String title)
Sets the title.


getMode

public java.lang.String getMode()
Returns the current mode. One of "modal", "embedded", "overlapped", "popup", and "highlighted".

See Also:
getModeType()

setMode

public void setMode(Window.Mode mode)
Sets the mode.

Since:
6.0.0

getModeType

public Window.Mode getModeType()
Returns the current mode.

Since:
6.0.0
See Also:
getMode(), setMode(Mode)

setMode

public void setMode(java.lang.String name)
Sets the mode to overlapped, popup, modal, embedded or highlighted.

Notice: Events.ON_MODAL is posted if you specify "modal" to this method. Unlike doModal(), Events.ON_MODAL is posted, so the window will become modal later (since 3.0.4). In other words, setMode("modal") never suspends the execution of the current thread. On the other hand, doModal() will suspends the execution if executed in an event listener, or throws an exception if not executed in an event listener.

Refer to Overlapped, Popup, Modal, Highlighted and Embedded for more information.

Parameters:
name - the mode which could be one of "embedded", "overlapped", "popup", "modal", "highlighted". Note: it cannot be "modal". Use doModal() instead.

setMode

public void setMode(int mode)
Sets the mode to overlapped, popup, modal, embedded or highlighted.

See Also:
setMode(String)

inModal

public boolean inModal()
Returns whether this is a modal dialog.


inEmbedded

public boolean inEmbedded()
Returns whether this is embedded with other components (Default).

See Also:
doEmbedded()

inOverlapped

public boolean inOverlapped()
Returns whether this is a overlapped window.


inPopup

public boolean inPopup()
Returns whether this is a popup window.


inHighlighted

public boolean inHighlighted()
Returns whether this is a highlighted window.


doModal

public void doModal()
Makes this window as a modal dialog. It will automatically center the window (ignoring HtmlBasedComponent.getLeft() and HtmlBasedComponent.getTop()).

Notice: though both setMode("modal") and doModal() both causes the window to become modal, they are a bit different. doModal causes the event listener to suspend immediately, while setMode("modal") posts an event (Events.ON_MODAL). That is, setMode(org.zkoss.zul.Window.Mode) won't suspend the execution immediately, but doModal() will. doModal() can be called only in an event listener, while setMode(org.zkoss.zul.Window.Mode) can be called anytime.

Since:
3.0.4

doOverlapped

public void doOverlapped()
Makes this window as overlapped with other components.


doPopup

public void doPopup()
Makes this window as popup, which is overlapped with other component and auto-hidden when user clicks outside of the window.


doHighlighted

public void doHighlighted()
Makes this window as highlighted. The visual effect is the similar to the modal window, but, like overlapped, it doesn't suspend (block) the execution at the server. In other words, it is more like an overlapped window from the server side's viewpoint.


doEmbedded

public void doEmbedded()
Makes this window as embedded with other components (Default).


isClosable

public boolean isClosable()
Returns whether to show a close button on the title bar.

Specified by:
isClosable in interface Framable

setClosable

public void setClosable(boolean closable)
Sets whether to show a close button on the title bar. If closable, a button is displayed and the onClose event is sent if an user clicks the button.

Default: false.

You can intercept the default behavior by either overriding onClose(), or listening the onClose event.

Note: the close button won't be displayed if no title or caption at all.


isSizable

public boolean isSizable()
Returns whether the window is sizable.


setSizable

public void setSizable(boolean sizable)
Sets whether the window is sizable. If true, an user can drag the border to change the window width.

Default: false.


isShadow

public boolean isShadow()
Returns whether to show the shadow of an overlapped/popup/modal window. It is meaningless if it is an embedded window.

Since:
3.6.0

setShadow

public void setShadow(boolean shadow)
Sets whether to show the shadow of an overlapped/popup/modal window. It is meaningless if it is an embedded window.

Default: true.

Since:
3.6.0

getPosition

public java.lang.String getPosition()
Returns how to position the window at the client screen. It is meaningless if the embedded mode is used.

Default: null which depends on getMode(): If overlapped or popup, HtmlBasedComponent.setLeft(java.lang.String) and HtmlBasedComponent.setTop(java.lang.String) are assumed. If modal or highlighted, it is centered.


setPosition

public void setPosition(java.lang.String pos)
Sets how to position the window at the client screen. It is meaningless if the embedded mode is used.

Parameters:
pos - how to position. It can be null (the default), or a combination of the following values (by separating with comma).
center
Position the window at the center. HtmlBasedComponent.setTop(java.lang.String) and HtmlBasedComponent.setLeft(java.lang.String) are both ignored.
nocenter
Not to position the window at the center. A modal window, by default, will be position at the center. By specifying this value could prevent it and the real position depends on HtmlBasedComponent.setTop(java.lang.String) and HtmlBasedComponent.setLeft(java.lang.String) (since 5.0.4)
left
Position the window at the left edge. HtmlBasedComponent.setLeft(java.lang.String) is ignored.
right
Position the window at the right edge. HtmlBasedComponent.setLeft(java.lang.String) is ignored.
top
Position the window at the top edge. HtmlBasedComponent.setTop(java.lang.String) is ignored.
bottom
Position the window at the bottom edge. HtmlBasedComponent.setTop(java.lang.String) is ignored.
parent
Position the window relative to its parent. That is, the left and top (HtmlBasedComponent.getTop() and HtmlBasedComponent.getLeft()) is an offset to his parent's let-top corner. (since 3.0.2)

For example, "left,center" means to position it at the center of the left edge.


onClose

public void onClose()
Process the onClose event sent when the close button is pressed.

Default: detach itself.


onModal

public void onModal()
Process the onModal event by making itself a modal window.


getContentStyle

public java.lang.String getContentStyle()
Returns the CSS style for the content block of the window.


setContentStyle

public void setContentStyle(java.lang.String style)
Sets the CSS style for the content block of the window.

Default: null.


getContentSclass

public java.lang.String getContentSclass()
Returns the style class used for the content block.

See Also:
setContentSclass(java.lang.String)

setContentSclass

public void setContentSclass(java.lang.String scls)
Sets the style class used for the content block.

Since:
3.0.0
See Also:
getContentSclass()

setTopmost

public void setTopmost()
Makes this window as topmost. It has no effect if this window is embedded.

Since:
5.0.0

renderProperties

protected void renderProperties(ContentRenderer renderer)
                         throws java.io.IOException
Description copied from class: HtmlBasedComponent
Renders the content of this component, excluding the enclosing tags and children.

See also ZK Client-side Reference: Property Rendering

Overrides:
renderProperties in class XulElement
Throws:
java.io.IOException

getZclass

public java.lang.String getZclass()
Description copied from class: HtmlBasedComponent
Returns the ZK Cascading Style class(es) for this component. It usually depends on the implementation of the mold (@{link #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.

Overrides:
getZclass in class HtmlBasedComponent
See Also:
HtmlBasedComponent.getSclass()

beforeChildAdded

public void beforeChildAdded(Component child,
                             Component refChild)
Description copied from class: AbstractComponent
Default: does nothing.

Specified by:
beforeChildAdded in interface ComponentCtrl
Overrides:
beforeChildAdded in class AbstractComponent
Parameters:
child - 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.
See Also:
ComponentCtrl.beforeChildAdded(org.zkoss.zk.ui.Component, org.zkoss.zk.ui.Component)

insertBefore

public boolean insertBefore(Component child,
                            Component refChild)
Description copied from interface: Component
Inserts a child before the reference child.

You 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.

Specified by:
insertBefore in interface Component
Overrides:
insertBefore in class AbstractComponent
Parameters:
child - 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.
Returns:
true if newChild is added successfully or moved; false if it already has the specified child and the order doesn't change.

onChildRemoved

public void onChildRemoved(Component child)
Description copied from class: AbstractComponent
Default: does nothing.

Specified by:
onChildRemoved in interface ComponentCtrl
Overrides:
onChildRemoved in class AbstractComponent
See Also:
ComponentCtrl.onChildRemoved(org.zkoss.zk.ui.Component)

onPageDetached

public void onPageDetached(Page page)
Description copied from class: AbstractComponent
Default: handles special event listeners.

Specified by:
onPageDetached in interface ComponentCtrl
Overrides:
onPageDetached in class AbstractComponent
Parameters:
page - the previous page (never null)
See Also:
ComponentCtrl.onPageDetached(org.zkoss.zk.ui.Page)

setVisible

public boolean setVisible(boolean visible)
Changes the visibility of the window.

Note if you turned on the event thread:
If a modal dialog becomes invisible, the modal state will be ended automatically. In other words, the mode (getMode()) will become OVERLAPPED and the suspending thread is resumed. In other words, the modal window (MODAL) can not be invisible (while a window in other modes could be invisible).

However, if the event thread is not enabled (default), there is no such limitation. In other words, it remains the same mode when becoming invisible.

Specified by:
setVisible in interface Component
Overrides:
setVisible in class AbstractComponent
Returns:
the previous visibility

setDraggable

public void setDraggable(java.lang.String draggable)
Description copied from class: HtmlBasedComponent
Sets "true" or "false" to denote whether a component is draggable, or an identifier of a draggable type of objects.

The simplest way to make a component draggable is to set this attribute to true. To disable it, set this to false.

If there are several types of draggable objects, you could assign an identifier for each type of draggable object. The identifier could be anything but empty.

Overrides:
setDraggable in class HtmlBasedComponent
Parameters:
draggable - "false", "" or null to denote non-draggable; "true" for draggable with anonymous identifier; others for an identifier of draggable.
Notice that if the parent is DragControl and draggable is null, then it means draggable.

clone

public java.lang.Object clone()
Description copied from interface: Component
Clones the component. All of its children and descendants are cloned. Also, ID are preserved.

Specified by:
clone in interface Component
Overrides:
clone in class XulElement
Returns:
the new component. Notice that it doesn't belong to any page, nor desktop. It doesn't have a parent, either.

service

public void service(AuRequest request,
                    boolean everError)
Processes an AU request.

Default: in addition to what are handled by HtmlBasedComponent.service(org.zkoss.zk.au.AuRequest, boolean), it also handles onOpen.

Specified by:
service in interface ComponentCtrl
Overrides:
service in class HtmlBasedComponent
everError - whether any error ever occurred before processing this request.
Since:
5.0.0
See Also:
AbstractComponent.setAuService(org.zkoss.zk.au.AuService)

isCollapsible

public boolean isCollapsible()
Always return false.

Specified by:
isCollapsible in interface Framable
Since:
3.6.2


Copyright © 2005-2011 Potix Corporation. All Rights Reserved. SourceForge.net Logo