package org.newdawn.slick.font.effects; import java.util.List; /** * An effect that has a number of configuration values. This allows the effect to be configured in the Hiero GUI and to be saved * and loaded to and from a file. * * @author Nathan Sweet <misc@n4te.com> */ public interface ConfigurableEffect extends Effect { /** * Returns the list of {@link Value}s for this effect. This list is not typically backed by the effect, so changes to the * values will not take affect until {@link #setValues(List)} is called. */ public List getValues(); /** * Sets the list of {@link Value}s for this effect. */ public void setValues(List values); /** * Represents a configurable value for an effect. */ static public interface Value { /** * Returns the name of the value. */ public String getName (); /** * Sets the string representation of the value. */ public void setString (String value); /** * Gets the string representation of the value. */ public String getString (); /** * Gets the object representation of the value. */ public Object getObject (); /** * Shows a dialog allowing a user to configure this value. */ public void showDialog (); } }