You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
asciinema.org/app/assets/javascripts/player/brush.js.coffee

28 lines
544 B
CoffeeScript

13 years ago
class AsciiIo.Brush
@cache: {}
@clearCache: ->
@cache = {}
@hash: (brush) ->
"#{brush.fg}_#{brush.bg}_#{brush.bright}_#{brush.underline}_#{brush.italic}"
13 years ago
@create: (options) ->
options ||= {}
key = @hash(options)
13 years ago
brush = @cache[key]
if not brush
brush = new AsciiIo.Brush(options)
@cache[key] = brush
brush
constructor: (options) ->
@fg = options.fg
@bg = options.bg
@bright = options.bright
@underline = options.underline
@italic = options.italic