| 574 | class PlayerWindow(gtk.Window): |
| 575 | UPDATE_INTERVAL = 500 |
| 576 | def __init__(self): |
| 577 | gtk.Window.__init__(self) |
| 578 | self.set_default_size(600, 425) |
| 579 | |
| 580 | self.create_ui() |
| 581 | |
| 582 | self.player = GstPlayer(self.videowidget) |
| 583 | |
| 584 | def on_eos(): |
| 585 | self.player.seek(0L) |
| 586 | self.play_toggled() |
| 587 | self.player.on_eos = lambda *x: on_eos() |
| 588 | |
| 589 | self.update_id = -1 |
| 590 | self.changed_id = -1 |
| 591 | self.seek_timeout_id = -1 |
| 592 | |
| 593 | self.p_position = gst.CLOCK_TIME_NONE |
| 594 | self.p_duration = gst.CLOCK_TIME_NONE |
| 595 | |
| 596 | def on_delete_event(): |
| 597 | self.player.stop() |
| 598 | gtk.main_quit() |
| 599 | self.connect('delete-event', lambda *x: on_delete_event()) |
| 600 | |
| 601 | def load_file(self, location): |
| 602 | filename = location.split('/')[-1] |