--- 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
!