87f429f7f86258f453f5d625e9027584ce4134fb
[multipass-eu.git] / src / player-drawer-left.rb
1 # $Id: player-drawer-left.rb 26 2005-06-22 20:19:41Z tilman $
2
3 c = EDJE.collection("euphoria")
4
5 parts = []
6
7 c.part("player.normal.group.drawer.left", :rect) do |p|
8         parts << p
9
10         p.description do |d|
11                 d.color = "#00000000"
12
13                 d.rel[0].to = d.rel[1].to = c.part("player.normal.group.drawer.volume")
14                 d.rel[0].set_offset(44, 8)
15                 d.rel[1].set_rel(0.0, 0.0)
16                 d.rel[1].set_offset(104, 165)
17         end
18
19         p.description("visible").color = "#00000000"
20 end
21
22 c.part("player.background.drawer.left.shadow", :image) do |p|
23         parts << p
24
25         p.description do |d|
26                 d.rel[0].to = d.rel[1].to = parts.first
27
28                 d.image = "background-drawer-left-shadow.png"
29         end
30 end
31
32 c.part("player.background.drawer.left", :image) do |p|
33         parts << p
34
35         p.description do |d|
36                 d.rel[0].to = d.rel[1].to = parts.first
37
38                 d.image = "background-drawer-left.png"
39         end
40 end
41
42 c.part("player.background.drawer.left.arm", :image) do |p|
43         parts << p
44
45         p.description do |d|
46                 d.rel[0].to = d.rel[1].to = parts.first
47                 d.rel[0].set_offset(34, 49)
48
49                 d.auto_rel = true
50                 d.image = "background-drawer-left-arm.png"
51         end
52 end
53
54 h = {"pl" => [6, nil, "playlist.open"],
55      "ml" => 25,
56      "eject" => [44, nil, "file_dialog.open"],
57      "video" => [68, "misc"],
58      "skinoptions" => [94, "misc"],
59      "drawer" => [121, nil,
60                   "player.normal.group.drawer.bottom.toggle_vis"]}
61 h.each do |name, (y, im, sig)|
62         if sig.nil?
63                 parts << Button.new(c, "player.button." + name, parts.first,
64                                     "button-#{im || name}", 9, y).part
65         else
66                 parts << SignalButton.new(c, "player.button." + name,
67                                           parts.first, "button-#{im || name}",
68                                           9, y, sig).part
69         end
70 end
71
72 c.program("player.normal.group.drawer.bottom.toggle_vis",
73           :exec_script) do |p|
74         p.signal = "mouse,clicked,1"
75         p.source = parts.last.name
76
77         p.script =<<SMALL
78 new i = !get_int (toggle_state_drawer);
79 set_int (toggle_state_drawer, i);
80
81 if (i)
82         run_program (PROGRAM:"player.normal.group.drawer.bottom.show");
83 else
84         run_program (PROGRAM:"player.normal.group.drawer.bottom.hide");
85 SMALL
86 end
87
88 c.part("player.background.drawer.left.clip", :rect) do |p|
89         p.description do |d|
90                 d.rel[0].to = d.rel[1].to = c.part("root")
91                 d.rel[0].set_offset(5, 8)
92                 d.rel[1].set_rel(0.0, 0.0)
93                 d.rel[1].set_offset(65, 165)
94         end
95
96         parts.each { |part| part.clip = p }
97
98         parts.first.description("visible") do |d|
99                 d.rel[0].to = d.rel[1].to = p
100         end
101 end