diff options
Diffstat (limited to 'javax/swing/text/StyleContext.java')
-rw-r--r-- | javax/swing/text/StyleContext.java | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/javax/swing/text/StyleContext.java b/javax/swing/text/StyleContext.java index cbb6b0ee6..e2643a2aa 100644 --- a/javax/swing/text/StyleContext.java +++ b/javax/swing/text/StyleContext.java @@ -48,6 +48,7 @@ import java.io.ObjectOutputStream; import java.io.Serializable; import java.util.Enumeration; import java.util.EventListener; +import java.util.HashSet; import java.util.Hashtable; import javax.swing.event.ChangeEvent; @@ -406,7 +407,12 @@ public class StyleContext static StyleContext defaultStyleContext = new StyleContext(); static final int compressionThreshold = 9; - + + /** + * These attribute keys are handled specially in serialization. + */ + private static HashSet staticAttributeKeys = new HashSet(); + EventListenerList listenerList; Hashtable styleTable; @@ -737,4 +743,19 @@ public class StyleContext { throw new InternalError("not implemented"); } + + /** + * Registers an attribute key as a well-known keys. When an attribute with + * such a key is written to a stream,, a special syntax is used so that it + * can be recognized when it is read back in. All attribute keys defined + * in <code>StyleContext</code> are registered as static keys. If you define + * additional attribute keys that you want to exist as nonreplicated objects, + * then you should register them using this method. + * + * @param key the key to register as static attribute key + */ + public static void registerStaticAttributeKey(Object key) + { + staticAttributeKeys.add(key); + } } |