def __init__(self, appconfig, userconfig, player):
super().__init__(title="MokaPlayer", default_width=1366, default_height=768)
self.logger = logging.getLogger('MainWindow')
self.appconfig = appconfig
self.userconfig = userconfig
self.player = player
self.current_playlist = SongsPlaylist()
self.set_icon_from_file(self.ICON_FILE)
self.has_flowbox_album_loaded = False
self.has_flowbox_artist_loaded = False
self.is_fullscreen = False
style_provider = Gtk.CssProvider()
style_provider.load_from_path(self.CSS_FILE)
Gtk.StyleContext.add_provider_for_screen(Gdk.Screen.get_default(), style_provider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION)
if self.userconfig['gtk']['darktheme']:
settings = Gtk.Settings.get_default()
settings.set_property("gtk-application-prefer-dark-theme", True)
self.connect("destroy", self.on_window_destroy)
self.connect("key-press-event", self.on_window_key_press)
self.connect("window-state-event", self.on_window_state_event)
self.builder = Gtk.Builder()
self.builder.add_from_file(self.GLADE_FILE)
self.__get_object()
self.__init_sort_radio()
self.__init_gridview_columns()
self.__init_sidebar()
self.__init_txt_goto()
self.__init_cmb_visualiser()
self.builder.connect_signals(self)
self.player.state_changed.subscribe(self.on_player_state_changed)
self.player.audio_changed.subscribe(self.on_audio_changed)
self.player.volume_changed.subscribe(self.on_volume_changed)
self.__set_current_song_info()
self.on_volume_changed()
self.__show_current_playlist()
GObject.timeout_add(750, self.on_tick, None)
self.logger.info('Window loaded')
if not self.player.library.is_musics_folder_valid():
self.__ask_for_music_folder()
评论列表
文章目录