aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/browser.c
diff options
context:
space:
mode:
authorGravatar Daniel <random.mister@gmail.com>2011-04-23 16:17:21 +0100
committerGravatar Alex Bennee <alex@bennee.com>2011-04-23 16:19:57 +0100
commit5e5aacfc7174aba9adfbd32238a5756b717e3490 (patch)
tree6304b36ac662e32e7b5b469945a6babae80b76a0 /src/browser.c
parent55e2c3d68d3ba31190c2484db496e09756852ee6 (diff)
Add "Album Artist" field to the list of potential fields to edit
Quoth Daniel (Random Mister): "I just found an extended patch which also includes support for the album-artist tag in the fill tags dialog. It is an update of the other, so if you only add this one to the git tree it should work. I've been using it for over half a year without bugs, so I think it can be merged into the Git tree." Written-By: Daniel <random.mister@gmail.com>
Diffstat (limited to 'src/browser.c')
-rw-r--r--src/browser.c57
1 files changed, 41 insertions, 16 deletions
diff --git a/src/browser.c b/src/browser.c
index 7c86a41..ee154cf 100644
--- a/src/browser.c
+++ b/src/browser.c
@@ -1050,7 +1050,7 @@ void Browser_List_Load_File_List (GList *etfilelist, ET_File *etfile_to_select)
// File list displays the current filename (name on HardDisk) and tag fields
gtk_list_store_append(fileListModel, &rowIter);
track = g_strconcat(FileTag->track ? FileTag->track : "",FileTag->track_total ? "/" : NULL,FileTag->track_total,NULL);
-
+
gtk_list_store_set(fileListModel, &rowIter,
LIST_FILE_NAME, basename_utf8,
LIST_FILE_POINTER, etfilelist->data,
@@ -1058,7 +1058,8 @@ void Browser_List_Load_File_List (GList *etfilelist, ET_File *etfile_to_select)
LIST_FILE_OTHERDIR, activate_bg_color,
LIST_FILE_TITLE, FileTag->title,
LIST_FILE_ARTIST, FileTag->artist,
- LIST_FILE_ALBUM, FileTag->album,
+ LIST_FILE_ALBUM_ARTIST, FileTag->album_artist,
+ LIST_FILE_ALBUM, FileTag->album,
LIST_FILE_YEAR, FileTag->year,
LIST_FILE_TRACK, track,
LIST_FILE_GENRE, FileTag->genre,
@@ -1136,7 +1137,8 @@ void Browser_List_Refresh_Whole_List (void)
LIST_FILE_NAME, current_basename_utf8,
LIST_FILE_TITLE, FileTag->title,
LIST_FILE_ARTIST, FileTag->artist,
- LIST_FILE_ALBUM, FileTag->album,
+ LIST_FILE_ALBUM_ARTIST, FileTag->album_artist,
+ LIST_FILE_ALBUM, FileTag->album,
LIST_FILE_YEAR, FileTag->year,
LIST_FILE_TRACK, track,
LIST_FILE_GENRE, FileTag->genre,
@@ -1291,7 +1293,8 @@ void Browser_List_Refresh_File_In_List (ET_File *ETFile)
LIST_FILE_NAME, current_basename_utf8,
LIST_FILE_TITLE, FileTag->title,
LIST_FILE_ARTIST, FileTag->artist,
- LIST_FILE_ALBUM, FileTag->album,
+ LIST_FILE_ALBUM_ARTIST, FileTag->album_artist,
+ LIST_FILE_ALBUM, FileTag->album,
LIST_FILE_YEAR, FileTag->year,
LIST_FILE_TRACK, track,
LIST_FILE_GENRE, FileTag->genre,
@@ -1435,7 +1438,8 @@ void Browser_List_Set_Row_Appearance (GtkTreeIter *iter)
gtk_list_store_set(fileListModel, iter,
LIST_FILE_TITLE, FileTag->title,
LIST_FILE_ARTIST, FileTag->artist,
- LIST_FILE_ALBUM, FileTag->album,
+ LIST_FILE_ALBUM_ARTIST, FileTag->album_artist,
+ LIST_FILE_ALBUM, FileTag->album,
LIST_FILE_YEAR, FileTag->year,
LIST_FILE_TRACK, FileTag->track,
LIST_FILE_GENRE, FileTag->genre,
@@ -1831,6 +1835,12 @@ gint Browser_List_Sort_Func (GtkTreeModel *model, GtkTreeIter *a, GtkTreeIter *b
case SORTING_BY_DESCENDING_ARTIST:
result = ET_Comp_Func_Sort_File_By_Descending_Artist(ETFile1, ETFile2);
break;
+ case SORTING_BY_ASCENDING_ALBUM_ARTIST:
+ result = ET_Comp_Func_Sort_File_By_Ascending_Album_Artist(ETFile1, ETFile2);
+ break;
+ case SORTING_BY_DESCENDING_ALBUM_ARTIST:
+ result = ET_Comp_Func_Sort_File_By_Descending_Album_Artist(ETFile1, ETFile2);
+ break;
case SORTING_BY_ASCENDING_ALBUM:
result = ET_Comp_Func_Sort_File_By_Ascending_Album(ETFile1, ETFile2);
break;
@@ -3025,7 +3035,7 @@ GtkWidget *Create_Browser_Items (GtkWidget *parent)
GtkTooltips *Tips;
GtkWidget *PopupMenu;
gchar *BrowserTree_Titles[] = {N_("Tree")};
- gchar *BrowserList_Titles[] = {N_("File Name"),N_("Title"),N_("Artist"),N_("Album"),
+ gchar *BrowserList_Titles[] = {N_("File Name"),N_("Title"),N_("Artist"),N_("Album Artist"),N_("Album"),
N_("Year"),N_("Track"),N_("Genre"),N_("Comment"),
N_("Composer"),N_("Orig. Artist"),N_("Copyright"),
N_("URL"),N_("Encoded By")};
@@ -3383,6 +3393,7 @@ GtkWidget *Create_Browser_Items (GtkWidget *parent)
G_TYPE_STRING,
G_TYPE_STRING,
G_TYPE_STRING,
+ G_TYPE_STRING,
G_TYPE_STRING);
BrowserList = gtk_tree_view_new_with_model(GTK_TREE_MODEL(fileListModel));
@@ -3433,13 +3444,27 @@ GtkWidget *Create_Browser_Items (GtkWidget *parent)
NULL);
gtk_tree_view_append_column(GTK_TREE_VIEW(BrowserList), column);
- // Column for Album
+ // Column for Album Artist
column = gtk_tree_view_column_new();
renderer = gtk_cell_renderer_text_new();
gtk_tree_view_column_pack_start(column, renderer, FALSE);
gtk_tree_view_column_set_sizing(column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
gtk_tree_view_column_set_title(column, _(BrowserList_Titles[3]));
gtk_tree_view_column_set_attributes(column, renderer,
+ "text", LIST_FILE_ALBUM_ARTIST,
+ "weight", LIST_FONT_WEIGHT,
+ "background-gdk", LIST_ROW_BACKGROUND,
+ "foreground-gdk", LIST_ROW_FOREGROUND,
+ NULL);
+ gtk_tree_view_append_column(GTK_TREE_VIEW(BrowserList), column);
+
+ // Column for Album
+ column = gtk_tree_view_column_new();
+ renderer = gtk_cell_renderer_text_new();
+ gtk_tree_view_column_pack_start(column, renderer, FALSE);
+ gtk_tree_view_column_set_sizing(column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
+ gtk_tree_view_column_set_title(column, _(BrowserList_Titles[4]));
+ gtk_tree_view_column_set_attributes(column, renderer,
"text", LIST_FILE_ALBUM,
"weight", LIST_FONT_WEIGHT,
"background-gdk", LIST_ROW_BACKGROUND,
@@ -3452,7 +3477,7 @@ GtkWidget *Create_Browser_Items (GtkWidget *parent)
renderer = gtk_cell_renderer_text_new();
gtk_tree_view_column_pack_start(column, renderer, FALSE);
gtk_tree_view_column_set_sizing(column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
- gtk_tree_view_column_set_title(column, _(BrowserList_Titles[4]));
+ gtk_tree_view_column_set_title(column, _(BrowserList_Titles[5]));
gtk_tree_view_column_set_attributes(column, renderer,
"text", LIST_FILE_YEAR,
"weight", LIST_FONT_WEIGHT,
@@ -3466,7 +3491,7 @@ GtkWidget *Create_Browser_Items (GtkWidget *parent)
renderer = gtk_cell_renderer_text_new();
gtk_tree_view_column_pack_start(column, renderer, FALSE);
gtk_tree_view_column_set_sizing(column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
- gtk_tree_view_column_set_title(column, _(BrowserList_Titles[5]));
+ gtk_tree_view_column_set_title(column, _(BrowserList_Titles[6]));
gtk_tree_view_column_set_attributes(column, renderer,
"text", LIST_FILE_TRACK,
"weight", LIST_FONT_WEIGHT,
@@ -3480,7 +3505,7 @@ GtkWidget *Create_Browser_Items (GtkWidget *parent)
renderer = gtk_cell_renderer_text_new();
gtk_tree_view_column_pack_start(column, renderer, FALSE);
gtk_tree_view_column_set_sizing(column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
- gtk_tree_view_column_set_title(column, _(BrowserList_Titles[6]));
+ gtk_tree_view_column_set_title(column, _(BrowserList_Titles[7]));
gtk_tree_view_column_set_attributes(column, renderer,
"text", LIST_FILE_GENRE,
"weight", LIST_FONT_WEIGHT,
@@ -3494,7 +3519,7 @@ GtkWidget *Create_Browser_Items (GtkWidget *parent)
renderer = gtk_cell_renderer_text_new();
gtk_tree_view_column_pack_start(column, renderer, FALSE);
gtk_tree_view_column_set_sizing(column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
- gtk_tree_view_column_set_title(column, _(BrowserList_Titles[7]));
+ gtk_tree_view_column_set_title(column, _(BrowserList_Titles[8]));
gtk_tree_view_column_set_attributes(column, renderer,
"text", LIST_FILE_COMMENT,
"weight", LIST_FONT_WEIGHT,
@@ -3508,7 +3533,7 @@ GtkWidget *Create_Browser_Items (GtkWidget *parent)
renderer = gtk_cell_renderer_text_new();
gtk_tree_view_column_pack_start(column, renderer, FALSE);
gtk_tree_view_column_set_sizing(column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
- gtk_tree_view_column_set_title(column, _(BrowserList_Titles[8]));
+ gtk_tree_view_column_set_title(column, _(BrowserList_Titles[9]));
gtk_tree_view_column_set_attributes(column, renderer,
"text", LIST_FILE_COMPOSER,
"weight", LIST_FONT_WEIGHT,
@@ -3522,7 +3547,7 @@ GtkWidget *Create_Browser_Items (GtkWidget *parent)
renderer = gtk_cell_renderer_text_new();
gtk_tree_view_column_pack_start(column, renderer, FALSE);
gtk_tree_view_column_set_sizing(column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
- gtk_tree_view_column_set_title(column, _(BrowserList_Titles[9]));
+ gtk_tree_view_column_set_title(column, _(BrowserList_Titles[10]));
gtk_tree_view_column_set_attributes(column, renderer,
"text", LIST_FILE_ORIG_ARTIST,
"weight", LIST_FONT_WEIGHT,
@@ -3536,7 +3561,7 @@ GtkWidget *Create_Browser_Items (GtkWidget *parent)
renderer = gtk_cell_renderer_text_new();
gtk_tree_view_column_pack_start(column, renderer, FALSE);
gtk_tree_view_column_set_sizing(column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
- gtk_tree_view_column_set_title(column, _(BrowserList_Titles[10]));
+ gtk_tree_view_column_set_title(column, _(BrowserList_Titles[11]));
gtk_tree_view_column_set_attributes(column, renderer,
"text", LIST_FILE_COPYRIGHT,
"weight", LIST_FONT_WEIGHT,
@@ -3550,7 +3575,7 @@ GtkWidget *Create_Browser_Items (GtkWidget *parent)
renderer = gtk_cell_renderer_text_new();
gtk_tree_view_column_pack_start(column, renderer, FALSE);
gtk_tree_view_column_set_sizing(column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
- gtk_tree_view_column_set_title(column, _(BrowserList_Titles[11]));
+ gtk_tree_view_column_set_title(column, _(BrowserList_Titles[12]));
gtk_tree_view_column_set_attributes(column, renderer,
"text", LIST_FILE_URL,
"weight", LIST_FONT_WEIGHT,
@@ -3564,7 +3589,7 @@ GtkWidget *Create_Browser_Items (GtkWidget *parent)
renderer = gtk_cell_renderer_text_new();
gtk_tree_view_column_pack_start(column, renderer, FALSE);
gtk_tree_view_column_set_sizing(column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
- gtk_tree_view_column_set_title(column, _(BrowserList_Titles[12]));
+ gtk_tree_view_column_set_title(column, _(BrowserList_Titles[13]));
gtk_tree_view_column_set_attributes(column, renderer,
"text", LIST_FILE_ENCODED_BY,
"weight", LIST_FONT_WEIGHT,