5 import util.misc as misc_utils
8 _moduleLogger = logging.getLogger(__name__)
11 class PlayControl(object):
13 def __init__(self, player, store):
17 self._player.connect("state-change", self._on_player_state_change)
18 self._player.connect("navigate-change", self._on_player_nav_change)
20 img = store.get_image_from_store("prev.png")
21 self._back = gtk.Button()
22 self._back.set_image(img)
23 self._back.connect("clicked", self._on_back_clicked)
25 img = store.get_image_from_store("stop.png")
26 self._stop = gtk.Button()
27 self._stop.set_image(img)
28 self._stop.connect("clicked", self._on_stop_clicked)
30 img = store.get_image_from_store("pause.png")
31 self._pause = gtk.Button()
32 self._pause.set_image(img)
33 self._pause.connect("clicked", self._on_pause_clicked)
35 img = store.get_image_from_store("play.png")
36 self._play = gtk.Button()
37 self._play.set_image(img)
38 self._play.connect("clicked", self._on_play_clicked)
40 img = store.get_image_from_store("next.png")
41 self._next = gtk.Button()
42 self._next.set_image(img)
43 self._next.connect("clicked", self._on_next_clicked)
45 self._controls = gtk.HBox()
46 self._controls.pack_start(self._back)
47 self._controls.pack_start(self._stop)
48 self._controls.pack_start(self._pause)
49 self._controls.pack_start(self._play)
50 self._controls.pack_start(self._next)
56 @misc_utils.log_exception(_moduleLogger)
57 def _on_player_state_change(self, player, newState):
58 if newState == "play":
61 elif newState == "pause":
64 elif newState == "stop":
68 if self._player.can_navigate:
75 @misc_utils.log_exception(_moduleLogger)
76 def _on_player_nav_change(self, player, canNavigate):
84 @misc_utils.log_exception(_moduleLogger)
85 def _on_back_clicked(self, *args):
88 @misc_utils.log_exception(_moduleLogger)
89 def _on_stop_clicked(self, *args):
94 @misc_utils.log_exception(_moduleLogger)
95 def _on_pause_clicked(self, *args):
100 @misc_utils.log_exception(_moduleLogger)
101 def _on_play_clicked(self, *args):
106 @misc_utils.log_exception(_moduleLogger)
107 def _on_next_clicked(self, *args):