Color.st
changeset 1269 f0777b2cc08a
parent 1239 f4bd3bc9f3f9
child 1326 a519593747e8
--- a/Color.st	Thu Jan 23 22:34:12 1997 +0100
+++ b/Color.st	Fri Jan 24 13:40:45 1997 +0100
@@ -15,7 +15,7 @@
 		writable'
 	classVariableNames:'MaxValue Lobby Cells Black White LightGrey Grey DarkGrey Pseudo0
 		Pseudo1 PseudoAll Red Green Blue RetryAllocation DitherBits
-		ColorAllocationFailSignal'
+		ColorAllocationFailSignal InvalidColorNameSignal'
 	poolDictionaries:''
 	category:'Graphics-Support'
 !
@@ -403,27 +403,31 @@
      heavily used colors"
 
     ColorAllocationFailSignal isNil ifTrue:[
-	ColorAllocationFailSignal := ErrorSignal newSignalMayProceed:true.
-	ColorAllocationFailSignal nameClass:self message:#colorAllocationFailSignal.
-	ColorAllocationFailSignal notifierString:'color allocation failed'.
+        ColorAllocationFailSignal := ErrorSignal newSignalMayProceed:true.
+        ColorAllocationFailSignal nameClass:self message:#colorAllocationFailSignal.
+        ColorAllocationFailSignal notifierString:'color allocation failed'.
+
+        InvalidColorNameSignal := ErrorSignal newSignalMayProceed:true.
+        InvalidColorNameSignal nameClass:self message:#invalidColorNameSignal.
+        InvalidColorNameSignal notifierString:'invalid color name'.
     ].
 
     Lobby isNil ifTrue:[
-	MaxValue := 16rFFFF.
-
-	Lobby := Registry new.
-
-	self getPrimaryColors.
-
-	"want to be informed when returning from snapshot"
-	ObjectMemory addDependent:self.
-
-	RetryAllocation := true.
-
-	DitherBits := self ditherBits
+        MaxValue := 16rFFFF.
+
+        Lobby := Registry new.
+
+        self getPrimaryColors.
+
+        "want to be informed when returning from snapshot"
+        ObjectMemory addDependent:self.
+
+        RetryAllocation := true.
+
+        DitherBits := self ditherBits
     ].
 
-    "Modified: 11.7.1996 / 18:31:39 / cg"
+    "Modified: 24.1.1997 / 13:37:30 / cg"
 !
 
 update:something with:aParameter from:changedObject
@@ -583,7 +587,9 @@
 
     ^ self 
         name:colorName 
-        ifIllegal:[self error:'no color named ' , colorName]
+        ifIllegal:[InvalidColorNameSignal
+                        raiseRequestWith:colorName
+                        errorString:'invalid colorName: ']
 
     "
      Color name:'brown'
@@ -591,7 +597,7 @@
      Color name:'snow'
     "
 
-    "Modified: 16.1.1997 / 23:00:20 / cg"
+    "Modified: 24.1.1997 / 13:39:25 / cg"
 !
 
 name:colorName ifIllegal:errorBlock
@@ -759,6 +765,14 @@
     ^ ColorAllocationFailSignal
 
     "Created: 12.6.1996 / 17:44:49 / cg"
+!
+
+invalidColorNameSignal
+    "return the signal raised when an invalid color name is encountered"
+
+    ^ InvalidColorNameSignal
+
+    "Created: 24.1.1997 / 13:36:25 / cg"
 ! !
 
 !Color class methodsFor:'accessing'!
@@ -3949,6 +3963,6 @@
 !Color class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libview/Color.st,v 1.83 1997-01-16 23:17:10 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libview/Color.st,v 1.84 1997-01-24 12:40:45 cg Exp $'
 ! !
 Color initialize!