7 _moduleLogger = logging.getLogger(__name__)
10 class FakePlayer(gobject.GObject):
14 gobject.SIGNAL_RUN_LAST,
16 (gobject.TYPE_PYOBJECT, ),
19 gobject.SIGNAL_RUN_LAST,
21 (gobject.TYPE_PYOBJECT, ),
24 gobject.SIGNAL_RUN_LAST,
26 (gobject.TYPE_PYOBJECT, ),
31 gobject.GObject.__init__(self)
33 self._title = gtk.Entry()
34 self._title.connect("activate", self._title_change)
36 self._playButton = gtk.RadioButton(label="Play")
37 self._playButton.connect("clicked", self._state_change, "play")
38 self._pauseButton = gtk.RadioButton(group=self._playButton, label="Pause")
39 self._pauseButton.connect("clicked", self._state_change, "pause")
40 self._stopButton = gtk.RadioButton(group=self._playButton, label="stop")
41 self._stopButton.connect("clicked", self._state_change, "stop")
43 self._canNavigate = gtk.CheckButton("Can Navigate?")
44 self._canNavigate.connect("clicked", self._navigate_change)
46 self._layout = gtk.VBox()
47 self._layout.pack_start(self._title)
48 self._layout.pack_start(self._playButton)
49 self._layout.pack_start(self._pauseButton)
50 self._layout.pack_start(self._stopButton)
51 self._layout.pack_start(self._canNavigate)
61 return self._title.get_text()
64 def can_navigate(self):
65 return self._canNavigate.get_active()
71 def _state_change(self, widget, state):
72 self.emit("state_change", state)
75 def _navigate_change(self, widget):
76 self.emit("navigate_change", self._canNavigate.get_active())
78 def _title_change(self, widget):
79 self.emit("title_change", self._title.get_text())
82 _moduleLogger.info("play")
85 _moduleLogger.info("pause")
88 _moduleLogger.info("stop")
91 _moduleLogger.info("back")
94 _moduleLogger.info("next")
97 gobject.type_register(FakePlayer)