2 def initialize(c, name, rel, x, y, height = 95)
7 c.part("#{name}.background", :image) do |p|
11 d.rel[0].to = d.rel[1].to = rel
12 d.rel[0].set_offset(x, y)
13 d.rel[1].set_rel(0.0, 0.0)
14 d.rel[1].set_offset(x + 6, y + height)
16 d.image = "background-fillbar-vertical.png"
20 c.part("#{name}.clip", :rect) do |p|
24 p.description.rel[1].to = background
27 c.part("#{name}.trough", :rect) do |p|
31 d.rel[0].to = d.rel[1].to = background
32 d.rel[0].set_offset(3, -3)
33 d.rel[1].set_offset(3, 3)
37 c.part(name, :image) do |p|
39 clip.description.rel[0].to = p
41 p.dragable.enabled[1] = true
42 p.dragable.step[1] = 1
43 p.dragable.count[1] = 1
44 p.dragable.confine = c.part("#{name}.trough")
46 ["normal", "hover", "down"].each do |state|
47 s = state == "normal" ? "default" : state
48 p.description(s) do |d|
50 d.image = "slider-grip-#{state}.png"
55 c.part("#{name}.led", :image) do |p|
56 p.repeat_events = true
62 d.rel[0].to = d.rel[1].to = main
65 d.image = "slider-grip-led.png"
68 p.description("visible") do |d|
72 d.rel[0].to = d.rel[1].to = main
75 d.image = "slider-grip-led.png"
79 c.program("#{name}.led.show", :set_state) do |p|
80 p.signal ="mouse,down,1"
85 p.targets << ProgramTarget.new(c.part("#{name}.led"))
88 c.program("#{name}.led.hide", :set_state) do |p|
89 p.signal = "mouse,up,1"
94 p.targets << ProgramTarget.new(c.part("#{name}.led"))