Sha256: 024e7792107e1a9214a8b0c179b12fb1a39748b36841f8c86cc00657fa25f191
Contents?: true
Size: 1.34 KB
Versions: 2
Compression:
Stored size: 1.34 KB
Contents
module CyberarmEngine class Element class CheckBox < Flow def initialize(text, options, block = nil) super(options, block) options[:toggled] = options[:checked] options[:parent] = self @toggle_button = ToggleButton.new(options) options[:parent] = self @label = TextBlock.new(text, options) @label.subscribe(:holding_left_mouse_button) do |sender, x, y| @toggle_button.left_mouse_button(sender, x, y) end @label.subscribe(:released_left_mouse_button) do |sender, x, y| @toggle_button.released_left_mouse_button(sender, x, y) end @label.subscribe(:clicked_left_mouse_button) do |sender, x, y| @toggle_button.clicked_left_mouse_button(sender, x, y) publish(:changed, @toggle_button.value) end @label.subscribe(:enter) do |sender| @toggle_button.enter(sender) end @label.subscribe(:leave) do |sender| @toggle_button.leave(sender) end add(@toggle_button) add(@label) end def text=(text) @label.text = text recalculate end def value @toggle_button.value end def value=(bool) @toggle_button.value = bool publish(:changed, @toggle_button.value) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
cyberarm_engine-0.19.0 | lib/cyberarm_engine/ui/elements/check_box.rb |
cyberarm_engine-0.18.0 | lib/cyberarm_engine/ui/elements/check_box.rb |