error save execution;
authorclaus
Wed, 24 Aug 1994 01:48:50 +0200
changeset 39 fe82494dd6d6
parent 38 2d74437258d2
child 40 a9ae39be7004
error save execution; project stuff is now optional
OldLauncher.st
--- a/OldLauncher.st	Mon Aug 22 20:07:44 1994 +0200
+++ b/OldLauncher.st	Wed Aug 24 01:48:50 1994 +0200
@@ -21,7 +21,7 @@
 COPYRIGHT (c) 1991 by Claus Gittinger
               All Rights Reserved
 
-$Header: /cvs/stx/stx/libtool/OldLauncher.st,v 1.13 1994-08-22 18:07:21 claus Exp $
+$Header: /cvs/stx/stx/libtool/OldLauncher.st,v 1.14 1994-08-23 23:48:50 claus Exp $
 '!
 
 !Launcher class methodsFor:'documentation'!
@@ -42,7 +42,7 @@
 
 version
 "
-$Header: /cvs/stx/stx/libtool/OldLauncher.st,v 1.13 1994-08-22 18:07:21 claus Exp $
+$Header: /cvs/stx/stx/libtool/OldLauncher.st,v 1.14 1994-08-23 23:48:50 claus Exp $
 "
 !
 
@@ -305,21 +305,22 @@
         )
     ].
 
-    myMenu subMenuAt:#projectMenu put:(
-        PopUpMenu labels:(resources array:#(
-                            'new project'
-                            '-'
-                            'select project'
-                           ))
-               selectors:#(
-                            newProject
-                            nil
-                            selectProject
-                          )
-                receiver:self
-                     for:self
-
-    ).
+    Project notNil ifTrue:[
+        myMenu subMenuAt:#projectMenu put:(
+            PopUpMenu labels:(resources array:#(
+                                'new project'
+                                '-'
+                                'select project'
+                               ))
+                   selectors:#(
+                                newProject
+                                nil
+                                selectProject
+                              )
+                    receiver:self
+                         for:self
+        ).
+    ].
 
     myMenu subMenuAt:#goodyMenu put:(
         PopUpMenu labels:(resources array:#(
@@ -465,7 +466,25 @@
     self extent:myExtent.
     self minExtent:myExtent.
     self maxExtent:myExtent.
-    super realize
+    super realize.
+
+    "
+     catch errors - dont want a debugger here ...
+    "
+    Processor activeProcess emergencySignalHandler:[:ex |
+        |box|
+
+        box := YesNoBox title:('Error while launching ...\' , ex errorString , '\\debug ?') withCRs.
+        "
+         icon should be whatever WarnBoxes use as icon
+        "
+        box formLabel form:(WarningBox new formLabel label).
+        box yesAction:[Debugger 
+                           enter:ex suspendedContext
+                           withMessage:ex errorString].
+        box showAtPointer.
+        Object abortSignal raise.
+    ].
 !
 
 reinitialize
@@ -496,7 +515,7 @@
 !
 
 addToCurrentProject
-    "ignored here"
+    "ignored here - the launcher is always global."
 
     ^ self
 ! !
@@ -808,6 +827,12 @@
 
 !Launcher methodsFor:'project menu actions'!
 
+projectMenu
+    "this is sent, if ST/X has been built without Projects/ChangeSets."
+
+    self warn:'The system has been built without support for Project'.
+!
+
 newProject
     (ProjectView for:(Project new)) open
 !