def __init__(self): self.ui = cozy.ui.CozyUI() builder = self.ui.window_builder self.name_label = builder.get_object("info_book_label") self.author_label = builder.get_object("info_author_label") self.download_box = builder.get_object("info_download_box") self.download_label = builder.get_object("info_download_label") self.download_image = builder.get_object("info_download_image") self.download_switch = builder.get_object("info_download_switch") self.published_label = builder.get_object("info_published_label") self.last_played_label = builder.get_object("info_last_played_label") self.total_label = builder.get_object("info_total_label") self.remaining_label = builder.get_object("info_remaining_label") self.progress_bar = builder.get_object("book_progress_bar") self.cover_img = builder.get_object("info_cover_image") self.track_list_container = builder.get_object("track_list_container") self.published_text = builder.get_object("info_published_text") self.remaining_text = builder.get_object("info_remaining_text") self.play_book_button = builder.get_object("play_book_button") self.play_book_button.connect("clicked", self.__on_play_clicked) self.play_img = builder.get_object("play_img1") self.pause_img = builder.get_object("pause_img1") self.scroller = builder.get_object("book_overview_scroller") if Gtk.get_minor_version() > 20: self.scroller.props.propagate_natural_height = True self.ui.speed.add_listener(self.__ui_changed) player.add_player_listener(self.__player_changed) Settings().add_listener(self.__settings_changed) OfflineCache().add_listener(self.__on_offline_cache_changed)
def __init__(self, b): self.book = b self.ui = cozy.ui.CozyUI() self.ONLINE_TOOLTIP_TEXT = _("Open book overview") self.OFFLINE_TOOLTIP_TEXT = _("Currently offline") super().__init__() self.event_box = Gtk.EventBox() self.add_events(Gdk.EventMask.KEY_PRESS_MASK) self.box = Gtk.Box() self.box.set_orientation(Gtk.Orientation.VERTICAL) self.box.set_spacing(7) self.box.set_halign(Gtk.Align.CENTER) self.box.set_valign(Gtk.Align.START) self.box.set_margin_top(10) # label contains the book name and is limited to x chars title_label = Gtk.Label.new("") title = tools.shorten_string(self.book.name, MAX_BOOK_LENGTH) title_label.set_markup("<b>" + title + "</b>") title_label.set_xalign(0.5) title_label.set_line_wrap(Pango.WrapMode.WORD_CHAR) title_label.props.max_width_chars = 30 title_label.props.justify = Gtk.Justification.CENTER author_label = Gtk.Label.new( tools.shorten_string(self.book.author, MAX_BOOK_LENGTH)) author_label.set_xalign(0.5) author_label.set_line_wrap(Pango.WrapMode.WORD_CHAR) author_label.props.max_width_chars = 30 author_label.props.justify = Gtk.Justification.CENTER author_label.get_style_context().add_class("dim-label") self.art = AlbumElement(self.book, 180, self.ui.window.get_scale_factor(), bordered=True, square=False) if db.is_external( self.book) and not self.book.offline and not FilesystemMonitor( ).is_book_online(self.book): super().set_sensitive(False) self.box.set_tooltip_text(self.OFFLINE_TOOLTIP_TEXT) else: self.box.set_tooltip_text(self.ONLINE_TOOLTIP_TEXT) # assemble finished element self.box.add(self.art) self.box.add(title_label) self.box.add(author_label) self.event_box.add(self.box) self.add(self.event_box) self.event_box.connect("button-press-event", self.__on_button_press_event) self.connect("key-press-event", self.__on_key_press_event) FilesystemMonitor().add_listener(self.__on_storage_changed) Settings().add_listener(self.__on_storage_changed)
def __init_components(self): self.titlebar = Titlebar(self) self.sleep_timer = SleepTimer(self) self.speed = PlaybackSpeed(self) self.search = Search(self) self.settings = Settings(self) self.titlebar.activate()
def __init_components(self): self.titlebar = Titlebar(self) self.sleep_timer = SleepTimer(self) self.speed = PlaybackSpeed(self) self.search = Search(self) self.settings = Settings(self) self.book_overview = BookOverview(self) self.titlebar.activate() if player.get_current_track() is None: self.block_ui_buttons(True)
def __init_components(self): self.titlebar = Titlebar() self.sleep_timer = SleepTimer() self.speed = PlaybackSpeed() self.search = Search() self.settings = Settings() self.settings.add_listener(self.__on_settings_changed) self.book_overview = BookOverview() self.fs_monitor = fs_monitor.FilesystemMonitor() self.offline_cache = offline_cache.OfflineCache() player.init() self.titlebar.activate() if player.get_current_track() is None: self.block_ui_buttons(True)