def make_subtitles_button(self): hbox = HBox(5) current_track = app.video_renderer.get_enabled_subtitle_track() # None, -1 and 0 all mean there is no current track. if current_track is not None and current_track > 0: ccimage = 'images/cc-on.png' cccolor = GREEN cctext = _("Subtitles On") else: tracks = app.video_renderer.get_subtitle_tracks() if tracks is not None and len(tracks) > 0: ccimage = 'images/cc-available.png' cctext = _("Subtitles Found") cccolor = WHITE else: ccimage = 'images/cc-available.png' cctext = _("Subtitles") cccolor = WHITE cc_image_button = make_image_button(ccimage, self.handle_subtitles) hbox.pack_start(_align_middle(cc_image_button)) subtitles_link = make_label(cctext, self.handle_subtitles) subtitles_link.set_color(cccolor) hbox.pack_start(_align_middle(subtitles_link)) subtitles_image = make_image_button( 'images/subtitles_down.png', self.handle_subtitles) hbox.pack_start(_align_middle(subtitles_image)) return hbox
def rebuild_video_details(self): # this removes the child widget if there is one self.remove() if not self.item_info: self.add(HBox()) return left_side_hbox = HBox(5) right_side_hbox = HBox(5) # fullscreen if app.playback_manager.is_fullscreen: fullscreen_image = make_image_button( 'images/fullscreen_exit.png', self.handle_fullscreen) else: fullscreen_image = make_image_button( 'images/fullscreen_enter.png', self.handle_fullscreen) fullscreen_link = make_label(_("Fullscreen"), self.handle_fullscreen) left_side_hbox.pack_start(_align_middle(fullscreen_image)) left_side_hbox.pack_start(_align_middle(fullscreen_link)) left_side_hbox.pack_start(_align_middle( Divider(), top_pad=3, bottom_pad=3, left_pad=5, right_pad=5)) if app.playback_manager.detached_window is not None: pop_link = make_label( _("Pop-in"), self.handle_popin_popout) # FIXME - need popin image pop_image = make_image_button( 'images/popin.png', self.handle_popin_popout) else: pop_link = make_label( _("Pop-out"), self.handle_popin_popout) pop_image = make_image_button( 'images/popout.png', self.handle_popin_popout) left_side_hbox.pack_start(_align_middle(pop_image)) left_side_hbox.pack_start(_align_middle(pop_link)) left_side_hbox.pack_start(_align_middle( Divider(), top_pad=3, bottom_pad=3, left_pad=5, right_pad=5)) right_side_hbox.pack_start(_align_middle( Divider(), top_pad=3, bottom_pad=3, left_pad=5, right_pad=5)) right_side_hbox.pack_start(self.make_subtitles_button()) right_side_hbox.pack_start(_align_middle( Divider(), top_pad=3, bottom_pad=3, left_pad=5, right_pad=5)) self._delete_image = make_image_button( 'images/delete.png', self.handle_delete) right_side_hbox.pack_start(_align_middle(self._delete_image)) self._delete_link = make_label(_("Delete"), self.handle_delete) right_side_hbox.pack_start(_align_middle(self._delete_link)) if self.item_info.can_be_saved: # keepable self._keep_image = make_image_button( 'images/keep-button.png', self.handle_keep) right_side_hbox.pack_start(_align_middle(self._keep_image)) self._keep_link = make_label(_("Keep"), self.handle_keep) right_side_hbox.pack_start(_align_middle(self._keep_link)) outer_hbox = HBox() outer_hbox.pack_start(_align_left(left_side_hbox, left_pad=10), expand=True) outer_hbox.pack_start(_align_right(right_side_hbox, right_pad=10)) self.add(outer_hbox)
def rebuild_video_details(self): # this removes the child widget if there is one self.remove() if not self.item_info: self.add(HBox()) return info = self.item_info outer_hbox = HBox(5) if not info.is_external: if info.expiration_date is not None: text = displaytext.expiration_date(info.expiration_date) self._expiration_label = Label(text) self._expiration_label.set_size(0.77) self._expiration_label.set_color((152.0 / 255.0, 152.0 / 255.0, 152.0 / 255.0)) outer_hbox.pack_start(_align_middle(self._expiration_label)) outer_hbox.pack_start(_align_middle(Divider(), top_pad=3, bottom_pad=3, left_pad=5, right_pad=5)) lab = make_label(_("Keep"), self.handle_keep, info.expiration_date is not None) outer_hbox.pack_start(_align_middle(lab)) outer_hbox.pack_start(_align_middle(Divider(), top_pad=3, bottom_pad=3, left_pad=5, right_pad=5)) self._subtitles_link = make_label(_("Subtitles"), self.handle_subtitles) outer_hbox.pack_start(_align_middle(self._subtitles_link)) subtitles_image = make_image_button('images/subtitles_down.png', self.handle_subtitles) outer_hbox.pack_start(_align_middle(subtitles_image)) outer_hbox.pack_start(_align_middle(Divider(), top_pad=3, bottom_pad=3, left_pad=5, right_pad=5)) self._delete_link = make_label(_("Delete"), self.handle_delete) outer_hbox.pack_start(_align_middle(self._delete_link)) if not info.is_external: outer_hbox.pack_start(_align_middle(Divider(), top_pad=3, bottom_pad=3, left_pad=5, right_pad=5)) self._share_link = make_label(_("Share"), self.handle_share, info.has_sharable_url) outer_hbox.pack_start(_align_middle(self._share_link)) outer_hbox.pack_start(_align_middle(Divider(), top_pad=3, bottom_pad=3, left_pad=5, right_pad=5)) if info.commentslink: self._permalink_link = make_label(_("Comments"), self.handle_commentslink, info.commentslink) else: self._permalink_link = make_label(_("Permalink"), self.handle_permalink, info.permalink) outer_hbox.pack_start(_align_middle(self._permalink_link)) outer_hbox.pack_start(_align_middle(Divider(), top_pad=3, bottom_pad=3, left_pad=5, right_pad=5)) if app.playback_manager.is_fullscreen: fullscreen_link = make_label(_("Exit fullscreen"), self.handle_fullscreen) outer_hbox.pack_start(_align_middle(fullscreen_link)) fullscreen_image = make_image_button('images/fullscreen_exit.png', self.handle_fullscreen) outer_hbox.pack_start(_align_middle(fullscreen_image)) else: fullscreen_link = make_label(_("Fullscreen"), self.handle_fullscreen) outer_hbox.pack_start(_align_middle(fullscreen_link)) fullscreen_image = make_image_button('images/fullscreen_enter.png', self.handle_fullscreen) outer_hbox.pack_start(_align_middle(fullscreen_image)) if app.playback_manager.detached_window is not None: popin_link = make_label(_("Pop-in"), self.handle_popin_popout) outer_hbox.pack_start(_align_middle(popin_link)) popin_image = make_image_button('images/popin.png', self.handle_popin_popout) outer_hbox.pack_start(_align_middle(popin_image)) else: popout_link = make_label(_("Pop-out"), self.handle_popin_popout) outer_hbox.pack_start(_align_middle(popout_link)) popout_image = make_image_button('images/popout.png', self.handle_popin_popout) outer_hbox.pack_start(_align_middle(popout_image)) self.add(_align_right(outer_hbox, left_pad=15, right_pad=15))
def rebuild_video_details(self): # this removes the child widget if there is one self.remove() if not self.item_info: self.add(HBox()) return left_side_hbox = HBox(5) right_side_hbox = HBox(5) # fullscreen if app.playback_manager.is_fullscreen: fullscreen_image = make_image_button( 'images/fullscreen_exit.png', self.handle_fullscreen) else: fullscreen_image = make_image_button( 'images/fullscreen_enter.png', self.handle_fullscreen) fullscreen_link = make_label(_("Fullscreen"), self.handle_fullscreen) left_side_hbox.pack_start(_align_middle(fullscreen_image)) left_side_hbox.pack_start(_align_middle(fullscreen_link)) left_side_hbox.pack_start(_align_middle( Divider(), top_pad=3, bottom_pad=3, left_pad=5, right_pad=5)) if app.playback_manager.detached_window is not None: pop_link = make_label( _("Pop-in"), self.handle_popin_popout) # FIXME - need popin image pop_image = make_image_button( 'images/popin.png', self.handle_popin_popout) else: pop_link = make_label( _("Pop-out"), self.handle_popin_popout) pop_image = make_image_button( 'images/popout.png', self.handle_popin_popout) left_side_hbox.pack_start(_align_middle(pop_image)) left_side_hbox.pack_start(_align_middle(pop_link)) left_side_hbox.pack_start(_align_middle( Divider(), top_pad=3, bottom_pad=3, left_pad=5, right_pad=5)) right_side_hbox.pack_start(_align_middle( Divider(), top_pad=3, bottom_pad=3, left_pad=5, right_pad=5)) right_side_hbox.pack_start(self.make_subtitles_button()) right_side_hbox.pack_start(_align_middle( Divider(), top_pad=3, bottom_pad=3, left_pad=5, right_pad=5)) self._delete_image = make_image_button( 'images/delete.png', self.handle_delete) right_side_hbox.pack_start(_align_middle(self._delete_image)) self._delete_link = make_label(_("Delete"), self.handle_delete) right_side_hbox.pack_start(_align_middle(self._delete_link)) outer_hbox = HBox() outer_hbox.pack_start(_align_left(left_side_hbox, left_pad=10), expand=True) outer_hbox.pack_start(_align_right(right_side_hbox, right_pad=10)) self.add(outer_hbox)