smalltalk.rc
changeset 5 420e4af41733
parent 0 0cb137a77319
child 7 57c09d1b7f69
--- a/smalltalk.rc	Tue Aug 09 00:33:56 1994 +0200
+++ b/smalltalk.rc	Tue Aug 09 00:35:25 1994 +0200
@@ -12,27 +12,72 @@
  *"
 
 "*
- * check for display beeing compiled into the system;
+ * just a quick check, if this ST/X installation seems to
+ * be halfway complete (it happened to some people, that
+ * their source/resource directories where not installed)
+ * - better to warn early ... 
+ *"
+|anyWrong missing|
+anyWrong := false.
+missing := ''.
+(Smalltalk getSystemFileName:'resources/SBrowser.rs') isNil ifTrue:[
+    '***********************************************************************' errorPrintNL.
+    '***** ATTENTION: please check installation of your resource files' errorPrintNL.
+    anyWrong := true.
+    missing := '''resources'' '.
+].
+(Smalltalk getSystemFileName:'source/Object.st') isNil ifTrue:[
+    '***********************************************************************' errorPrintNL.
+    '***** ATTENTION: please check installation of your source files' errorPrintNL.
+    anyWrong := true.
+    missing := missing , '''source'' '.
+].
+(Smalltalk getSystemFileName:'bitmaps/SBrowser.xbm') isNil ifTrue:[
+    '***********************************************************************' errorPrintNL.
+    '***** ATTENTION: please check installation of your bitmap files' errorPrintNL.
+    anyWrong := true.
+    missing := missing , '''bitmaps'' '.
+].
+anyWrong ifTrue:[
+    '*****' errorPrintNL.
+    '***** directory(s) named: ' errorPrint. missing errorPrint. 'incomplete/not existing' errorPrintNL.
+    '***** your path is: ' errorPrint.
+    Smalltalk systemPath asArray storeString errorPrintNL.
+    '*****' errorPrintNL.
+    '***********************************************************************' errorPrintNL.
+]
+!
+
+"*
+ * check for display-classes being compiled into the system;
+ * (and if display connection can be established)
  * if not, enter a simple read-eval-print loop
  *"
 Display isNil ifTrue:[
-    'oops - no display' printNewline.
+    DeviceWorkstation notNil ifTrue:[
+        'cannot connect to display' errorPrintNewline
+    ] ifFalse:[
+        'oops - no display' errorPrintNewline.
+    ].
     Smalltalk readEvalPrint.
     Smalltalk exit
 ]
 !
 
 "*
- * this makes X-errors to be handled immediately (so you see,
+ * this makes X-errors be handled immediately (so you see,
  * where it occured) but slows down the system soooo muuuucccchhh ..
  * if commented out, errors will be reported asynchronously.
  * (I enable this, when things go bad during startup)
  *"
-"Display unBuffered"!
+"Display unBuffered"
+!
 
 "*
  * this starts incremental GC earlier
  * (default is 500000)
+ * the number given is the number of bytes which have to be allocated
+ * since the last GC, to start the incremental GC running.
  *"
 "
 ObjectMemory incrementalGCLimit:100000 
@@ -40,39 +85,40 @@
 !
 
 "*
- * you can override the view style (which is otherwise defined
- * in the View.rs resource file)
+ * lazy loading
+ * (faster fileIn) - this is EXPERIMENTAL
+ *"
+" "
+Autoload compileLazy:true
+" "
+!
+
+"*
+ * you can override the view style 
+ * OBSOLETE: its now defined in the d_xxx.rc files
+ * PS: I personally like #iris most
  *"
 "View defaultStyle:#iris "
-"View defaultStyle:#motif "
+"View defaultStyle:#motif "      "ugly"
 "View defaultStyle:#next "
-"View defaultStyle:#normal "
+"View defaultStyle:#view3D "     "somewhat neutral 3D style"
+"View defaultStyle:#mswindow "   "not finished"
+"View defaultStyle:#normal "     "the good old style"
 !
 
 "*
  * define the language (you can also set the LANG-shell variable)
  * (currently only #english and #german are supported)
+ * setting it here will override the LANG variable setting,
+ * if neither set here nor in LANG, english is the default.
+ * (currently, strings are not available for other than english
+ *  and german; french will follow next - see resource files)
  *"
 "Language := #german"
 "Language := #english" 
 !
 
 "*
- * define how views look
- * (setting View3D to true is fancy)
- *"
-View3D := (Display depth > 1)  
-"View3D := false               "
-!
-
-"*
- * dont want the 3rd button 
- * (some x-servers dont produce button2 but button3 events)
- * this xlates the 3rd button into 2nd button
- *"
-XWorkstation buttonTranslation:#(1 2 2) !
-
-"*
  * this handles all variant display stuff
  * (i.e. things which might change, when DISPLAY is set different)
  *"
@@ -86,48 +132,64 @@
 !
 
 "*
+ * you can add your very private things here - if its put into HOME/.smalltalk,
+ * each user can add his/her private things even when everything else is
+ * shared
+ *"
+Smalltalk fileIn:'private.rc'
+!
+
+"*
  * start some views ...
  * you can add all stuff you'd like to come up by default
  * the first time
  *"
 
 "*
- * start a Transcript
+ * start a Transcript (if linked-in)
  *"
-Stdout showCr:'starting Transcript ...'.
-"Smalltalk debugOn."
-TextCollector newTranscript!
+TextCollector notNil ifTrue:[
+    'starting Transcript ...' errorPrintNL.
+    TextCollector newTranscript.
+]
+!
 
 "
  you can change colors too ..
+ obsolete: below code sets it only for the current Transcript,
+ which will not affect future ones.
+ See code above, which changes the class resources - thats better
 "
-(View defaultStyle == #iris) ifTrue:[
-    (Display hasColors and:[Display depth > 4]) ifTrue:[
-        Transcript foregroundColor:(Color lightGrey) backgroundColor:(Color red:0 green:0 blue:25);
-                   cursorForegroundColor:(Color black) backgroundColor:(Color green);
-                   selectionForegroundColor:(Color black) backgroundColor:(Color grey);
-                   viewBackground:(Color red:0 green:0 blue:25)
-    ] ifFalse:[
-        Transcript foregroundColor:(Color white) backgroundColor:(Color black);
-                   cursorForegroundColor:(Color black) backgroundColor:(Color white);
-                   selectionForegroundColor:(Color black) backgroundColor:(Color veryLightGrey);
-                   viewBackground:(Color black)
-    ]
-]
-!     
+
+"/(View defaultStyle == #iris) ifTrue:[
+"/    (Display hasColors and:[Display depth > 4]) ifTrue:[
+"/        Transcript foregroundColor:(Color lightGrey) backgroundColor:(Color red:0 green:0 blue:25);
+"/                   cursorForegroundColor:(Color black) backgroundColor:(Color green);
+"/                   selectionForegroundColor:(Color black) backgroundColor:(Color grey);
+"/                   viewBackground:(Color red:0 green:0 blue:25)
+"/    ] ifFalse:[
+"/        Transcript foregroundColor:(Color white) backgroundColor:(Color black);
+"/                   cursorForegroundColor:(Color black) backgroundColor:(Color white);
+"/                   selectionForegroundColor:(Color black) backgroundColor:(Color veryLightGrey);
+"/                   viewBackground:(Color black)
+"/    ]
+"/]
 
 "*
- * start the Launcher
+ * start the Launcher (if linked-in)
  *"
-Stdout showCr:'starting main-menu ...'.
-Launcher start!
+Launcher notNil ifTrue:[
+    'starting main-menu ...' errorPrintNL.
+    Launcher open
+]
+!
 
 "*
  * start a SystemBrowser
  * - I dont want one (using Launcher)
  *"
 "
- SystemBrowser start
+ SystemBrowser open
 "
 !
 
@@ -136,7 +198,7 @@
  * - I dont want one (using Launcher)
  *"
 "
- FileBrowser start
+ FileBrowser open
 "
 !
 
@@ -145,15 +207,15 @@
  * - I dont want one (using Launcher)
  *"
 "
-Workspace start
+Workspace open
 "
 !
 
-
 "*
  * if things go very badly, turn on message tracing ...
+ * but be prepared for lots of output
  *"
-"
+" 
 Smalltalk debugOn.
 "
 "*