Class: Dedalus::ColorPalette

Inherits:
Object
  • Object
show all
Defined in:
lib/dedalus/palette.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(red:, green:, blue:, yellow:, purple:, gray:, white: Color.new(240,240,240)) ⇒ ColorPalette

Returns a new instance of ColorPalette.



35
36
37
38
39
40
41
42
43
# File 'lib/dedalus/palette.rb', line 35

def initialize(red:, green:, blue:, yellow:, purple:, gray:, white: Color.new(240,240,240))
  @red = red
  @green = green
  @blue = blue
  @yellow = yellow
  @purple = purple
  @gray = gray
  @white = white
end

Instance Attribute Details

#blueObject

Returns the value of attribute blue.



34
35
36
# File 'lib/dedalus/palette.rb', line 34

def blue
  @blue
end

#grayObject

Returns the value of attribute gray.



34
35
36
# File 'lib/dedalus/palette.rb', line 34

def gray
  @gray
end

#greenObject

Returns the value of attribute green.



34
35
36
# File 'lib/dedalus/palette.rb', line 34

def green
  @green
end

#purpleObject

Returns the value of attribute purple.



34
35
36
# File 'lib/dedalus/palette.rb', line 34

def purple
  @purple
end

#redObject

Returns the value of attribute red.



34
35
36
# File 'lib/dedalus/palette.rb', line 34

def red
  @red
end

#whiteObject

Returns the value of attribute white.



34
35
36
# File 'lib/dedalus/palette.rb', line 34

def white
  @white
end

#yellowObject

Returns the value of attribute yellow.



34
35
36
# File 'lib/dedalus/palette.rb', line 34

def yellow
  @yellow
end

Instance Method Details

#decode_color(color) ⇒ Object



45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# File 'lib/dedalus/palette.rb', line 45

def decode_color(color)
  return color if color.is_a?(Dedalus::Color)

  case color
  when 'red' then red
  when 'lightred' then red.lighten
  when 'darkred' then red.darken

  when 'green' then green
  when 'lightgreen' then green.lighten
  when 'darkgreen' then green.darken

  when 'blue' then blue
  when 'lightblue' then blue.lighten
  when 'darkblue' then blue.darken

  when 'yellow' then yellow
  when 'lightyellow' then yellow.lighten
  when 'darkyellow' then yellow.darken

  when 'gray' then gray
  when 'lightgray' then gray.lighten
  when 'darkgray' then gray.darken

  when 'purple' then purple
  when 'lightpurple' then purple.lighten
  when 'darkpurple' then purple.darken

  else 
    raise "Unknown color string given to #{self.class.name}#decode_color: #{color}"
  end
end