Class: Menu

Inherits:
Object
  • Object
show all
Defined in:
lib/Directorio_de_trabajo_del_equipo/menu.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(&block) ⇒ Menu

Returns a new instance of Menu.



5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/Directorio_de_trabajo_del_equipo/menu.rb', line 5

def initialize(&block)
	@titulo = ""
	@ingesta = []
	@platos = []
	@porcentajes = []

	if block_given?
		if block.arity == 1
			yield self
		else
			instance_eval &block
		end
	end
end

Instance Attribute Details

#ingestaObject (readonly)

Returns the value of attribute ingesta.



3
4
5
# File 'lib/Directorio_de_trabajo_del_equipo/menu.rb', line 3

def ingesta
  @ingesta
end

#platosObject (readonly)

Returns the value of attribute platos.



3
4
5
# File 'lib/Directorio_de_trabajo_del_equipo/menu.rb', line 3

def platos
  @platos
end

#porcentajesObject (readonly)

Returns the value of attribute porcentajes.



3
4
5
# File 'lib/Directorio_de_trabajo_del_equipo/menu.rb', line 3

def porcentajes
  @porcentajes
end

#tituloObject (readonly)

Returns the value of attribute titulo.



3
4
5
# File 'lib/Directorio_de_trabajo_del_equipo/menu.rb', line 3

def titulo
  @titulo
end

Instance Method Details

#ingestas(opciones = {}) ⇒ Object



24
25
26
27
# File 'lib/Directorio_de_trabajo_del_equipo/menu.rb', line 24

def ingestas(opciones={})
	@ingesta[0] = opciones[:min] if opciones[:min]
	@ingesta[1] = opciones[:max] if opciones[:max]
end

#plato(texto, opciones = {}) ⇒ Object



29
30
31
32
33
34
35
36
# File 'lib/Directorio_de_trabajo_del_equipo/menu.rb', line 29

def plato(texto, opciones={})
	instruccion=texto
	
	instruccion << ", #{opciones[:porcion]}" if opciones[:porcion]
	instruccion << ", #{opciones[:peso]}" if opciones[:peso]

	@platos << instruccion
end

#porcentaje(opciones = {}) ⇒ Object



38
39
40
41
42
43
44
45
# File 'lib/Directorio_de_trabajo_del_equipo/menu.rb', line 38

def porcentaje(opciones={})	

	@porcentajes[0] = opciones[:vct] if opciones[:vct]
	@porcentajes[1] = opciones[:proteinas] if opciones[:proteinas]
	@porcentajes[2] = opciones[:grasas] if opciones[:grasas]
	@porcentajes[3] = opciones[:hidratos] if opciones[:hidratos]

end

#title(texto) ⇒ Object



20
21
22
# File 'lib/Directorio_de_trabajo_del_equipo/menu.rb', line 20

def title(texto)
	@titulo << texto
end

#to_sObject



47
48
49
50
51
52
53
54
55
56
57
58
59
60
# File 'lib/Directorio_de_trabajo_del_equipo/menu.rb', line 47

def to_s
	output = @titulo
	output << "  #{@ingesta[0]}% - #{ingesta[1]}%"
	output << "\n#{'=' * titulo.size}\n\n"

	@platos.each_with_index do |instruccion, index|
		output << "#{index + 1}) #{instruccion}\n"
	end

	output << "\nV.C.T. | #{@porcentajes[0]} kcal | #{@porcentajes[1]}%"
	output << "- #{@porcentajes[2]}%- #{@porcentajes[3]}%\n"

	output
end