[gnome-music/wip/jfelder/tag-test: 13/22] songsview: Add renderer for title and artist
- From: Jean Felder <jfelder src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-music/wip/jfelder/tag-test: 13/22] songsview: Add renderer for title and artist
- Date: Mon, 29 Jul 2019 16:17:22 +0000 (UTC)
commit 74df2fa6bdfc91425275cc6a90160b6beb9099d4
Author: Sumaid Syed <sumaidsyed gmail com>
Date: Wed Jul 17 16:53:04 2019 +0530
songsview: Add renderer for title and artist
Add renderers for title and artist so that even if they are modified, they will updated in songsview
gnomemusic/views/songsview.py | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
---
diff --git a/gnomemusic/views/songsview.py b/gnomemusic/views/songsview.py
index 73c5574e..a4733e3f 100644
--- a/gnomemusic/views/songsview.py
+++ b/gnomemusic/views/songsview.py
@@ -109,6 +109,8 @@ class SongsView(BaseView):
ellipsize=Pango.EllipsizeMode.END)
column_title = Gtk.TreeViewColumn("Title", title_renderer, text=2)
column_title.props.expand = True
+ column_title.set_cell_data_func(
+ title_renderer, self._on_list_widget_title_render, None)
self._view.append_column(column_title)
column_star = Gtk.TreeViewColumn()
@@ -126,6 +128,8 @@ class SongsView(BaseView):
xpad=32, ellipsize=Pango.EllipsizeMode.END)
column_artist = Gtk.TreeViewColumn("Artist", artist_renderer, text=3)
column_artist.props.expand = True
+ column_artist.set_cell_data_func(
+ artist_renderer, self._on_list_widget_artist_render, None)
self._view.append_column(column_artist)
album_renderer = Gtk.CellRendererText(
@@ -152,6 +156,22 @@ class SongsView(BaseView):
if item:
cell.props.text = utils.get_album_title(item)
+ def _on_list_widget_artist_render(self, coll, cell, model, _iter, data):
+ if not model.iter_is_valid(_iter):
+ return
+
+ item = model[_iter][5]
+ if item:
+ cell.props.text = utils.get_artist_name(item)
+
+ def _on_list_widget_title_render(self, coll, cell, model, _iter, data):
+ if not model.iter_is_valid(_iter):
+ return
+
+ item = model[_iter][5]
+ if item:
+ cell.props.text = utils.get_media_title(item)
+
def _on_list_widget_icon_render(self, col, cell, model, itr, data):
if not self.player.playing_playlist(PlayerPlaylist.Type.SONGS, None):
cell.props.visible = False
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]