1 TEXT_COLOR_HILIGHT = "#f0fafd"
3 EDJE.collection("playlist_item") do |c|
6 c.part("background", :rect) do |p|
7 p.description.color = "#00000000"
8 p.description("selected").color = "#414141"
11 ["title", "duration"].each do |name|
12 c.part(name, :text) do |p|
15 {"default" => TEXT_COLOR,
16 "hilighted" => TEXT_COLOR_HILIGHT}.each do |(state, color)|
17 p.description(state) do |d|
19 d.outline_color = OUTLINE_COLOR
21 d.font = "slkscrb.ttf"
23 d.text = "Dark Tranquillity - Through Smudged Lenses"
30 ["default", "hilighted"].each do |state|
31 c.part("title").description(state) do |d|
32 d.rel[1].set_to(c.part("duration"), nil)
33 d.rel[1].set_rel(0.0, 1.0)
35 #d.rel[0].set_offset(0, 0)
36 d.rel[1].set_offset(5, 0)
39 c.part("duration").description(state) do |d|
40 d.rel[0].set_rel(1.0, 0.0)
41 d.rel[0].set_offset(-35, 0)
48 ["hilighted", "unhilighted"].each do |state|
49 c.program("playlist_item.#{state}", :set_state) do |p|
50 p.signal = "playlist_item.#{state}"
52 p.state = state == "unselected" ? "default" : state
53 p.mode = state == "selected" ? :accelerate : :decelerate
55 p.targets << ProgramTarget.new(c.part("title"))
56 p.targets << ProgramTarget.new(c.part("duration"))
60 ["selected", "unselected"].each do |state|
61 c.program("playlist_item.#{state}", :set_state) do |p|
62 p.signal = "playlist_item.#{state}"
65 p.targets << ProgramTarget.new(c.part("background"))
69 c.program("playlist_item.click", :emit_signal) do |p|
70 p.signal = "mouse,clicked,1"
72 p.emission_signal = "playlist_item.selected"
75 c.program("playlist_item.doubleclick", :emit_signal) do |p|
76 p.signal = "mouse,down,1,double"
78 p.emission_signal = "playlist_item.play"