UIPainter.st
changeset 1442 ed108e53c783
parent 1439 540781421bbf
child 1444 fec7424dccda
--- a/UIPainter.st	Thu Dec 07 08:50:17 2000 +0100
+++ b/UIPainter.st	Thu Dec 07 14:43:47 2000 +0100
@@ -3579,28 +3579,32 @@
     |cls application|
 
     self hasSpecClassAndSelector ifFalse:[
-	self doSave isNil ifTrue: [^nil].
+        self doSave isNil ifTrue: [^nil].
     ] ifTrue: [
-	self askForSectionModification.    
-	(modified or: [self painter isModified or: [self helpTool modified]])
-	ifTrue:
-	[
-	    ((YesNoBox title:'Window Spec was modified!!')        
-		noText:'Cancel';
-		yesText:'Save it and start';
-		showAtPointer;
-		accepted) ifFalse: [^nil].
-	    self doSave isNil ifTrue: [^nil]
-	]
+        self askForSectionModification.    
+        (modified or: [self painter isModified or: [self helpTool modified]])
+        ifTrue:
+        [
+            ((YesNoBox title:'Window Spec was modified!!')        
+                noText:'Cancel';
+                yesText:'Save it and start';
+                showAtPointer;
+                accepted) ifFalse: [^nil].
+            self doSave isNil ifTrue: [^nil]
+        ]
     ].
 
     cls := self resolveName:specClass.
     cls isNil ifTrue:[
-	self warn:'Oops cannot start application - no class:' , specClass.
-	^ nil
+        self warn:'Oops cannot start application - no class:' , specClass.
+        ^ nil
     ].
     ((application := cls new) respondsTo:#openInterface:) ifFalse:[
-        ^ self warn:('The application does not respond to the ''openInterface:'' message.\\(maybe the spec is supposed to be used as subApplication/subCanvas)') withCRs.
+        (self confirm:('The application does not respond to the ''openInterface:'' message.\(maybe the spec is supposed to be used as subApplication/subCanvas)\\Shall I try to open this as a standAlone dialog ?') withCRs)
+        ifTrue:[
+            SimpleDialog new openSpec:(cls perform:specSelector) withBindings:nil.
+        ].
+        ^ self.
     ].        
     application openInterface:specSelector
 !