def __init__(self, app): super().__init__(orientation=Gtk.Orientation.VERTICAL, spacing=5) self.app = app self.search_count = 0 self.keyword = '' #Initialize page counter self.songs_page = 0 self.songs_total = 0 self.artists_page = 0 self.artists_total = 0 self.albums_page = 0 self.albums_total = 0 box_top = Gtk.Box(spacing=5) self.pack_start(box_top, False, False, 0) if Config.GTK_LE_36: self.search_entry = Gtk.Entry() else: self.search_entry = Gtk.SearchEntry() self.search_entry.set_placeholder_text(_('Search Songs, Artists..')) self.search_entry.props.width_chars = 30 self.search_entry.connect('activate', self.on_search_entry_activate) box_top.pack_start(self.search_entry, False, False, 20) self.songs_button = Widgets.ListRadioButton(_('Songs')) self.songs_button.connect('toggled', self.switch_notebook_page, 0) self.songs_button.search_count = 0 box_top.pack_start(self.songs_button, False, False, 0) self.artists_button = Widgets.ListRadioButton(_('Artists'), self.songs_button) self.artists_button.connect('toggled', self.switch_notebook_page, 1) self.artists_button.search_count = 0 box_top.pack_start(self.artists_button, False, False, 0) self.albums_button = Widgets.ListRadioButton(_('Albums'), self.songs_button) self.albums_button.connect('toggled', self.switch_notebook_page, 2) self.albums_button.search_count = 0 box_top.pack_start(self.albums_button, False, False, 0) # checked, name, artist, album, rid, artistid, albumid self.liststore_songs = Gtk.ListStore(bool, str, str, str, int, int, int) self.control_box = Widgets.ControlBox(self.liststore_songs, app, select_all=False) box_top.pack_end(self.control_box, False, False, 0) self.notebook = Gtk.Notebook() self.notebook.set_show_tabs(False) self.pack_start(self.notebook, True, True, 0) songs_tab = Gtk.ScrolledWindow() songs_tab.get_vadjustment().connect('value-changed', self.on_songs_tab_scrolled) self.notebook.append_page(songs_tab, Gtk.Label(_('Songs'))) treeview_songs = Widgets.TreeViewSongs(self.liststore_songs, app) songs_tab.add(treeview_songs) artists_tab = Gtk.ScrolledWindow() artists_tab.get_vadjustment().connect('value-changed', self.on_artists_tab_scrolled) self.notebook.append_page(artists_tab, Gtk.Label(_('Artists'))) # pic, artist, artistid, country self.liststore_artists = Gtk.ListStore(GdkPixbuf.Pixbuf, str, int, str) iconview_artists = Widgets.IconView(self.liststore_artists) iconview_artists.connect('item_activated', self.on_iconview_artists_item_activated) artists_tab.add(iconview_artists) albums_tab = Gtk.ScrolledWindow() albums_tab.get_vadjustment().connect('value-changed', self.on_albums_tab_scrolled) self.notebook.append_page(albums_tab, Gtk.Label(_('Albums'))) albums_tab.search_count = 0 # logo, album, albumid, artist, artistid, info self.liststore_albums = Gtk.ListStore(GdkPixbuf.Pixbuf, str, int, str, int, str) iconview_albums = Widgets.IconView(self.liststore_albums, tooltip=5) iconview_albums.connect('item_activated', self.on_iconview_albums_item_activated) albums_tab.add(iconview_albums)