org.zkoss.zul.impl
Class LabelImageElement

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.impl.LabelElement
                  extended by org.zkoss.zul.impl.LabelImageElement
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, Component, Scope, ComponentCtrl
Direct Known Subclasses:
A, Button, Caption, Checkbox, Comboitem, Fisheye, FooterElement, HeaderElement, Listcell, Menu, Menuitem, Nav, Navitem, Tab, Treecell

public abstract class LabelImageElement
extends LabelElement

A XUL element with a label (LabelElement.getLabel()) and an image (getImage()).

[Since 6.0.0]

To turn on the preload image function for this component, you have to specify the component's attribute map with key "org.zkoss.zul.image.preload" to true. That is, for example, if in a zul file, you shall specify <custom-attributes> of the component like this:

 <button ...>
     <custom-attributes org.zkoss.zul.image.preload="true"/>
 </button>
 
Or specify it onto the root component. For example,
 <window ...>
     <custom-attributes org.zkoss.zul.image.preload="true"/>
     <button .../>
 </window>
 
[Since 6.5.2]

Preload image function is also configurable from zk.xml by setting library properties. For example,

 <library-property/>
     <name>org.zkoss.zul.image.preload</name/>
     <value>ture</value/>
 </library-property/>
 

Author:
tomyeh
See Also:
Serialized Form

Nested Class Summary
protected  class LabelImageElement.ExtraCtrl
          A utility class to implement HtmlBasedComponent.getExtraCtrl().
 
Nested classes/interfaces inherited from class org.zkoss.zk.ui.AbstractComponent
AbstractComponent.Children
 
Field Summary
 
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
protected LabelImageElement()
           
protected LabelImageElement(java.lang.String label)
           
protected LabelImageElement(java.lang.String label, java.lang.String image)
           
 
Method Summary
 java.lang.Object clone()
          Clones the component.
 java.lang.Object getExtraCtrl()
          Returns the client control for this component.
 java.lang.String getHoverImage()
          Returns the URI of the hover image.
 Image getHoverImageContent()
          Returns the content of the hover image set by setHoverImageContent(Image) or setHoverImageContent(RenderedImage).
 java.lang.String getIconSclass()
          Returns the icon font
 java.lang.String getImage()
          Returns the image URI.
 Image getImageContent()
          Returns the image content set by setImageContent(Image) or setImageContent(RenderedImage).
 java.lang.String getSrc()
          Deprecated. As of release 3.5.0, it is redundant since it is the same as getImage()
 boolean isImageAssigned()
          Returns whether the image is available.
protected  void renderProperties(ContentRenderer renderer)
          Renders the content of this component, excluding the enclosing tags and children.
 void setHoverImage(java.lang.String src)
          Sets the image URI.
 void setHoverImageContent(Image image)
          Sets the content of the hover image directly.
 void setHoverImageContent(java.awt.image.RenderedImage image)
          Sets the content of the hover image directly with the rendered image.
 void setIconSclass(java.lang.String iconSclass)
          Sets the icon font
 void setImage(java.lang.String src)
          Sets the image URI.
 void setImageContent(Image image)
          Sets the content directly.
 void setImageContent(java.awt.image.RenderedImage image)
          Sets the content directly with the rendered image.
 void setSrc(java.lang.String src)
          Deprecated. As of release 3.5.0, it is redundant since it is the same as setImage(java.lang.String)
 
Methods inherited from class org.zkoss.zul.impl.LabelElement
getLabel, renderCrawlable, setLabel
 
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, getHeight, getHflex, getLeft, getRenderdefer, getSclass, getStyle, getTooltiptext, getTop, getVflex, getWidth, getZclass, 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, 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, beforeChildAdded, 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, insertBefore, invalidate, isChildable, isInvalidated, isListenerAvailable, isVisible, onChildAdded, onChildRemoved, onPageAttached, onPageDetached, 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, setVisible, 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
 

Constructor Detail

LabelImageElement

protected LabelImageElement()

LabelImageElement

protected LabelImageElement(java.lang.String label,
                            java.lang.String image)
Since:
5.0.0

LabelImageElement

protected LabelImageElement(java.lang.String label)
Since:
5.0.0
Method Detail

setIconSclass

public void setIconSclass(java.lang.String iconSclass)
Sets the icon font

