def __init__(self): self.ui = cozy.ui.main_view.CozyUI() self.builder = Gtk.Builder.new_from_resource("/com/github/geigi/cozy/timer_popover.ui") self.timer_popover = self.builder.get_object("timer_popover") self.timer_scale = self.builder.get_object("timer_scale") self.timer_label = self.builder.get_object("timer_label") self.timer_grid = self.builder.get_object("timer_grid") self.chapter_switch = self.builder.get_object("chapter_switch") self.chapter_switch.connect("state-set", self.__chapter_switch_changed) self.timer_image = self.ui.get_object("timer_image") self.min_label = self.builder.get_object("min_label") # enable system power control self.power_control_switch = self.builder.get_object("power_control_switch") self.power_control_switch.connect("state-set", self.__power_options_switch_changed) self.power_control_options = self.builder.get_object("power_control_options") # radio buttons for sleep and shutdown self.system_shutdown_radiob = self.builder.get_object("system_shutdown_radiob") self.system_suspend_radiob = self.builder.get_object("system_suspend_radiob") # self.radiob_system_shutdown.connect("toggled", self.on_button_toggled, "1") # text formatting self.timer_scale.connect("value-changed", self.__on_timer_changed) # add marks to timer scale for i in range(0, 121, 30): self.timer_scale.add_mark(i, Gtk.PositionType.RIGHT, None) # initialize timer ui self.__on_timer_changed(None) player.add_player_listener(self.__player_changed)
def __init__(self): self.ui = cozy.ui.main_view.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) self._settings.add_listener(self.__settings_changed) OfflineCache().add_listener(self.__on_offline_cache_changed)
def __init__(self): self.ui = cozy.ui.main_view.CozyUI() self.builder = Gtk.Builder.new_from_resource( "/de/geigi/cozy/timer_popover.ui") self.timer_popover = self.builder.get_object("timer_popover") self.timer_scale = self.builder.get_object("timer_scale") self.timer_label = self.builder.get_object("timer_label") self.timer_grid = self.builder.get_object("timer_grid") self.chapter_switch = self.builder.get_object("chapter_switch") self.chapter_switch.connect("state-set", self.__chapter_switch_changed) self.timer_image = self.ui.get_object("timer_image") self.min_label = self.builder.get_object("min_label") # text formatting self.timer_scale.connect("value-changed", self.__on_timer_changed) # add marks to timer scale for i in range(0, 121, 30): self.timer_scale.add_mark(i, Gtk.PositionType.RIGHT, None) # initialize timer ui self.__on_timer_changed(None) player.add_player_listener(self.__player_changed)
def __init__(self): super().__init__() self._first_play = True self._gst_player: player = player.get_playbin() player.add_player_listener(self._pass_legacy_player_events) self.play_status_updater: IntervalTimer = IntervalTimer( 1, self._emit_tick)
def __init__(self): self.ui = cozy.ui.main_view.CozyUI() self.builder = Gtk.Builder.new_from_resource( "/de/geigi/cozy/playback_speed_popover.ui") self.speed_scale = self.builder.get_object("playback_speed_scale") self.speed_label = self.builder.get_object("playback_speed_label") self.popover = self.builder.get_object("speed_popover") self.speed_scale.add_mark(1.0, Gtk.PositionType.RIGHT, None) self.speed_scale.set_increments(0.02, 0.05) self.speed_scale.connect("value-changed", self.__set_playback_speed) player.add_player_listener(self.__player_changed)
def __init__(self): super().__init__() self._gst_player: player = player.get_playbin() player.add_player_listener(self._pass_legacy_player_events) self.play_status_updater: IntervalTimer = IntervalTimer( 1, self._emit_tick) self._fadeout_thread: Optional[Thread] = None player.init() last_book = self._library.last_played_book if last_book: last_book.last_played = int(time.time()) player.load_file(last_book.current_chapter._db_object) self._rewind_feature()
def __init_signals(self): self.play_button.connect("clicked", self.__on_play_pause_clicked) self.prev_button.connect("clicked", self.__on_rewind_clicked) self.volume_button.connect("value-changed", self.__on_volume_changed) self.remaining_event_box.connect("button-release-event", self._on_remaining_clicked) # init progress scale self.progress_scale.connect("value-changed", self.update_ui_time) self.progress_scale.connect("button-release-event", self.__on_progress_clicked) self.progress_scale.connect("button-press-event", self.__on_progress_press) self.progress_scale.connect("key-press-event", self.__on_progress_key_pressed) player.add_player_listener(self.__player_changed)
def __init_window(self): """ Add fields for all ui objects we need to access from code. Initialize everything we can't do from glade like events and other stuff. """ log.info("Initialize main window") self.window: Gtk.Window = self.window_builder.get_object("app_window") self.window.set_default_size(1100, 700) self.window.set_application(self.app) self.window.show_all() self.window.present() self.window.connect("delete-event", self.on_close) self.window.connect("drag_data_received", self.__on_drag_data_received) self.window.drag_dest_set( Gtk.DestDefaults.MOTION | Gtk.DestDefaults.HIGHLIGHT | Gtk.DestDefaults.DROP, [Gtk.TargetEntry.new("text/uri-list", 0, 80)], Gdk.DragAction.COPY) self.window.title = "Cozy" # resizing the progress bar for older gtk versions if not Gtk.get_minor_version() > 18: self.window.connect("check-resize", self.__window_resized) self.author_box = self.window_builder.get_object("author_box") self.reader_box = self.window_builder.get_object("reader_box") self.book_box = self.window_builder.get_object("book_box") self.book_scroller = self.window_builder.get_object("book_scroller") self.sort_stack = self.window_builder.get_object("sort_stack") self.sort_stack.connect("notify::visible-child", self.__on_sort_stack_changed) self.sort_box = self.window_builder.get_object("sort_box") self.import_box = self.window_builder.get_object("import_box") self.position_box = self.window_builder.get_object("position_box") self.main_stack = self.window_builder.get_object("main_stack") self.toolbar_revealer = self.window_builder.get_object( "toolbar_revealer") self.back_button = self.window_builder.get_object("back_button") self.back_button.connect("clicked", self.__on_back_clicked) self.category_toolbar = self.window_builder.get_object( "category_toolbar") self.sort_stack_revealer = self.window_builder.get_object( "sort_stack_revealer") # This fixes a bug where otherwise expand is # somehow set to true internally # but is still showing false in the inspector self.sort_stack_revealer.props.expand = True self.sort_stack_revealer.props.expand = False self.sort_stack_switcher = self.window_builder.get_object( "sort_stack_switcher") self.no_media_file_chooser = self.window_builder.get_object( "no_media_file_chooser") self.no_media_file_chooser.connect("file-set", self.__on_no_media_folder_changed) self.external_switch = self.window_builder.get_object( "external_switch") self.auto_scan_switch = self.window_builder.get_object( "auto_scan_switch") # some visual stuff self.category_toolbar_separator = self.window_builder.get_object( "category_toolbar_separator") if tools.is_elementary(): self.category_toolbar.set_visible(False) # get about dialog self.about_dialog = self.about_builder.get_object("about_dialog") self.about_dialog.set_transient_for(self.window) self.about_dialog.connect("delete-event", self.hide_window) self.about_dialog.set_version(self.version) # shortcuts self.accel = Gtk.AccelGroup() # sorting and filtering self.author_box.connect("row-selected", self.__on_listbox_changed) self.reader_box.connect("row-selected", self.__on_listbox_changed) self.book_box.set_sort_func(self.__sort_books, None, False) self.book_box.set_filter_func(self.__filter_books, None, False) try: about_close_button = self.about_builder.get_object( "button_box").get_children()[2] if about_close_button: about_close_button.connect("clicked", self.__about_close_clicked) except Exception as e: log.info("Not connecting about close button.") player.add_player_listener(self.__player_changed)