Browse all music utility
authorIvan Frade <ivan.frade@gmail.com>
Thu, 25 Jun 2009 22:58:16 +0000 (01:58 +0300)
committerIvan Frade <ivan.frade@gmail.com>
Thu, 25 Jun 2009 22:58:16 +0000 (01:58 +0300)
Added button in the main screen, and method to retrieve all songs
in the tracker backend

src/mussorgsky.py
src/tracker_backend.py

index e5c88a6..6429a68 100755 (executable)
@@ -54,6 +54,12 @@ class MussorgskyMainWindow (hildon.StackableWindow):
                                       self.tracker.count_songs_wo_album ())
         return False
 
+    def browse_clicked (self, widget):
+        list_songs = self.tracker.get_all_songs ()
+        list_albums = self.tracker.get_list_of_known_albums ()
+        list_artists = self.tracker.get_list_of_known_artists ()
+        self.show_edit_panel (list_songs, list_albums, list_artists)
+
     def create_main_view (self):
         vbox = gtk.VBox ()
 
@@ -87,6 +93,12 @@ class MussorgskyMainWindow (hildon.StackableWindow):
 
         vbox.add (album_row)
 
+        # All songs row
+        all_songs_row = hildon.Button (hildon.BUTTON_STYLE_NORMAL, hildon.BUTTON_ARRANGEMENT_HORIZONTAL)
+        all_songs_row.set_title ("Browse the music collection")
+        all_songs_row.connect ("clicked", self.browse_clicked)
+        vbox.add (all_songs_row)
+
         return vbox
 
 if __name__ == "__main__":
index 1a9d6fe..35eabd4 100755 (executable)
@@ -21,6 +21,7 @@ RDF_NO_ARTIST = RDF_NO_PROPX % "Audio:Artist"
 RDF_NO_ALBUM = RDF_NO_PROPX % "Audio:Album"
 RDF_NO_TITLE = RDF_NO_PROPX % "Audio:Title"
 
+
 class TrackerBackend:
 
     def __init__ (self):
@@ -75,6 +76,10 @@ class TrackerBackend:
         """
         return self.__run_rdf_query (RDF_NO_ALBUM)
 
+    def get_all_songs (self):
+        return self.__run_rdf_query ("")
+
+
     def get_list_of_known_albums (self):
         return self.iface_metadata.GetUniqueValues ("Music",
                                                     ["Audio:Album"],
@@ -105,3 +110,5 @@ if __name__ == "__main__":
     for a in albums:
         print a[0]
     
+    print "\nAll songs:"
+    print tracker.get_all_songs ()