Package org.zkoss.zkmax.zul

## Class Signature

- java.lang.Object
- - org.zkoss.zk.ui.AbstractComponent
  - - org.zkoss.zk.ui.HtmlBasedComponent
    - - org.zkoss.zul.impl.XulElement
      - - org.zkoss.zkmax.zul.Signature

- All Implemented Interfaces:
    `java.io.Serializable`, `java.lang.Cloneable`, `Component`, `Scope`, `ComponentCtrl`

      public class Signature
      extends XulElement

  A signature pad for user to sign a signature on it with save, undo, clear method.
  Since:
    8.6.0
  Author:
    klyve, charles
  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### 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, AbstractComponent.ForwardInfo, AbstractComponent.TargetInfo`

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static java.lang.String` | `ON_CLEAR` |
    `static java.lang.String` | `ON_SAVE` |

    - ### 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

      `AFTER_CHILD_ADDED, AFTER_CHILD_REMOVED, AFTER_CLONED, AFTER_PAGE_ATTACHED, AFTER_PAGE_DETACHED, AFTER_PARENT_CHANGED, CE_BUSY_IGNORE, CE_DUPLICATE_IGNORE, CE_IMPORTANT, CE_NON_DEFERRABLE, CE_REPEAT_IGNORE`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Signature()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `clear()` | Clear the signature.
    `java.lang.String` | `getBackgroundColor()` | Returns the background color of the signature pad.
    `java.lang.String` | `getBackgroundImage()` | Returns the background image URI of signature pad.
    `java.lang.String` | `getClearLabel()` | Returns the label on clear button.
    `java.lang.String` | `getPenColor()` | Returns the pen color of the signature pad.
    `int` | `getPenSize()` | Returns the pen size of the signature pad.
    `java.lang.String` | `getSaveLabel()` | Returns the label on save button.
    `java.lang.String` | `getSaveType()` | Returns the type for saving signature image.
    `java.lang.String` | `getUndoLabel()` | Returns the label on undo button.
    `boolean` | `isBackgroundIncluded()` | Returns whether the background color and image are included while saved.
    `protected boolean` | `isChildable()` | Returns whether this component can have a child.
    `boolean` | `isToolbarVisible()` | Returns the visibility of the toolbar for signature pad.
    `protected void` | `renderProperties​(ContentRenderer renderer)` | Renders the content of this component, excluding the enclosing tags and children.
    `void` | `save()` | Save the Signature.
    `void` | `service​(AuRequest request, boolean everError)` | Processes an AU request.
    `void` | `setBackgroundColor​(java.lang.String backgroundColor)` | Sets the background color for the signature pad.
    `void` | `setBackgroundImage​(java.lang.String backgroundImage)` | Sets the background image URI for the signature pad.
    `void` | `setBackgroundIncluded​(boolean backgroundIncluded)` | Sets whether the background color and image are included while saved.
    `void` | `setClearLabel​(java.lang.String clearLabel)` | Sets the label on clear button.
    `void` | `setPenColor​(java.lang.String penColor)` | Sets the pen color of the signature pad.
    `void` | `setPenSize​(int penSize)` | Sets the pen size of the signature pad.
    `void` | `setSaveLabel​(java.lang.String saveLabel)` | Sets the label on save button.
    `void` | `setSaveType​(java.lang.String saveType)` | Sets the type for saving signature image.
    `void` | `setToolbarVisible​(boolean toolbarVisible)` | Sets the visibility of the toolbar for signature pad.
    `void` | `setUndoLabel​(java.lang.String undoLabel)` | Sets the label on undo button.
    `void` | `undo()` | Undo the signature.

    - ### Methods inherited from class org.zkoss.zul.impl.XulElement

      `clone, getContext, getCtrlKeys, getPopup, getPropertyAccess, getTooltip, setContext, setContext, setContextAttributes, setCtrlKeys, setPopup, setPopup, setPopupAttributes, setTooltip, setTooltip, setTooltipAttributes`

    - ### Methods inherited from class org.zkoss.zk.ui.HtmlBasedComponent

      `addSclass, evalCSSFlex, focus, getAction, getClientAction, getDraggable, getDroppable, getExtraCtrl, getHeight, getHflex, getLeft, getRenderdefer, getSclass, getStyle, getTabindex, getTabindexInteger, getTooltiptext, getTop, getVflex, getWidth, getZclass, getZindex, getZIndex, removeSclass, removeSclass, setAction, setClass, setClientAction, setDraggable, setDroppable, setFocus, setHeight, setHeight0, setHeightDirectly, setHflex, setHflex0, setHflexDirectly, setLeft, setLeftDirectly, setRenderdefer, setSclass, setStyle, setTabindex, setTabindex, setTooltiptext, setTop, setTopDirectly, setVflex, setVflex0, setVflexDirectly, setWidth, setWidth0, setWidthDirectly, setZclass, setZindex, setZIndex, setZIndexDirectly`

    - ### Methods inherited from class org.zkoss.zk.ui.AbstractComponent

      `addAnnotation, addCallback, addClientEvent, addEventHandler, addEventListener, addEventListener, addForward, addForward, addForward, addForward, addMoved, addRedrawCallback, addScopeListener, addShadowRoot, addShadowRootBefore, addSharedEventHandlerMap, appendChild, applyProperties, beforeChildAdded, beforeChildRemoved, beforeParentChanged, destroyIndexCacheMap, detach, didActivate, didActivate, didDeserialize, didDeserialize, disableBindingAnnotation, disableClientUpdate, disableHostChanged, enableBindingAnnotation, enableHostChanged, getAnnotatedProperties, getAnnotatedPropertiesBy, getAnnotation, getAnnotations, getAnnotations, getAttribute, getAttribute, getAttribute, getAttributeOrFellow, getAttributes, getAttributes, getAuService, getAutag, getCallback, getChildren, getClientAttribute, getClientDataAttribute, getClientEvents, getDefaultMold, getDefinition, getDesktop, getEventHandler, getEventHandlerNames, getEventListenerMap, getEventListeners, getFellow, getFellow, getFellowIfAny, getFellowIfAny, getFellows, getFirstChild, getForwards, getId, getIndexCacheMap, getLastChild, getMold, getNextSibling, getPage, getParent, getPreviousSibling, getRedrawCallback, getRoot, getShadowFellowIfAny, getShadowRoots, getShadowVariable, getShadowVariable, getShadowVariable0, getSpaceOwner, getSpecialRendererOutput, getStubonly, getSubBindingAnnotationCount, getTemplate, getTemplateNames, getUuid, getWidgetAttributeNames, getWidgetClass, getWidgetListener, getWidgetListenerNames, getWidgetOverride, getWidgetOverrideNames, hasAttribute, hasAttribute, hasAttribute, hasAttributeOrFellow, hasBindingAnnotation, hasFellow, hasFellow, hasSubBindingAnnotation, initIndexCacheMap, insertBefore, invalidate, isDisabledHostChanged, isInitialized, isInvalidated, isListenerAvailable, isVisible, onChildAdded, onChildRemoved, onPageAttached, onPageDetached, onParentChanged, onWrongValue, query, queryAll, redraw, redrawChildren, removeAttribute, removeAttribute, removeAttribute, removeCallback, removeChild, removeEventListener, removeForward, removeForward, removeRedrawCallback, removeScopeListener, removeShadowRoot, render, render, render, renderPropertiesOnly, replace, response, response, response, service, sessionDidActivate, sessionWillPassivate, setAttribute, setAttribute, setAttribute, setAuService, setAutag, setClientAttribute, setClientDataAttribute, setDefinition, setDefinition, setId, setMold, setPage, setPageBefore, setParent, setStubonly, setStubonly, setSubBindingAnnotationCount, setTemplate, setVisible, setVisibleDirectly, setWidgetClass, setWidgetListener, setWidgetOverride, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdate, smartUpdateWidgetListener, smartUpdateWidgetOverride, toString, updateByClient, updateSubBindingAnnotationCount, willPassivate, willPassivate, willSerialize, willSerialize`

    - ### Methods inherited from class java.lang.Object

      `equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### ON_SAVE

          public static final java.lang.String ON_SAVE

      See Also:
        Constant Field Values

    - #### ON_CLEAR

          public static final java.lang.String ON_CLEAR

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### Signature

          public Signature()

  - ### Method Detail

    - #### isChildable

          protected boolean isChildable()

      Description copied from class: `AbstractComponent`
      Returns whether this component can have a child.

      Default: return true (means it can have children).

      Overrides:
        `isChildable` in class `AbstractComponent`

    - #### getPenSize

          public int getPenSize()

      Returns the pen size of the signature pad.

      Default: 1.

      Returns:
        pen size of the signature pad.

    - #### setPenSize

          public void setPenSize​(int penSize)

      Sets the pen size of the signature pad.
      Parameters:
        `penSize` - the pen size for signature pad.

    - #### getPenColor

          public java.lang.String getPenColor()

      Returns the pen color of the signature pad.

      Default: black.

      Returns:
        pen color of the signature pad.

    - #### setPenColor

          public void setPenColor​(java.lang.String penColor)

      Sets the pen color of the signature pad.
      Parameters:
        `penColor` - the pen color for signature pad.

    - #### getBackgroundColor

          public java.lang.String getBackgroundColor()

      Returns the background color of the signature pad.

      Default: white.

      Returns:
        the background color of the signature pad.

    - #### setBackgroundColor

          public void setBackgroundColor​(java.lang.String backgroundColor)

      Sets the background color for the signature pad.
      Parameters:
        `backgroundColor` - the background color for signature pad.

    - #### getBackgroundImage

          public java.lang.String getBackgroundImage()

      Returns the background image URI of signature pad.

      Default: null.

      Returns:
        the background image URI of signature pad.
      Since:
        9.6.0

    - #### setBackgroundImage

          public void setBackgroundImage​(java.lang.String backgroundImage)

      Sets the background image URI for the signature pad. Notice that the background image will cover the background color.
      Parameters:
        `backgroundImage` - the background image URI of signature pad.
      Since:
        9.6.0

    - #### isBackgroundIncluded

          public boolean isBackgroundIncluded()

      Returns whether the background color and image are included while saved.

      Default: true.

      Returns:
        whether the background color and image are included while saved.
      Since:
        9.6.0

    - #### setBackgroundIncluded

          public void setBackgroundIncluded​(boolean backgroundIncluded)

      Sets whether the background color and image are included while saved.
      Parameters:
        `backgroundIncluded` - whether the background color and image are included while saved.
      Since:
        9.6.0

    - #### isToolbarVisible

          public boolean isToolbarVisible()

      Returns the visibility of the toolbar for signature pad.

      Default: true.

      Returns:
        the visibility of the toolbar.

    - #### setToolbarVisible

          public void setToolbarVisible​(boolean toolbarVisible)

      Sets the visibility of the toolbar for signature pad.
      Parameters:
        `toolbarVisible` - the visibility of the toolbar.

    - #### getSaveType

          public java.lang.String getSaveType()

      Returns the type for saving signature image. The supported type is MIME type, e.g., image/png, image/jpeg. If the requested type is invalid or unspecified, it will use image/png. Default: image/png.
      Returns:
        type for saving signature image.

    - #### setSaveType

          public void setSaveType​(java.lang.String saveType)

      Sets the type for saving signature image. The supported type is MIME type, e.g., image/png, image/jpeg. If the requested type is invalid or unspecified, it will use image/png.
      Parameters:
        `saveType` - type for saving signature image.

    - #### getUndoLabel

          public java.lang.String getUndoLabel()

      Returns the label on undo button. Default: null.
      Returns:
        the label on undo button.

    - #### setUndoLabel

          public void setUndoLabel​(java.lang.String undoLabel)

      Sets the label on undo button.
      Parameters:
        `undoLabel` - the label on undo button.

    - #### getSaveLabel

          public java.lang.String getSaveLabel()

      Returns the label on save button. Default: null.
      Returns:
        the label on save button.

    - #### setSaveLabel

          public void setSaveLabel​(java.lang.String saveLabel)

      Sets the label on save button.
      Parameters:
        `saveLabel` - the label on undo button.

    - #### getClearLabel

          public java.lang.String getClearLabel()

      Returns the label on clear button. Default: null.
      Returns:
        the label on clear button.

    - #### setClearLabel

          public void setClearLabel​(java.lang.String clearLabel)

      Sets the label on clear button.
      Parameters:
        `clearLabel` - the label on clear button.

    - #### undo

          public void undo()

      Undo the signature.

    - #### clear

          public void clear()

      Clear the signature.

    - #### save

          public void save()

      Save the Signature. It will upload a file and fire an onSave event to server, upload file type is according to `getSaveType()`.

    - #### service

          public void service​(AuRequest request,
                              boolean everError)

      Description copied from class: `HtmlBasedComponent`
      Processes an AU request.

      Default: it handles onClick, onDoubleClick, onRightClick onMove, onSize, onZIndex.

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

    - #### 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`