class Rgw::SyncedSpinButton
Public Class Methods
new(min, max, step, locked)
click to toggle source
Calls superclass method
# File lib/rgw/synced-spin-button.rb, line 31 def initialize min, max, step, locked super(:orientation => :horizontal) @locked = locked @s1 = Gtk::SpinButton.new min, max, step @s2 = Gtk::SpinButton.new min, max, step @s1.signal_connect(:value_changed) do signal_emit :value1_changed, @s1.value next unless @locked @s2.value = @s1.value if @s2.value != @s1.value end @s2.signal_connect(:value_changed) do signal_emit :value2_changed, @s2.value next unless @locked @s1.value = @s2.value if @s1.value != @s2.value end lb = Gtk::ToggleButton.new lb.active = @locked img = Gtk::Image.new(:file => Rgw::PIXMAP_PATH + (locked ? 'lock16.png' : 'unlock16.png')) lb << img lb.signal_connect(:toggled) do @locked = lb.active? img.file = @locked ? Rgw::PIXMAP_PATH + 'lock16.png' : PIXMAP_PATH + 'unlock16.png' @s2.value = @s1.value if @locked end pack_start @s1, :expand => true, :fill => true, :padding => 0 pack_start lb, :expand => false, :fill => false, :padding => 0 pack_start @s2, :expand => true, :fill => true, :padding => 0 end
Public Instance Methods
get_values()
click to toggle source
# File lib/rgw/synced-spin-button.rb, line 74 def get_values [@s1.value, @s2.value] end
set_values(v1, v2)
click to toggle source
# File lib/rgw/synced-spin-button.rb, line 66 def set_values v1, v2 raise RangeError, 'value 1 out of range' if v1 < @s1.range.min or v1 > @s1.range.max raise RangeError, 'value 2 out of range' if v2 < @s2.range.min or v1 > @s2.range.max @s1.value = v1 @s2.value = v2 end
signal_do_value1_changed(foo;)
click to toggle source
# File lib/rgw/synced-spin-button.rb, line 27 def signal_do_value1_changed foo; end
signal_do_value2_changed(foo;)
click to toggle source
# File lib/rgw/synced-spin-button.rb, line 28 def signal_do_value2_changed foo; end