Class SpreadsheetThemes


  • public class SpreadsheetThemes
    extends Object
    Facade for accessing internal theming subsystem In most cases, users need not use the underlying theme registry and theme resolver directly.
    Since:
    3.5.0
    Author:
    sam, neillee, RaymondChao
    • Constructor Detail

      • SpreadsheetThemes

        public SpreadsheetThemes()
    • Method Detail

      • setTheme

        public static void setTheme​(org.zkoss.zk.ui.Execution exe,
                                    String themeName)
        Sets the theme name using the current theme resolution strategy Default strategy is to use cookies
        Parameters:
        exe - Execution
        themeName - the new intended theme name
      • getTheme

        public static String getTheme​(org.zkoss.zk.ui.Execution exe)
        Returns the theme specified using the current theme resolution strategy Default strategy is to use cookies
        Parameters:
        exe - Execution
        Returns:
        the name of the theme or a fall back theme name determined by the theme resolution strategy used.
      • getCurrentTheme

        public static String getCurrentTheme()
        Returns the current theme name
        Returns:
        the current theme name
      • hasTheme

        public static boolean hasTheme​(String themeName)
        Returns true if the theme is registered
        Parameters:
        themeName - the name of the theme
        Returns:
        true if the theme with the given name is registered
      • getThemes

        public static String[] getThemes()
        Returns an array of registered theme names
        Returns:
        an array of registered theme names
      • register

        public static void register​(String themeName)
        Register the theme, so it becomes available in the theme list
        Parameters:
        themeName - the name of the theme to be registered
      • register

        public static void register​(String themeName,
                                    SpreadsheetStandardTheme.ThemeOrigin origin)
        Register the theme, and specifies its origin (e.g. from JAR or from FOLDER) Please use Themes.register("custom", Themes.ThemeOrigin.FOLDER) to make your custom theme available if the theme resource is inside a folder
        Parameters:
        themeName - theme name
        origin - origin of the theme resource
      • register

        public static void register​(String themeName,
                                    String displayName,
                                    int priority)
        Register the theme with details
        Parameters:
        themeName - theme name
        displayName - The human name of the theme
        priority - Priority is higher if the value the smaller
      • register

        public static void register​(String themeName,
                                    String displayName,
                                    int priority,
                                    SpreadsheetStandardTheme.ThemeOrigin origin)
        Register the theme, its display name, its priority; and also specifies its origin (e.g. from JAR or from FOLDER). Please use Themes.register("custom", "Custom Theme", 100, Themes.ThemeOrigin.FOLDER) to make your custom theme available if the theme resource is inside a folder.
        Parameters:
        themeName - theme name
        displayName - a more descriptive name for the theme, for display purpose
        priority - priority of the theme
        origin - origin of the theme resource
      • setDisplayName

        public static void setDisplayName​(String themeName,
                                          String displayName)
        Set the display name (human name) of the theme
        Parameters:
        themeName - theme name
        displayName - the new name to be displayed
      • getDisplayName

        public static String getDisplayName​(String themeName)
        Return the display name (human name) of the theme
        Parameters:
        themeName - theme name
        Returns:
        the display name
      • setPriority

        public static void setPriority​(String themeName,
                                       int priority)
        Set the priority of the theme.
        Parameters:
        themeName - theme name
        priority - Priority is higher if the value the smaller
      • getPriority

        public static int getPriority​(String themeName)
        Return the priority of the given theme
        Parameters:
        themeName - theme name
        Returns:
        the priority of the given theme
      • resolveThemeURL

        public static final String resolveThemeURL​(String url)