/* * @(#)MutableAttributeSet.java 1.17 04/05/05 * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */ package javax.swing.text; import java.util.Enumeration; /** * A generic interface for a mutable collection of unique attributes. * * Implementations will probably want to provide a constructor of the * form: * public XXXAttributeSet(ConstAttributeSet source); * * @version 1.17 05/05/04 */ public interface MutableAttributeSet extends AttributeSet { /** * Creates a new attribute set similar to this one except that it contains * an attribute with the given name and value. The object must be * immutable, or not mutated by any client. * * @param name the name * @param value the value */ public void addAttribute(Object name, Object value); /** * Creates a new attribute set similar to this one except that it contains * the given attributes and values. * * @param attributes the set of attributes */ public void addAttributes(AttributeSet attributes); /** * Removes an attribute with the given name. * * @param name the attribute name */ public void removeAttribute(Object name); /** * Removes an attribute set with the given names. * * @param names the set of names */ public void removeAttributes(Enumeration names); /** * Removes a set of attributes with the given name. * * @param attributes the set of attributes */ public void removeAttributes(AttributeSet attributes); /** * Sets the resolving parent. This is the set * of attributes to resolve through if an attribute * isn't defined locally. * * @param parent the parent */ public void setResolveParent(AttributeSet parent); }