class Squib::Args::Draw
Public Class Methods
expanding_parameters()
click to toggle source
# File lib/squib/args/draw.rb, line 32 def self.expanding_parameters parameters.keys # all of them are expandable end
new(custom_colors, dsl_method_defaults = {})
click to toggle source
# File lib/squib/args/draw.rb, line 15 def initialize(custom_colors, dsl_method_defaults = {}) @custom_colors = custom_colors @dsl_method_defaults = dsl_method_defaults end
parameters()
click to toggle source
# File lib/squib/args/draw.rb, line 20 def self.parameters { color: :black, fill_color: '#0000', stroke_color: :black, stroke_width: 2.0, stroke_strategy: :fill_first, join: :miter, cap: 'butt', dash: '' } end
params_with_units()
click to toggle source
# File lib/squib/args/draw.rb, line 36 def self.params_with_units [:stroke_width] end
Public Instance Methods
validate_cap(arg, _i)
click to toggle source
# File lib/squib/args/draw.rb, line 51 def validate_cap(arg, _i) case arg.to_s.strip.downcase when 'butt' Cairo::LINE_CAP_BUTT when 'round' Cairo::LINE_CAP_ROUND when 'square' Cairo::LINE_CAP_SQUARE end end
validate_color(arg, _i)
click to toggle source
# File lib/squib/args/draw.rb, line 76 def validate_color(arg, _i) colorify(arg, @custom_colors) end
validate_dash(arg, _i)
click to toggle source
# File lib/squib/args/draw.rb, line 62 def validate_dash(arg, _i) arg.to_s.split.collect do |x| UnitConversion.parse(x, @dpi, @cell_px).to_f end end
validate_fill_color(arg, _i)
click to toggle source
# File lib/squib/args/draw.rb, line 68 def validate_fill_color(arg, _i) colorify(arg, @custom_colors) end
validate_join(arg, _i)
click to toggle source
# File lib/squib/args/draw.rb, line 40 def validate_join(arg, _i) case arg.to_s.strip.downcase when 'miter' Cairo::LINE_JOIN_MITER when 'round' Cairo::LINE_JOIN_ROUND when 'bevel' Cairo::LINE_JOIN_BEVEL end end
validate_stroke_color(arg, _i)
click to toggle source
# File lib/squib/args/draw.rb, line 72 def validate_stroke_color(arg, _i) colorify(arg, @custom_colors) end
validate_stroke_strategy(arg, _i)
click to toggle source
# File lib/squib/args/draw.rb, line 80 def validate_stroke_strategy(arg, _i) case arg.to_s.downcase.strip when 'fill_first' :fill_first when 'stroke_first' :stroke_first else raise "Only 'stroke_first' or 'fill_first' allowed" end end