Class: Squib::Args::Box

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

Constant Summary

Constants included from XYWHShorthands

XYWHShorthands::DECK_DIV_REGEX, XYWHShorthands::DECK_MINUS_REGEX, XYWHShorthands::DECK_ONLY, XYWHShorthands::DECK_PLUS_REGEX, XYWHShorthands::MIDDLE_MINUS_REGEX, XYWHShorthands::MIDDLE_ONLY, XYWHShorthands::MIDDLE_PLUS_REGEX

Class Method Summary collapse

Instance Method Summary collapse

Methods included from XYWHShorthands

#apply_shorthands

Methods included from ArgLoader

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

Constructor Details

#initialize(deck = nil, dsl_method_defaults = {}) ⇒ Box

Returns a new instance of Box.



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

def initialize(deck = nil, dsl_method_defaults = {})
  @deck = deck
  @dsl_method_defaults = dsl_method_defaults
end

Class Method Details

.expanding_parametersObject



26
27
28
# File 'lib/squib/args/box.rb', line 26

def self.expanding_parameters
  parameters.keys # all of them
end

.parametersObject



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

def self.parameters
  { x: 0, y: 0,
    width: :deck, height: :deck,
    radius: nil, x_radius: 0, y_radius: 0
  }
end

.params_with_unitsObject



30
31
32
# File 'lib/squib/args/box.rb', line 30

def self.params_with_units
  parameters.keys # all of them
end

Instance Method Details

#validate_height(arg, _i) ⇒ Object



42
43
44
45
# File 'lib/squib/args/box.rb', line 42

def validate_height(arg, _i)
  return arg if @deck.nil?
  apply_shorthands(arg, @deck, axis: :y)
end

#validate_width(arg, _i) ⇒ Object



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

def validate_width(arg, _i)
  return arg if @deck.nil?
  apply_shorthands(arg, @deck, axis: :x)
end

#validate_x(arg, i) ⇒ Object



34
# File 'lib/squib/args/box.rb', line 34

def validate_x(arg, i) apply_shorthands(arg, @deck, axis: :x) end

#validate_x_radius(arg, i) ⇒ Object



47
48
49
50
# File 'lib/squib/args/box.rb', line 47

def validate_x_radius(arg, i)
  return radius[i] unless radius[i].nil?
  arg
end

#validate_y(arg, _i) ⇒ Object



35
# File 'lib/squib/args/box.rb', line 35

def validate_y(arg,_i) apply_shorthands(arg, @deck, axis: :y) end

#validate_y_radius(arg, i) ⇒ Object



52
53
54
55
# File 'lib/squib/args/box.rb', line 52

def validate_y_radius(arg, i)
  return radius[i] unless radius[i].nil?
  arg
end