TextCollector.st
changeset 77 565b052f5277
parent 63 f4eaf04d1eaf
child 80 5a878a1eebf2
--- a/TextCollector.st	Mon Feb 06 01:52:01 1995 +0100
+++ b/TextCollector.st	Mon Feb 06 01:53:30 1995 +0100
@@ -23,7 +23,7 @@
 COPYRIGHT (c) 1989 by Claus Gittinger
 	      All Rights Reserved
 
-$Header: /cvs/stx/stx/libwidg/TextCollector.st,v 1.12 1994-11-17 14:38:40 claus Exp $
+$Header: /cvs/stx/stx/libwidg/TextCollector.st,v 1.13 1995-02-06 00:53:22 claus Exp $
 '!
 
 !TextCollector class methodsFor:'documentation'!
@@ -44,7 +44,7 @@
 
 version
 "
-$Header: /cvs/stx/stx/libwidg/TextCollector.st,v 1.12 1994-11-17 14:38:40 claus Exp $
+$Header: /cvs/stx/stx/libwidg/TextCollector.st,v 1.13 1995-02-06 00:53:22 claus Exp $
 "
 !
 
@@ -67,6 +67,14 @@
     at the top. 
     You can set linelimit to nil (i.e. no limit), but you may need a lot 
     of memory then ...
+
+    StyleSheet paramters:
+
+	transcriptForegroundColor       defaults to textForegroundColor
+	transcriptBackgroundColor'      defaults to textBackgroundColor.
+
+	transcriptCursorForegroundColor
+	transcriptCursorBackgroundColor
 "
 ! !
 
@@ -121,6 +129,7 @@
     fg := StyleSheet colorAt:'transcriptForegroundColor' default:transcript foregroundColor.
     bg := StyleSheet colorAt:'transcriptBackgroundColor' default:transcript backgroundColor.
     transcript foregroundColor:fg backgroundColor:bg.
+    transcript viewBackground:bg.
 
     cFg := StyleSheet colorAt:'transcriptCursorForegroundColor' default:bg.
     cBg := StyleSheet colorAt:'transcriptCursorBackgroundColor' default:fg.
@@ -229,6 +238,13 @@
     Processor removeTimedBlock:flushBlock.
     flushPending ifFalse:[^ self].
 
+    access wouldBlock ifTrue:[
+	Processor activeProcessIsSystemProcess ifTrue:[
+	    "/ Stderr nextPutAll:'Blocking in Transcript avoided: ' , aString.
+	    ^ self
+	]
+    ].
+
     access critical:[
 	flushPending := false.
 	outstandingLines size ~~ 0 ifTrue:[
@@ -337,7 +353,12 @@
 cr
     "output a carriage return, finishing the current line"
 
-    |wasBlocked|
+    access wouldBlock ifTrue:[
+	Processor activeProcessIsSystemProcess ifTrue:[
+	    Stderr cr.
+	    ^ self
+	]
+    ].
 
     collecting ifTrue:[
 	access critical:[
@@ -360,9 +381,15 @@
 show:anObject
     "insert the argument aString at current cursor position"
 
-    |aString wasBlocked|
+    |aString|
 
     aString := anObject printString.
+    access wouldBlock ifTrue:[
+	Processor activeProcessIsSystemProcess ifTrue:[
+	    Stderr nextPutAll:'Blocking in Transcript avoided: ' , aString.
+	    ^ self
+	]
+    ].
     collecting ifTrue:[
 	access critical:[
 	    outstandingLine notNil ifTrue:[