--- a/FixedPalette.st Tue Mar 08 07:56:04 2016 +0000
+++ b/FixedPalette.st Tue Mar 08 07:59:36 2016 +0000
@@ -11,6 +11,8 @@
"
"{ Package: 'stx:libview' }"
+"{ NameSpace: Smalltalk }"
+
ColorPalette subclass:#FixedPalette
instanceVariableNames:'redShift redMask greenShift greenMask blueShift blueMask'
classVariableNames:''
@@ -82,19 +84,34 @@
self storeOn:aStream
!
-storeOn:aStream
- aStream nextPutAll:'(' , self class name.
+storeInstVarsOn:aStream
aStream nextPutAll:' redShift:'. redShift storeOn:aStream.
aStream nextPutAll:' redMask:'. redMask storeOn:aStream.
aStream nextPutAll:' greenShift:'. greenShift storeOn:aStream.
aStream nextPutAll:' greenMask:'. greenMask storeOn:aStream.
aStream nextPutAll:' blueShift:'. blueShift storeOn:aStream.
aStream nextPutAll:' blueMask:'. blueMask storeOn:aStream.
+!
+
+storeOn:aStream
+ aStream nextPutAll:'(' , self class name.
+ self storeInstVarsOn:aStream.
aStream nextPutAll:')'.
! !
!FixedPalette methodsFor:'queries'!
+alphaByteAt:index
+ "return the (simulated) alphaByte at index.
+ Notice that index is 1.."
+
+ ^ 0
+!
+
+bitsAlpha
+ ^ 0
+!
+
bitsBlue
^ blueMask highBit
!
@@ -113,6 +130,8 @@
|b bb|
+ blueMask == 0 ifTrue:[^ 0]. "/ no blue component
+
b := ((index-1 bitShift:blueShift negated) bitAnd:blueMask).
bb := (b * 255.0 / (blueMask)) rounded.
^ bb
@@ -133,6 +152,8 @@
|g gb|
+ greenMask == 0 ifTrue:[^ 0]. "/ no green component
+
g := ((index-1 bitShift:greenShift negated) bitAnd:greenMask).
gb := (g * 255.0 / (greenMask)) rounded.
^ gb
@@ -157,6 +178,8 @@
|r rb|
+ redMask == 0 ifTrue:[^ 0]. "/ no red component
+
r := ((index-1 bitShift:redShift negated) bitAnd:redMask).
rb := (r * 255.0 / (redMask)) rounded.
^ rb
@@ -188,6 +211,6 @@
!FixedPalette class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libview/FixedPalette.st,v 1.3 2004-06-07 09:21:45 cg Exp $'
+ ^ '$Header$'
! !