#Replace the ManualHeater ComposeImg function with this.

	def ComposeImg( self ): 
		self.image = self.blackImg.convert_alpha()
		tRange = self.hiTempLimit - self.lowTempLimit
		tempPercent = float(self.temperature-self.lowTempLimit)/tRange


		try:
			img = self.allImages[tempPercent]
		except KeyError:


			import os.path
			alpha = int(tempPercent*100)
			filename = os.path.join( settings.TMPDIR, 'burner'+ str(alpha) +'.tga')
			try:
				img = pygame.image.load(filename)
				if img == None:
					raise Exception("WTF")
			except Exception, e:
				log.debug( 'could not load cached burne' )
				log.debug( e )
				img = self.redImg.convert_alpha()
				change_alpha_mult( img, alpha )
				img.unlock()
				try:
					pygame.image.save( img, filename )
				except Exception, e:
					log.debug( 'could not save burne' )
					log.debug( e )

			self.allImages[tempPercent] = img



		self.image.blit( img, (0,0) )

		x = self.xlens[self.cursorIndex]
		y = self.ylens[self.cursorIndex]
		self.cursorRect.center = ( self.rect.width/2 + x,
		                           self.rect.height/2 + y )
		self.image.blit( self.cursorImg, self.cursorRect.topleft )



