--- a/UIPainterView.st Tue Mar 04 17:39:10 1997 +0100
+++ b/UIPainterView.st Tue Mar 04 17:41:19 1997 +0100
@@ -830,7 +830,7 @@
props name:(self uniqueNameFor:cls).
viewProperties add:props.
- ((anObject respondsTo:#label:) and:[(spec respondsTo:#label:)]) ifTrue:[
+ ((spec respondsTo:#label:) and:[self supportsLabel:anObject]) ifTrue:[
anObject label:(props name).
spec label:(props name)
].
@@ -1363,22 +1363,15 @@
self transaction:#specification selectionDo:[:aView|
builder := UIBuilder new.
props := self propertyOfView:aView.
- name := aSpec name.
-
- self undoSpecModify:(props identifier).
+ name := (aSpec name) withoutSeparators.
- name = (aView name) ifFalse:[
- name notNil ifTrue:[
- name := name withoutSeparators.
-
- (name isEmpty or:[(self propertyOfName:name) notNil]) ifTrue:[
- name := nil
- ]
- ].
- name isNil ifTrue:[
- aSpec name:(aView name).
+ name = props name ifFalse:[
+ (self propertyOfName:name) notNil ifTrue:[
+ name := props name
]
].
+ aSpec name:name.
+ self undoSpecModify:(props identifier).
aSpec needsRebuildForAttributes ifTrue:[
v := aSpec buildViewWithLayoutFor:builder in:aView superView.
@@ -1396,9 +1389,7 @@
]
].
self changed:#tree
- ].
-
- "Modified: 1.3.1997 / 01:39:53 / cg"
+ ]
! !
!UIPainterView methodsFor:'testing'!
@@ -1444,6 +1435,19 @@
^ true
+!
+
+supportsLabel:aComponent
+ "returns true if component supports label
+ "
+ (aComponent respondsTo:#label:) ifTrue:[
+ ( (aComponent isKindOf:ArrowButton)
+ or:[aComponent isKindOf:CheckToggle]
+ ) ifFalse:[
+ ^ true
+ ]
+ ].
+ ^ false
! !
!UIPainterView methodsFor:'transaction'!