Class WTheme

java.lang.Object
eu.webtoolkit.jwt.WObject
eu.webtoolkit.jwt.WTheme
Direct Known Subclasses:
WBootstrapTheme, WCssTheme

public abstract class WTheme
extends WObject
Abstract base class for themes in JWt.

See Also:
WApplication.setTheme(WTheme theme)
  • Constructor Details

  • Method Details

    • getName

      public abstract java.lang.String getName()
      Returns a theme name.

      Returns a unique name for the theme. This name is used by the default implementation of getResourcesUrl() to compute a location for the theme's resources.

    • getResourcesUrl

      public java.lang.String getResourcesUrl()
      Returns the URL where theme-related resources are stored.

      The default implementation considers a folder within JWt's resource directory, based on the theme getName().

    • serveCss

      public void serveCss​(java.lang.StringBuilder out)
      Serves the CSS for the theme.

      This must serve CSS declarations for the theme.

      The default implementation serves all the getStyleSheets().

    • getStyleSheets

      public abstract java.util.List<WCssStyleSheet> getStyleSheets()
      Returns a vector with stylesheets for the theme.

      This should return a vector with stylesheets that implement the theme. This list may be tailored to the current user agent, which is read from the application environment.

    • apply

      public abstract void apply​(WWidget widget, WWidget child, int widgetRole)
      Applies the theme to a child of a composite widget.

      The widgetRole indicates the role that child has within the implementation of the widget.

    • apply

      public abstract void apply​(WWidget widget, DomElement element, int elementRole)
      Applies the theme to a DOM element that renders a widget.

      The element is a rendered representation of the widget, and may be further customized to reflect the theme.

    • getDisabledClass

      public abstract java.lang.String getDisabledClass()
      Returns a generic CSS class name for a disabled element.
    • getActiveClass

      public abstract java.lang.String getActiveClass()
      Returns a generic CSS class name for an active element.
    • utilityCssClass

      public abstract java.lang.String utilityCssClass​(int utilityCssClassRole)
      Returns a generic CSS class name for the chosen role.
    • isCanStyleAnchorAsButton

      public abstract boolean isCanStyleAnchorAsButton()
      Returns whether the theme allows for an anchor to be styled as a button.
    • applyValidationStyle

      public abstract void applyValidationStyle​(WWidget widget, WValidator.Result validation, java.util.EnumSet<ValidationStyleFlag> flags)
      Applies a style that indicates the result of validation.
    • applyValidationStyle

      public final void applyValidationStyle​(WWidget widget, WValidator.Result validation, ValidationStyleFlag flag, ValidationStyleFlag... flags)
      Applies a style that indicates the result of validation.

      Calls applyValidationStyle(widget, validation, EnumSet.of(flag, flags))

    • canBorderBoxElement

      public abstract boolean canBorderBoxElement​(DomElement element)