X-Git-Url: http://git.code-monkey.de/?p=multipass-eu.git;a=blobdiff_plain;f=src%2Fplaylist_item.rb;h=56b298c44a3a8fd8f4537ce60cb601117a9215c4;hp=cedc2aaa4e76c8478653459527b6b4799ef503a8;hb=ff7fc07e032d4389b35692997fbb197ec76292c7;hpb=f4fdaed2c910dced3d0886e29204bfe0a393685d diff --git a/src/playlist_item.rb b/src/playlist_item.rb index cedc2aa..56b298c 100644 --- a/src/playlist_item.rb +++ b/src/playlist_item.rb @@ -1,21 +1,24 @@ -# $Id: playlist_item.rb 10 2005-04-24 16:22:06Z tilman $ - TEXT_COLOR_HILIGHT = "#f0fafd" EDJE.collection("playlist_item") do |c| c.set_size(150, 10) - ["title", "length"].each do |name| + c.part("background", :rect) do |p| + p.description.color = "#00000000" + p.description("selected").color = "#414141" + end + + ["title", "duration"].each do |name| c.part(name, :text) do |p| p.effect = :outline {"default" => TEXT_COLOR, - "selected" => TEXT_COLOR_HILIGHT}.each do |(state, color)| + "hilighted" => TEXT_COLOR_HILIGHT}.each do |(state, color)| p.description(state) do |d| d.color = color d.outline_color = OUTLINE_COLOR - d.font = "fonts/acknowledge2.ttf" + d.font = "acknowledge2.ttf" d.font_size = 12 d.text = "Dark Tranquillity - Through Smudged Lenses" d.set_text_align(0.0) @@ -24,24 +27,51 @@ EDJE.collection("playlist_item") do |c| end end - ["default", "selected"].each do |state| - c.part("length").description(state) do |d| + ["default", "hilighted"].each do |state| + c.part("title").description(state) do |d| + d.rel[1].set_to(c.part("duration"), nil) + d.rel[1].set_rel(0.0, 1.0) + + #d.rel[0].set_offset(0, 0) + d.rel[1].set_offset(5, 0) + end + + c.part("duration").description(state) do |d| + d.rel[0].set_rel(1.0, 0.0) + d.rel[0].set_offset(-35, 0) + d.text = "04:11" d.set_text_align(1.0) end end - ["selected", "unselected"].each do |state| + ["hilighted", "unhilighted"].each do |state| c.program("playlist_item.#{state}", :set_state) do |p| - p.signal = "PLAYLIST_ITEM_#{state.upcase}" + p.signal = "playlist_item.#{state}" + p.source = "*" p.state = state == "unselected" ? "default" : state p.mode = state == "selected" ? :accelerate : :decelerate p.time = 0.5 p.targets << ProgramTarget.new(c.part("title")) - p.targets << ProgramTarget.new(c.part("length")) + p.targets << ProgramTarget.new(c.part("duration")) end end + ["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 + c.program("playlist_item.doubleclick", :emit_signal) do |p| p.signal = "mouse,down,1,double" p.source = "*"