[easytag] Refactor File_Tag copying functions
- From: David King <davidk src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [easytag] Refactor File_Tag copying functions
- Date: Mon, 5 Jan 2015 00:22:16 +0000 (UTC)
commit 9aad89da3bbe7c822eb12fb082e7d4a085eb3ed6
Author: David King <amigadave amigadave com>
Date: Mon Jan 5 00:09:36 2015 +0000
Refactor File_Tag copying functions
Change functions which accept ET_File for the purposes of copying a
File_Tag struct to instead use the File_Tag directly. Move the
declarations to file_tag.h.
src/cddb_dialog.c | 6 +++---
src/file.c | 4 ++--
src/file.h | 6 +-----
src/file_tag.c | 37 ++++++++++++++-----------------------
src/file_tag.h | 3 +++
src/scan_dialog.c | 26 +++++++++++++-------------
src/tag_area.c | 36 ++++++++++++++++++------------------
7 files changed, 54 insertions(+), 64 deletions(-)
---
diff --git a/src/cddb_dialog.c b/src/cddb_dialog.c
index 996f1bd..48d0112 100644
--- a/src/cddb_dialog.c
+++ b/src/cddb_dialog.c
@@ -1,6 +1,6 @@
/* EasyTAG - Tag editor for audio files
+ * Copyright (C) 2014,2015 David King <amigadave amigadave com>
* Copyright (C) 2000-2003 Jerome Couderc <easytag gmail com>
- * Copyright (C) 2014 David King <amigadave amigadave com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -2364,7 +2364,7 @@ Cddb_Set_Track_Infos_To_File_List (EtCDDBDialog *self)
{
/* Allocation of a new FileTag. */
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item (etfile, FileTag);
+ et_file_tag_copy_into (FileTag, etfile->FileTag->data);
if (set_fields & ET_CDDB_SET_FIELD_TITLE)
{
@@ -2493,7 +2493,7 @@ Cddb_Set_Track_Infos_To_File_List (EtCDDBDialog *self)
{
/* Allocation of a new FileTag. */
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item (etfile, FileTag);
+ et_file_tag_copy_into (FileTag, etfile->FileTag->data);
if (set_fields & ET_CDDB_SET_FIELD_TITLE)
{
diff --git a/src/file.c b/src/file.c
index dbd56fa..8a93441 100644
--- a/src/file.c
+++ b/src/file.c
@@ -1,5 +1,5 @@
/* EasyTAG - tag editor for audio files
- * Copyright (C) 2014 David King <amigadave amigadave com>
+ * Copyright (C) 2014,2015 David King <amigadave amigadave com>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the Free
@@ -1438,7 +1438,7 @@ void ET_Save_File_Data_From_UI (ET_File *ETFile)
#endif
case APE_TAG:
FileTag = et_application_window_tag_area_create_file_tag (ET_APPLICATION_WINDOW (MainWindow));
- ET_Copy_File_Tag_Item_Other_Field (ETFile, FileTag);
+ et_file_tag_copy_other_into (ETFile->FileTag->data, FileTag);
break;
case UNKNOWN_TAG:
default:
diff --git a/src/file.h b/src/file.h
index 10129dc..e94109e 100644
--- a/src/file.h
+++ b/src/file.h
@@ -1,5 +1,5 @@
/* EasyTAG - tag editor for audio files
- * Copyright (C) 2014 David King <amigadave amigadave com>
+ * Copyright (C) 2014,2015 David King <amigadave amigadave com>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the Free
@@ -81,10 +81,6 @@ void ET_Free_File_List_Item (ET_File *ETFile);
gboolean ET_Set_Filename_File_Name_Item (File_Name *FileName, const gchar *filename_utf8, const gchar
*filename);
-/* FIXME: Move to file_tag.h. */
-gboolean ET_Copy_File_Tag_Item (const ET_File *ETFile, File_Tag *FileTag);
-void ET_Copy_File_Tag_Item_Other_Field (const ET_File *ETFile, File_Tag *FileTag);
-
void ET_Display_File_Data_To_UI (ET_File *ETFile);
void ET_Save_File_Data_From_UI (ET_File *ETFile);
gboolean ET_Save_File_Name_Internal (const ET_File *ETFile, File_Name *FileName);
diff --git a/src/file_tag.c b/src/file_tag.c
index 5df7b1c..507b39f 100644
--- a/src/file_tag.c
+++ b/src/file_tag.c
@@ -18,7 +18,7 @@
#include "file_tag.h"
-#include "et_core.h"
+#include "file.h"
/*
* Create a new File_Tag structure.
@@ -78,21 +78,18 @@ et_file_tag_free (File_Tag *FileTag)
* Duplicate the 'other' list
*/
void
-ET_Copy_File_Tag_Item_Other_Field (const ET_File *ETFile,
- File_Tag *FileTag)
+et_file_tag_copy_other_into (File_Tag *destination,
+ const File_Tag *source)
{
- const File_Tag *FileTagCur;
GList *l;
- FileTagCur = (File_Tag *)(ETFile->FileTag)->data;
-
- for (l = FileTagCur->other; l != NULL; l = g_list_next (l))
+ for (l = source->other; l != NULL; l = g_list_next (l))
{
- FileTag->other = g_list_prepend (FileTag->other,
- g_strdup ((gchar *)l->data));
+ destination->other = g_list_prepend (destination->other,
+ g_strdup ((gchar *)l->data));
}
- FileTag->other = g_list_reverse (FileTag->other);
+ destination->other = g_list_reverse (destination->other);
}
@@ -100,19 +97,15 @@ ET_Copy_File_Tag_Item_Other_Field (const ET_File *ETFile,
* Copy data of the File_Tag structure (of ETFile) to the FileTag item.
* Reallocate data if not null.
*/
-gboolean
-ET_Copy_File_Tag_Item (const ET_File *ETFile, File_Tag *destination)
+void
+et_file_tag_copy_into (File_Tag *destination,
+ const File_Tag *source)
{
- const File_Tag *source;
+ g_return_if_fail (source != NULL);
+ g_return_if_fail (destination != NULL);
- g_return_val_if_fail (ETFile != NULL && ETFile->FileTag != NULL &&
- (File_Tag *)(ETFile->FileTag)->data != NULL, FALSE);
- g_return_val_if_fail (destination != NULL, FALSE);
-
- /* The data to duplicate to FileTag */
- source = (File_Tag *)(ETFile->FileTag)->data;
/* Key for the item, may be overwritten. */
- destination->key = ET_Undo_Key_New();
+ destination->key = ET_Undo_Key_New ();
et_file_tag_set_title (destination, source->title);
et_file_tag_set_artist (destination, source->artist);
@@ -134,14 +127,12 @@ ET_Copy_File_Tag_Item (const ET_File *ETFile, File_Tag *destination)
if (source->other)
{
- ET_Copy_File_Tag_Item_Other_Field (ETFile, destination);
+ et_file_tag_copy_other_into (destination, source);
}
else
{
et_file_tag_free_other_field (destination);
}
-
- return TRUE;
}
/*
diff --git a/src/file_tag.h b/src/file_tag.h
index d90d5ba..f62660b 100644
--- a/src/file_tag.h
+++ b/src/file_tag.h
@@ -96,6 +96,9 @@ void et_file_tag_set_url (File_Tag *file_tag, const gchar *url);
void et_file_tag_set_encoded_by (File_Tag *file_tag, const gchar *encoded_by);
void et_file_tag_set_picture (File_Tag *file_tag, const EtPicture *pic);
+void et_file_tag_copy_into (File_Tag *destination, const File_Tag *source);
+void et_file_tag_copy_other_into (File_Tag *destination, const File_Tag *source);
+
gboolean et_file_tag_detect_difference (const File_Tag *FileTag1, const File_Tag *FileTag2);
G_END_DECLS
diff --git a/src/scan_dialog.c b/src/scan_dialog.c
index 9a5ef11..4b5e005 100644
--- a/src/scan_dialog.c
+++ b/src/scan_dialog.c
@@ -1,5 +1,5 @@
/* EasyTAG - Tag editor for audio files
- * Copyright (C) 2014 David King <amigadave amigadave com>
+ * Copyright (C) 2014,2014 David King <amigadave amigadave com>
* Copyright (C) 2000-2003 Jerome Couderc <easytag gmail com>
*
* This program is free software; you can redistribute it and/or modify
@@ -349,7 +349,7 @@ Scan_Tag_With_Mask (EtScanDialog *self, ET_File *ETFile)
// Create a new File_Tag item
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(ETFile,FileTag);
+ et_file_tag_copy_into (FileTag, ETFile->FileTag->data);
// Process this mask with file
fill_tag_list = Scan_Generate_New_Tag_From_Mask(ETFile,mask);
@@ -1357,7 +1357,7 @@ Scan_Process_Fields (EtScanDialog *self, ET_File *ETFile)
if (!FileTag)
{
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(ETFile,FileTag);
+ et_file_tag_copy_into (FileTag, ETFile->FileTag->data);
}
string = g_strdup(st_filetag->title);
@@ -1376,7 +1376,7 @@ Scan_Process_Fields (EtScanDialog *self, ET_File *ETFile)
if (!FileTag)
{
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(ETFile,FileTag);
+ et_file_tag_copy_into (FileTag, ETFile->FileTag->data);
}
string = g_strdup(st_filetag->artist);
@@ -1395,7 +1395,7 @@ Scan_Process_Fields (EtScanDialog *self, ET_File *ETFile)
if (!FileTag)
{
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(ETFile,FileTag);
+ et_file_tag_copy_into (FileTag, ETFile->FileTag->data);
}
string = g_strdup(st_filetag->album_artist);
@@ -1414,7 +1414,7 @@ Scan_Process_Fields (EtScanDialog *self, ET_File *ETFile)
if (!FileTag)
{
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(ETFile,FileTag);
+ et_file_tag_copy_into (FileTag, ETFile->FileTag->data);
}
string = g_strdup(st_filetag->album);
@@ -1433,7 +1433,7 @@ Scan_Process_Fields (EtScanDialog *self, ET_File *ETFile)
if (!FileTag)
{
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(ETFile,FileTag);
+ et_file_tag_copy_into (FileTag, ETFile->FileTag->data);
}
string = g_strdup(st_filetag->genre);
@@ -1452,7 +1452,7 @@ Scan_Process_Fields (EtScanDialog *self, ET_File *ETFile)
if (!FileTag)
{
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(ETFile,FileTag);
+ et_file_tag_copy_into (FileTag, ETFile->FileTag->data);
}
string = g_strdup(st_filetag->comment);
@@ -1471,7 +1471,7 @@ Scan_Process_Fields (EtScanDialog *self, ET_File *ETFile)
if (!FileTag)
{
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(ETFile,FileTag);
+ et_file_tag_copy_into (FileTag, ETFile->FileTag->data);
}
string = g_strdup(st_filetag->composer);
@@ -1490,7 +1490,7 @@ Scan_Process_Fields (EtScanDialog *self, ET_File *ETFile)
if (!FileTag)
{
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(ETFile,FileTag);
+ et_file_tag_copy_into (FileTag, ETFile->FileTag->data);
}
string = g_strdup(st_filetag->orig_artist);
@@ -1509,7 +1509,7 @@ Scan_Process_Fields (EtScanDialog *self, ET_File *ETFile)
if (!FileTag)
{
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(ETFile,FileTag);
+ et_file_tag_copy_into (FileTag, ETFile->FileTag->data);
}
string = g_strdup(st_filetag->copyright);
@@ -1528,7 +1528,7 @@ Scan_Process_Fields (EtScanDialog *self, ET_File *ETFile)
if (!FileTag)
{
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(ETFile,FileTag);
+ et_file_tag_copy_into (FileTag, ETFile->FileTag->data);
}
string = g_strdup(st_filetag->url);
@@ -1547,7 +1547,7 @@ Scan_Process_Fields (EtScanDialog *self, ET_File *ETFile)
if (!FileTag)
{
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(ETFile,FileTag);
+ et_file_tag_copy_into (FileTag, ETFile->FileTag->data);
}
string = g_strdup(st_filetag->encoded_by);
diff --git a/src/tag_area.c b/src/tag_area.c
index 13fb7d1..ad62b03 100644
--- a/src/tag_area.c
+++ b/src/tag_area.c
@@ -1,5 +1,5 @@
/* EasyTAG - tag editor for audio files
- * Copyright (C) 2014 David King <amigadave amigadave com>
+ * Copyright (C) 2014,2015 David King <amigadave amigadave com>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the Free
@@ -177,7 +177,7 @@ on_apply_to_selection (GObject *object,
{
etfile = (ET_File *)l->data;
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(etfile,FileTag);
+ et_file_tag_copy_into (FileTag, etfile->FileTag->data);
et_file_tag_set_title (FileTag, string_to_set);
ET_Manage_Changes_Of_File_Data(etfile,NULL,FileTag);
}
@@ -199,7 +199,7 @@ on_apply_to_selection (GObject *object,
{
etfile = (ET_File *)l->data;
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(etfile,FileTag);
+ et_file_tag_copy_into (FileTag, etfile->FileTag->data);
et_file_tag_set_artist (FileTag, string_to_set);
ET_Manage_Changes_Of_File_Data(etfile,NULL,FileTag);
}
@@ -220,7 +220,7 @@ on_apply_to_selection (GObject *object,
{
etfile = (ET_File *)l->data;
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(etfile,FileTag);
+ et_file_tag_copy_into (FileTag, etfile->FileTag->data);
et_file_tag_set_album_artist (FileTag, string_to_set);
ET_Manage_Changes_Of_File_Data(etfile,NULL,FileTag);
}
@@ -242,7 +242,7 @@ on_apply_to_selection (GObject *object,
{
etfile = (ET_File *)l->data;
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(etfile,FileTag);
+ et_file_tag_copy_into (FileTag, etfile->FileTag->data);
et_file_tag_set_album (FileTag, string_to_set);
ET_Manage_Changes_Of_File_Data(etfile,NULL,FileTag);
}
@@ -280,7 +280,7 @@ on_apply_to_selection (GObject *object,
{
etfile = (ET_File *)l->data;
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(etfile,FileTag);
+ et_file_tag_copy_into (FileTag, etfile->FileTag->data);
et_file_tag_set_disc_number (FileTag, string_to_set);
et_file_tag_set_disc_total (FileTag, string_to_set1);
ET_Manage_Changes_Of_File_Data(etfile,NULL,FileTag);
@@ -312,7 +312,7 @@ on_apply_to_selection (GObject *object,
{
etfile = (ET_File *)l->data;
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(etfile,FileTag);
+ et_file_tag_copy_into (FileTag, etfile->FileTag->data);
et_file_tag_set_year (FileTag, string_to_set);
ET_Manage_Changes_Of_File_Data(etfile,NULL,FileTag);
}
@@ -336,7 +336,7 @@ on_apply_to_selection (GObject *object,
{
etfile = (ET_File *)l->data;
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(etfile,FileTag);
+ et_file_tag_copy_into (FileTag, etfile->FileTag->data);
// We apply the TrackEntry field to all others files only if it is to delete
// the field (string=""). Else we don't overwrite the track number
@@ -403,7 +403,7 @@ on_apply_to_selection (GObject *object,
if ( (ET_File *)etfilelistfull->data == etfile )
{
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(etfile,FileTag);
+ et_file_tag_copy_into (FileTag, etfile->FileTag->data);
et_file_tag_set_track_number (FileTag, string_to_set);
ET_Manage_Changes_Of_File_Data(etfile,NULL,FileTag);
@@ -440,7 +440,7 @@ on_apply_to_selection (GObject *object,
string_to_set1 = g_strdup(string_to_set); // Just for the message below...
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(etfile,FileTag);
+ et_file_tag_copy_into (FileTag, etfile->FileTag->data);
et_file_tag_set_track_total (FileTag, string_to_set);
ET_Manage_Changes_Of_File_Data(etfile,NULL,FileTag);
}
@@ -463,7 +463,7 @@ on_apply_to_selection (GObject *object,
{
etfile = (ET_File *)l->data;
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(etfile,FileTag);
+ et_file_tag_copy_into (FileTag, etfile->FileTag->data);
et_file_tag_set_genre (FileTag, string_to_set);
ET_Manage_Changes_Of_File_Data(etfile,NULL,FileTag);
}
@@ -492,7 +492,7 @@ on_apply_to_selection (GObject *object,
{
etfile = (ET_File *)l->data;
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(etfile,FileTag);
+ et_file_tag_copy_into (FileTag, etfile->FileTag->data);
et_file_tag_set_comment (FileTag, string_to_set);
ET_Manage_Changes_Of_File_Data(etfile,NULL,FileTag);
}
@@ -513,7 +513,7 @@ on_apply_to_selection (GObject *object,
{
etfile = (ET_File *)l->data;
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(etfile,FileTag);
+ et_file_tag_copy_into (FileTag, etfile->FileTag->data);
et_file_tag_set_composer (FileTag, string_to_set);
ET_Manage_Changes_Of_File_Data(etfile,NULL,FileTag);
}
@@ -535,7 +535,7 @@ on_apply_to_selection (GObject *object,
{
etfile = (ET_File *)l->data;
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(etfile,FileTag);
+ et_file_tag_copy_into (FileTag, etfile->FileTag->data);
et_file_tag_set_orig_artist (FileTag, string_to_set);
ET_Manage_Changes_Of_File_Data(etfile,NULL,FileTag);
}
@@ -557,7 +557,7 @@ on_apply_to_selection (GObject *object,
{
etfile = (ET_File *)l->data;
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(etfile,FileTag);
+ et_file_tag_copy_into (FileTag, etfile->FileTag->data);
et_file_tag_set_copyright (FileTag, string_to_set);
ET_Manage_Changes_Of_File_Data(etfile,NULL,FileTag);
}
@@ -579,7 +579,7 @@ on_apply_to_selection (GObject *object,
{
etfile = (ET_File *)l->data;
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(etfile,FileTag);
+ et_file_tag_copy_into (FileTag, etfile->FileTag->data);
et_file_tag_set_url (FileTag, string_to_set);
ET_Manage_Changes_Of_File_Data(etfile,NULL,FileTag);
}
@@ -601,7 +601,7 @@ on_apply_to_selection (GObject *object,
{
etfile = (ET_File *)l->data;
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(etfile,FileTag);
+ et_file_tag_copy_into (FileTag, etfile->FileTag->data);
et_file_tag_set_encoded_by (FileTag, string_to_set);
ET_Manage_Changes_Of_File_Data(etfile,NULL,FileTag);
}
@@ -641,7 +641,7 @@ on_apply_to_selection (GObject *object,
{
etfile = (ET_File *)l->data;
FileTag = et_file_tag_new ();
- ET_Copy_File_Tag_Item(etfile,FileTag);
+ et_file_tag_copy_into (FileTag, etfile->FileTag->data);
et_file_tag_set_picture (FileTag, res);
ET_Manage_Changes_Of_File_Data(etfile,NULL,FileTag);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]