Class: Squib::Args::Paint

Inherits:
Object
  • Object
show all
Includes:
ArgLoader, ColorValidator
Defined in:
lib/squib/args/paint.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods included from ColorValidator

#colorify

Methods included from ArgLoader

#[], #convert_units, #defaultify, #expand_and_set_and_defaultify, #expandable_singleton?, #extract!, #load!, #prep_layout_args, #validate

Constructor Details

#initialize(custom_colors) ⇒ Paint

Returns a new instance of Paint.



14
15
16
# File 'lib/squib/args/paint.rb', line 14

def initialize(custom_colors)
  @custom_colors = custom_colors
end

Class Method Details

.expanding_parametersObject



25
26
27
# File 'lib/squib/args/paint.rb', line 25

def self.expanding_parameters
  parameters.keys # all of them are expandable

end

.parametersObject



18
19
20
21
22
23
# File 'lib/squib/args/paint.rb', line 18

def self.parameters
  { alpha: 1.0,
    blend: :none,
    mask:  nil,
  }
end

.params_with_unitsObject



29
30
31
# File 'lib/squib/args/paint.rb', line 29

def self.params_with_units
  []
end

Instance Method Details

#validate_alpha(arg, _i) ⇒ Object



33
34
35
36
# File 'lib/squib/args/paint.rb', line 33

def validate_alpha(arg, _i)
  raise 'alpha must respond to to_f' unless arg.respond_to? :to_f
  arg.to_f
end

#validate_mask(arg, _i) ⇒ Object



38
39
40
# File 'lib/squib/args/paint.rb', line 38

def validate_mask(arg, _i)
  colorify(arg, @custom_colors)
end