'From Cuis 1.0 of 31 July 2009 [latest update: #250] on 4 August 2009 at 5:46:28 pm'!
!classDefinition: #GrafPort category: #'Morphic-Support'!
BitBlt subclass: #GrafPort
	instanceVariableNames: 'alpha fillPattern secondPassRule secondPassColorMap '
	classVariableNames: ''
	poolDictionaries: ''
	category: 'Morphic-Support'!

!BitBlt methodsFor: 'copying' stamp: 'jmv 8/4/2009 17:31'!
basicDisplayString: aString from: startIndex to: stopIndex at: aPoint strikeFont: font kern: kernDelta

	destY _ aPoint y.
	destX _ aPoint x.

	"the following are not really needed, but theBitBlt primitive will fail if not set"
	sourceX ifNil: [sourceX _ 100].
	width ifNil: [width _ 100].

	self primDisplayString: aString from: startIndex to: stopIndex
			map: font characterToGlyphMap xTable: font xTable
			kern: kernDelta.
	^ destX@destY.
! !


!GrafPort methodsFor: 'private' stamp: 'jmv 8/4/2009 17:35'!
installStrikeFont: aStrikeFont foregroundColor: foregroundColor

	super installStrikeFont: aStrikeFont foregroundColor: foregroundColor.
	self fixRuleFor1bpp: aStrikeFont foregroundColor: foregroundColor! !


!Preferences class methodsFor: 'fonts' stamp: 'jmv 8/4/2009 15:11'!
properAlphaForBlackText
	^ self
		valueOfFlag: #properAlphaForBlackText
		ifAbsent: [true]! !

GrafPort removeSelector: #displayString:from:to:at:strikeFont:kern:!
GrafPort removeSelector: #secondPassRule:secondPassColorMap:!
!classDefinition: #GrafPort category: #'Morphic-Support'!
BitBlt subclass: #GrafPort
	instanceVariableNames: 'alpha fillPattern'
	classVariableNames: ''
	poolDictionaries: ''
	category: 'Morphic-Support'!
