Module: CyberarmEngine::DSL

Included in:
GuiState
Defined in:
lib/cyberarm_engine/ui/dsl.rb

Instance Method Summary collapse

Instance Method Details

#background(color = Gosu::Color::NONE) ⇒ Object



100
101
102
# File 'lib/cyberarm_engine/ui/dsl.rb', line 100

def background(color = Gosu::Color::NONE)
  element_parent.style.default[:background] = color
end

#button(text, options = {}, &block) ⇒ Object



37
38
39
40
41
42
# File 'lib/cyberarm_engine/ui/dsl.rb', line 37

def button(text, options = {}, &block)
  options[:parent] = element_parent
  options[:theme] = current_theme

  add_element(Element::Button.new(text, options, block) { block.call if block.is_a?(Proc) })
end

#check_box(text, options = {}, &block) ⇒ Object



72
73
74
75
76
77
# File 'lib/cyberarm_engine/ui/dsl.rb', line 72

def check_box(text, options = {}, &block)
  options[:parent] = element_parent
  options[:theme] = current_theme

  add_element(Element::CheckBox.new(text, options, block))
end

#current_themeObject



108
109
110
# File 'lib/cyberarm_engine/ui/dsl.rb', line 108

def current_theme
  element_parent.options[:theme]
end

#edit_box(text, options = {}, &block) ⇒ Object



58
59
60
61
62
63
# File 'lib/cyberarm_engine/ui/dsl.rb', line 58

def edit_box(text, options = {}, &block)
  options[:parent] = element_parent
  options[:theme] = current_theme

  add_element(Element::EditBox.new(text, options, block))
end

#edit_line(text, options = {}, &block) ⇒ Object



51
52
53
54
55
56
# File 'lib/cyberarm_engine/ui/dsl.rb', line 51

def edit_line(text, options = {}, &block)
  options[:parent] = element_parent
  options[:theme] = current_theme

  add_element(Element::EditLine.new(text, options, block))
end

#flow(options = {}, &block) ⇒ Object



3
4
5
# File 'lib/cyberarm_engine/ui/dsl.rb', line 3

def flow(options = {}, &block)
  container(CyberarmEngine::Element::Flow, options, &block)
end

#image(path, options = {}, &block) ⇒ Object



79
80
81
82
83
84
# File 'lib/cyberarm_engine/ui/dsl.rb', line 79

def image(path, options = {}, &block)
  options[:parent] = element_parent
  options[:theme] = current_theme

  add_element(Element::Image.new(path, options, block))
end

#label(text, options = {}, &block) ⇒ Object

TODO: Remove in version 0.16.0+



12
13
14
15
16
17
# File 'lib/cyberarm_engine/ui/dsl.rb', line 12

def label(text, options = {}, &block)
  options[:parent] = element_parent
  options[:theme] = current_theme

  add_element(Element::TextBlock.new(text, options, block))
end

#list_box(options = {}, &block) ⇒ Object



44
45
46
47
48
49
# File 'lib/cyberarm_engine/ui/dsl.rb', line 44

def list_box(options = {}, &block)
  options[:parent] = element_parent
  options[:theme] = current_theme

  add_element(Element::ListBox.new(options, block) { block.call if block.is_a?(Proc) })
end

#progress(options = {}, &block) ⇒ Object



86
87
88
89
90
91
# File 'lib/cyberarm_engine/ui/dsl.rb', line 86

def progress(options = {}, &block)
  options[:parent] = element_parent
  options[:theme] = current_theme

  add_element(Element::Progress.new(options, block))
end

#slider(options = {}, &block) ⇒ Object



93
94
95
96
97
98
# File 'lib/cyberarm_engine/ui/dsl.rb', line 93

def slider(options = {}, &block)
  options[:parent] = element_parent
  options[:theme] = current_theme

  add_element(Element::Slider.new(options, block))
end

#stack(options = {}, &block) ⇒ Object



7
8
9
# File 'lib/cyberarm_engine/ui/dsl.rb', line 7

def stack(options = {}, &block)
  container(CyberarmEngine::Element::Stack, options, &block)
end

#theme(theme) ⇒ Object



104
105
106
# File 'lib/cyberarm_engine/ui/dsl.rb', line 104

def theme(theme)
  element_parent.options[:theme] = theme
end

#toggle_button(options = {}, &block) ⇒ Object



65
66
67
68
69
70
# File 'lib/cyberarm_engine/ui/dsl.rb', line 65

def toggle_button(options = {}, &block)
  options[:parent] = element_parent
  options[:theme] = current_theme

  add_element(Element::ToggleButton.new(options, block))
end