--- a/UIPainterView.st Sun May 10 16:09:06 2009 +0200
+++ b/UIPainterView.st Sun May 10 22:49:47 2009 +0200
@@ -1633,7 +1633,12 @@
]
].
vSpec isNil ifTrue:[
- self warn:'Oops - could not create spec for some view'
+ (Dialog
+ confirm:('Oops - could not create spec for view: %1\\Continue ?' bindWith:aView printString) withCRs
+ noLabel:'Abort')
+ ifFalse:[
+ AbortSignal raise
+ ].
].
spec add:vSpec
].
@@ -2435,22 +2440,22 @@
|mySpec subSpecs|
mySpec := self specFor:aView.
-
(mySpec notNil and:[mySpec class supportsSubComponents]) ifTrue:[
- (aView subViews notNil) ifTrue:[
- aView components notEmptyOrNil ifTrue:[ self halt ].
- aView subViews do:[:aSubView||spec|
- spec := self fullSpecFor:aSubView.
- spec notNil ifTrue:[
- subSpecs isNil ifTrue:[
- subSpecs := OrderedCollection new
- ].
- subSpecs add:spec.
- ].
+ subSpecs isNil ifTrue:[
+ subSpecs := OrderedCollection new
+ ].
+
+ ((aView components ? #()) , (aView subViews ? #())) do:[:aSubViewOrComponent |
+ |spec|
+
+ spec := self fullSpecFor:aSubViewOrComponent.
+ spec notNil ifTrue:[
+ subSpecs add:spec.
].
- subSpecs notNil ifTrue:[
- mySpec component:(SpecCollection new collection:subSpecs)
- ]
+ ].
+
+ subSpecs notEmptyOrNil ifTrue:[
+ mySpec component:(SpecCollection new collection:subSpecs)
]
].
^ mySpec