Interface IHCElement<IMPLTYPE extends IHCElement<IMPLTYPE>>

    • Field Detail

      • DEFAULT_TABINDEX

        static final long DEFAULT_TABINDEX
        The default value for an unset tab index, as -1 is used for "none"
        See Also:
        Constant Field Values
    • Method Detail

      • getTagName

        @Nonnull
        @Nonempty
        String getTagName()
        Returns:
        The tag name of this element (without namespace)
      • getTitle

        @Nullable
        String getTitle()
        Returns:
        The value of the HTML title attribute. May be null.
      • setTitle

        @Nonnull
        IMPLTYPE setTitle​(String sTitle)
        Set the value of the HTML title attribute.
        Parameters:
        sTitle - The new title. May be null.
        Returns:
        this
      • getLanguage

        @Nullable
        String getLanguage()
        Returns:
        The value of the HTML lang attribute. May be null.
      • setLanguage

        @Nonnull
        IMPLTYPE setLanguage​(@Nullable
                             String sLanguage)
        Set the value of the HTML lang attribute.
        Parameters:
        sLanguage - The new language. May be null.
        Returns:
        this
      • getEventHandler

        @Nullable
        IHasJSCode getEventHandler​(@Nullable
                                   EJSEvent eJSEvent)
        Get the event handler of the specified event.
        Parameters:
        eJSEvent - The event to query. May be null.
        Returns:
        null if no such event handler is registered.
      • containsEventHandler

        boolean containsEventHandler​(@Nullable
                                     EJSEvent eJSEvent)
        Check if any event handler is registered for the specified event.
        Parameters:
        eJSEvent - The event to be queried. May be null.
        Returns:
        true of a non-null event is specified, and if a handler is present.
      • addEventHandler

        @Nonnull
        IMPLTYPE addEventHandler​(@Nonnull
                                 EJSEvent eJSEvent,
                                 @Nullable
                                 IHasJSCode aJSHandler)
        Add a JS event handler at the end.
        Parameters:
        eJSEvent - The event to use. May not be null.
        aJSHandler - The JSCode to be executed on the specified event. May be null in which case nothing happens.
        Returns:
        this.
      • prependEventHandler

        @Nonnull
        IMPLTYPE prependEventHandler​(@Nonnull
                                     EJSEvent eJSEvent,
                                     @Nullable
                                     IHasJSCode aJSHandler)
        Add a JS event handler at the front.
        Parameters:
        eJSEvent - The event to use. May not be null.
        aJSHandler - The JSCode to be executed on the specified event. May be null in which case nothing happens.
        Returns:
        this.
      • setEventHandler

        @Nonnull
        IMPLTYPE setEventHandler​(@Nonnull
                                 EJSEvent eJSEvent,
                                 @Nullable
                                 IHasJSCode aJSHandler)
        Set a JS event handler. All eventually present event handlers are overwritten.
        Parameters:
        eJSEvent - The event to set. May not be null.
        aJSHandler - The JSCode to be executed on the specified event. May be null in which case no event handler will be present after the call.
        Returns:
        this.
      • removeAllEventHandler

        @Nonnull
        IMPLTYPE removeAllEventHandler​(@Nullable
                                       EJSEvent eJSEvent)
        Remove all event handler for the specified JS event.
        Parameters:
        eJSEvent - The JS event to remove the handler. May be null.
        Returns:
        this
      • isUnfocusable

        boolean isUnfocusable()
        Returns:
        true if this element cannot be focused.
      • setUnfocusable

        @Nonnull
        IMPLTYPE setUnfocusable​(boolean bUnfocusable)
        Set the unfocusable state of this element.
        Parameters:
        bUnfocusable - true to make it unfocusable, false otherwise.
        Returns:
        this
      • isHidden

        boolean isHidden()
        Returns:
        true if this is hidden
      • setHidden

        IMPLTYPE setHidden​(boolean bHidden)
        Set the hidden state of this element
        Parameters:
        bHidden - true if it is hidden, false otherwise
        Returns:
        this
      • getTabIndex

        @CheckForSigned
        long getTabIndex()
        Returns:
        The tab index of this object. The semantics of negative values depends on the browser! In HTML5 negative values are allowed but won't set a focus when tabbing. The default value is indicated by DEFAULT_TABINDEX
      • setTabIndex

        @Nonnull
        IMPLTYPE setTabIndex​(long nTabIndex)
        Set the tab index of this object. This is a common element in HTML5 only. The default value is DEFAULT_TABINDEX
        Parameters:
        nTabIndex - The tab-index of this object. The semantics of negative values depends on the browser! In HTML5 negative values are allowed but won't set a focus when tabbing.
        Returns:
        this
      • getAccessKey

        @Nullable
        String getAccessKey()
        Returns:
        The value of the HTML accesskey attribute. May be null.
      • setAccessKey

        @Nonnull
        IMPLTYPE setAccessKey​(@Nullable
                              String sAccessKey)
        Set the value of the HTML accesskey attribute.
        Parameters:
        sAccessKey - The new accesskey. May be null.
        Returns:
        this
      • setDraggable

        @Nonnull
        IMPLTYPE setDraggable​(@Nullable
                              EHCDraggable eDraggable)
        Set the draggable state of this element
        Parameters:
        eDraggable - Value to set. May be null.
        Returns:
        this
      • isTranslateOn

        boolean isTranslateOn()
        Returns:
        true if HTML translate is true.
      • isTranslateOff

        boolean isTranslateOff()
        Returns:
        true if HTML translate is false.
      • isTranslateUndefined

        boolean isTranslateUndefined()
        Returns:
        true if HTML translate is not set.
      • getTranslate

        @Nonnull
        com.helger.commons.state.ETriState getTranslate()
        Returns:
        The value of the HTML translate attribute. Never null.
      • setTranslate

        @Nonnull
        default IMPLTYPE setTranslate​(boolean bTranslate)
        Set the value of the HTML translate attribute.
        Parameters:
        bTranslate - true to translate, false otherwise.
        Returns:
        this
      • setTranslate

        @Nonnull
        IMPLTYPE setTranslate​(@Nonnull
                              com.helger.commons.state.ETriState eTranslate)
        Set the value of the HTML translate attribute.
        Parameters:
        eTranslate - The new translate state. May not be null.
        Returns:
        this
      • isSpellCheck

        boolean isSpellCheck()
        Returns:
        true if spell check is enabled, false otherwise.
      • setSpellCheck

        @Nonnull
        IMPLTYPE setSpellCheck​(boolean bSpellCheck)
        Set the value of the HTML spellcheck attribute.
        Parameters:
        bSpellCheck - true to enabled, false otherwise.
        Returns:
        this
      • getRole

        @Nullable
        EHTMLRole getRole()
        Returns:
        The role of this element. May be null. By default an element has no role.
      • setRole

        @Nonnull
        IMPLTYPE setRole​(@Nullable
                         EHTMLRole eRole)
        Set the role attribute of this element.
        Parameters:
        eRole - The role to set. May be null. According to the specs, abstract roles should not be used!
        Returns:
        this
      • customAttrs

        @Nonnull
        @ReturnsMutableObject
        IHCAttrContainer customAttrs()
        Returns:
        A non-null set of "custom" attributes for which no predefined method binding is available. Used e.g. for "aria-*" and "data-*" attributes.
      • withCustomAttrs

        @Nonnull
        default IMPLTYPE withCustomAttrs​(@Nonnull
                                         Consumer<? super IHCAttrContainer> aConsumer)
        A helper method that deals with custom attributes, but maintains the chainable manner of this API.
        Parameters:
        aConsumer - The consumer that deals with the custom attributes. May not be null.
        Returns:
        this for chaining
        Since:
        8.4.4