
package bdv.ui.settings.style;

public interface Style< S extends Style< S > >
{
	default S copy()
	{
		return copy( getName() );
	}

	/**
	 * Returns a new style instance, copied from this style.
	 *
	 * @param newName
	 *            the name for the copied style.
	 * @return a new style instance.
	 */
	S copy( String newName );

	String getName();

	void setName( String name );
}
