[gnome-music/freeze-break: 58/107] added dialog for playlists selection.



commit fdcf5c46431292e69c557e5cd3501e6058e2923b
Author: Sai <suman sai14 gmail com>
Date:   Mon Aug 5 01:14:07 2013 +0530

    added dialog for playlists selection.

 gnomemusic/view.py    |    1 -
 gnomemusic/widgets.py |   33 +++++++++++++++++++++++++++++++++
 2 files changed, 33 insertions(+), 1 deletions(-)
---
diff --git a/gnomemusic/view.py b/gnomemusic/view.py
index 001ea49..2205b05 100644
--- a/gnomemusic/view.py
+++ b/gnomemusic/view.py
@@ -528,7 +528,6 @@ class Playlist(ViewContainer):
 
     def _on_add_button_clicked(self, button):
         text_renderer = Gtk.CellRendererText()
-        _iter = self._model.append()
         text_renderer.set_property('editable', True)
         text_renderer.set_property('editable-set', True)
         self.view.get_generic_view().add_renderer(text_renderer,
diff --git a/gnomemusic/widgets.py b/gnomemusic/widgets.py
index 6980d6e..3c2ba87 100644
--- a/gnomemusic/widgets.py
+++ b/gnomemusic/widgets.py
@@ -235,6 +235,8 @@ class AlbumWidget(Gtk.EventBox):
             'clicked', self._on_header_cancel_button_clicked)
         self.view.connect('view-selection-changed',
                           self._on_view_selection_changed)
+        selection_toolbar._add_to_playlist_button.connect(
+            'clicked', self._on_add_to_playlist_button_clicked)
         self.view.set_model(self.model)
         escaped_artist = GLib.markup_escape_text(artist)
         escaped_album = GLib.markup_escape_text(album)
@@ -248,6 +250,10 @@ class AlbumWidget(Gtk.EventBox):
         self.player.connect('playlist-item-changed', self.update_model)
         #self.emit('loaded')
 
+    def _on_add_to_playlist_button_clicked(self, widget):
+        self.dialog = PlaylistDialog()
+        self.dialog.run()
+
     def _on_view_selection_changed(self, widget):
         items = self.view.get_selection()
         self.selection_toolbar\
@@ -435,6 +441,33 @@ class ArtistAlbums(Gtk.VBox):
         return False
 
 
+class PlaylistDialog(Gtk.Dialog):
+    def __init__(self):
+        Gtk.Dialog.__init__(self, "My Dialog", None, 0)
+
+        self.set_default_size(150, 100)
+        self._cancel_button = Gtk.Button(label=_("Cancel"))
+        self._select_button = Gtk.Button(label=_("Select"))
+        self._select_button.get_style_context().add_class("suggested-action")
+        label = Gtk.Label("This is a dialog to display additional information")
+        self.title_bar = Gtk.HeaderBar()
+        self.title_bar.set_title(_("Select Playlist"))
+        self.title_bar.pack_start(self._cancel_button)
+        self.title_bar.pack_end(self._select_button)
+        self.set_titlebar(self.title_bar)
+        box = self.get_content_area()
+        box.add(label)
+        self._cancel_button.connect('clicked', self._on_cancel_button_clicked)
+        self._select_button.connect('clicked', self._on_selection)
+        self.show_all()
+
+    def _on_selection(self, select_button):
+        pass
+
+    def _on_cancel_button_clicked(self, cancel_button):
+        self.destroy()
+
+
 class AllArtistsAlbums(ArtistAlbums):
 
     def __init__(self, player):


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]