/* Theme.java Purpose: Description: History: Mar 14, 2013 06:25:00 PM, Created by neillee Copyright (C) 2013 Potix Corporation. All Rights Reserved. */ package org.zkoss.web.theme; /** * A Theme encapsulates theme-specific attributes. Each theme should have * at least a name, which helps the web application to identify it. * * A Theme should be subclassed to define other attributes associated with * concrete themes, such as file paths included in a theme, or variables that * could be used to parameterize a theme. * * @author Neil * @since 6.5.2 */ public abstract class Theme { // name of the theme private String _name = ""; /** * Instantiate a theme */ public Theme() { } /** * Instantiate a theme with the given name * @param themeName name used to identify the theme */ public Theme(String themeName) { setName(themeName); } /** * @return name used to identify the theme */ public String getName() { return _name; } /** * Rename the theme * @param themeName new name used by the theme */ public void setName(String themeName) { if (themeName == null) themeName = ""; _name = themeName; } /** * @return name of the theme */ public String toString() { return _name; } }