Parameters:
iconSclass - a CSS class name for the icon font
Since:
7.0.0

getIconSclass

public java.lang.String getIconSclass()
Returns the icon font

Since:
7.0.0

getImage

public java.lang.String getImage()
Returns the image URI.

Default: null.


setImage

public void setImage(java.lang.String src)
Sets the image URI.

Calling this method implies setImageContent(null). In other words, the last invocation of setImage(java.lang.String) overrides the previous setImageContent(org.zkoss.image.Image), if any.

See Also:
setImageContent(Image), setImageContent(RenderedImage)

getSrc

public java.lang.String getSrc()
Deprecated. As of release 3.5.0, it is redundant since it is the same as getImage()


setSrc

public void setSrc(java.lang.String src)
Deprecated. As of release 3.5.0, it is redundant since it is the same as setImage(java.lang.String)


setImageContent

public void setImageContent(Image image)
Sets the content directly.

Default: null.

Calling this method implies setImage(null). In other words, the last invocation of setImageContent(org.zkoss.image.Image) overrides the previous setImage(java.lang.String), if any.

Parameters:
image - the image to display.
See Also:
setImage(java.lang.String)

setImageContent

public void setImageContent(java.awt.image.RenderedImage image)
Sets the content directly with the rendered image. It actually encodes the rendered image to an PNG image (Image) with Images.encode(java.lang.String, java.awt.image.RenderedImage, float, boolean), and then invoke setImageContent(org.zkoss.image.Image).

If you want more control such as different format, quality, and naming, you can use Images directly.

Since:
3.0.7

getImageContent

public Image getImageContent()
Returns the image content set by setImageContent(Image) or setImageContent(RenderedImage).

Note: it won't load the content specified by setImage(java.lang.String). Actually, it returns null if setImage(java.lang.String) was called.


getHoverImage

public java.lang.String getHoverImage()
Returns the URI of the hover image. The hover image is used when the mouse is moving over this component.

Default: null.

Since:
3.5.0

setHoverImage

public void setHoverImage(java.lang.String src)
Sets the image URI. The hover image is used when the mouse is moving over this component.

Calling this method implies setHoverImageContent(null). In other words, the last invocation of setHoverImage(java.lang.String) overrides the previous setHoverImageContent(org.zkoss.image.Image), if any.

Since:
3.5.0

getHoverImageContent

public Image getHoverImageContent()
Returns the content of the hover image set by setHoverImageContent(Image) or setHoverImageContent(RenderedImage).

Note: it won't load the content specified by setImage(java.lang.String). Actually, it returns null if setImage(java.lang.String) was called.

Since:
5.0.8

setHoverImageContent

public void setHoverImageContent(Image image)
Sets the content of the hover image directly. The hover image is used when the mouse is moving over this component.

Default: null.

Calling this method implies setHoverImage(null). In other words, the last invocation of setHoverImageContent(org.zkoss.image.Image) overrides the previous setHoverImage(java.lang.String), if any.

Parameters:
image - the image to display.
Since:
3.5.0

setHoverImageContent

public void setHoverImageContent(java.awt.image.RenderedImage image)
Sets the content of the hover image directly with the rendered image. The hover image is used when the mouse is moving over this component.

It actually encodes the rendered image to an PNG image (Image) with Images.encode(java.lang.String, java.awt.image.RenderedImage, float, boolean), and then invoke setHoverImageContent(org.zkoss.image.Image).

If you want more control such as different format, quality, and naming, you can use Images directly.

Since:
3.5.0

isImageAssigned

public boolean isImageAssigned()
Returns whether the image is available. In other words, it return true if setImage(java.lang.String) or setImageContent(org.zkoss.image.Image) is called with non-null.


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 LabelElement
Throws:
java.io.IOException

getExtraCtrl

public java.lang.Object getExtraCtrl()
Description copied from class: HtmlBasedComponent
Returns the client control for this component. It is used only by component developers.

Default: creates an instance of HtmlBasedComponent.ExtraCtrl.

Specified by:
getExtraCtrl in interface ComponentCtrl
Overrides:
getExtraCtrl in class HtmlBasedComponent
Returns:
null if no special handling required. If the component requires some special controls, it could return an object that implements one or several interfaces in the org.zkoss.zk.ui.ext.render package. For example, Cropper.
See Also:
ComponentCtrl.getExtraCtrl()

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.


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