+ ["selected", "unselected"].each do |state|
+ c.program("playlist_item.#{state}", :set_state) do |p|
+ p.signal = "playlist_item.#{state}"
+ p.source = "*"
+ p.state = state
+ p.targets << ProgramTarget.new(c.part("background"))
+ end
+ end
+
+ c.program("playlist_item.click", :emit_signal) do |p|
+ p.signal = "mouse,clicked,1"
+ p.source = "*"
+ p.emission_signal = "playlist_item.selected"
+ end
+