'From Squeak3.1alpha of 5 February 2001 [latest update: #3771] on 4 March 2001 at 7:50:02 am'! "Change Set: nebrTextShadow Date: 4 March 2001 Author: Bob Arning allow Nebraska to draw text with translucent drop shadow"! !CanvasDecoder methodsFor: 'decoding' stamp: 'raa 3/4/2001 07:19'! drawText: command | boundsEnc colorEnc text bounds color fontIndexEnc fontIndex | text := command at: 2. boundsEnc := command at: 3. fontIndexEnc := command at: 4. colorEnc := command at: 5. bounds _ self class decodeRectangle: boundsEnc. fontIndex := self class decodeInteger: fontIndexEnc. color _ self class decodeColor: colorEnc. self drawCommand: [ :c | c nebraskaText: text bounds: bounds font: (fonts at: fontIndex) color: color ]! ! !DisplayScanner methodsFor: 'stop conditions' stamp: 'RAA 3/4/2001 07:49'! quickPrintNebraska: aForm bitBlt: aBlt box: aRectangle font: aStrikeFont color: textColor ignoreColorChanges: shadowMode "Initialize myself." bitBlt _ aBlt. backgroundColor _ Color transparent. paragraphColor _ textColor. font _ aStrikeFont ifNil: [TextStyle defaultFont]. emphasisCode _ 0. kern _ 0. indentationLevel _ 0. self setFont. ignoreColorChanges _ shadowMode. ! ! !FormCanvas methodsFor: 'drawing' stamp: 'raa 3/4/2001 07:48'! nebraskaText: s bounds: bounds font: aFont color: c | scanner | self setPaintColor: c. scanner _ DisplayScanner new quickPrintNebraska: form bitBlt: port box: ((bounds translateBy: origin) intersect: clipRect) truncated font: aFont color: (self shadowColor ifNil:[c]) ignoreColorChanges: self shadowColor notNil. scanner drawString: s at: bounds topLeft + origin. ! !