Index: NSButtonCell.m
===================================================================
--- NSButtonCell.m	(revision 27792)
+++ NSButtonCell.m	(working copy)
@@ -199,7 +199,7 @@
  */
 - (NSString*) title
 {
-  return [self stringValue];
+  return [super stringValue];
 }
 
 /** <p>Returns the NSButtonCell's alternate title ( used when highlighted ).
@@ -327,7 +327,7 @@
  */
 - (void) setTitle: (NSString*)aString
 {
-  [self setStringValue: aString];
+  [super setStringValue:aString];
 }
 
 /**<p>Sets the NSButtonCell's alternate title ( used when highlighted ) 
@@ -373,12 +373,12 @@
 
 - (NSAttributedString *)attributedTitle
 {
-  return [self attributedStringValue];
+  return [super attributedStringValue];
 }
 
 - (void)setAttributedTitle:(NSAttributedString *)aString
 {
-  [self setAttributedStringValue: aString];
+  [super setAttributedStringValue: aString];
 }
 
 - (void)setTitleWithMnemonic:(NSString *)aString
@@ -812,6 +812,26 @@
     }
 }
 
+- (void) setStringValue: (NSString *)aString
+{
+  [self setState: ([aString length] != 0)];
+}
+
+- (NSString *) stringValue
+{
+  return _cell.state ? @"0" : @"1";
+}
+
+- (void) setAttributedStringValue:(NSAttributedString *)attrString
+{
+  [self setState: ([attrString length] != 0)];
+}
+
+- (NSAttributedString *) attributedStringValue
+{
+   return AUTORELEASE([[NSAttributedString alloc] initWithString: _cell.state ? @"0" : @"1"]); 
+}
+
 /*
  * Displaying
  */
