class AdventureRL::Button
Constants
- DEFAULT_SETTINGS
Public Class Methods
new(settings = {})
click to toggle source
Calls superclass method
# File lib/AdventureRL/Button.rb, line 10 def initialize settings = {} @settings = DEFAULT_SETTINGS.merge settings super @settings @colors = { active: @settings.get(:active_color), hover: @settings.get(:hover_colow), } @pressable ||= @settings.get :pressable @click_on_mouse_up ||= @settings.get :click_on_mouse_up @click_on_mouse_up ||= false if (@pressable) end
Public Instance Methods
on_mouse_down()
click to toggle source
# File lib/AdventureRL/Button.rb, line 28 def on_mouse_down return if (is_pressable?) set_color @colors[:active] click if (!@click_on_mouse_up && methods.include?(:click)) end
on_mouse_press()
click to toggle source
# File lib/AdventureRL/Button.rb, line 40 def on_mouse_press return unless (is_pressable?) set_temporary_color @colors[:active] end
on_mouse_up()
click to toggle source
# File lib/AdventureRL/Button.rb, line 34 def on_mouse_up return if (is_pressable?) reset_color click if (@click_on_mouse_up && methods.include?(:click)) end
Private Instance Methods
is_pressable?()
click to toggle source
# File lib/AdventureRL/Button.rb, line 47 def is_pressable? return !!@pressable end