commit 07c0cb6bd070903dfde58bcb1c8f1a16b2509b61
Author: phantomjinx <[email protected]>
Date: Mon Jan 24 23:05:57 2011 +0000
Add some progress to deleting tracks
* misc_track.c
* Change text from 'deleted' to 'deleting' since tracks have not been
deleted yet!
* Surround actual deletion with ticks to the status progress bar to
indicate what is currently happening
libgtkpod/misc_track.c | 34 +++++++++++++++++++++++-----------
1 files changed, 23 insertions(+), 11 deletions(-)
---
diff --git a/libgtkpod/misc_track.c b/libgtkpod/misc_track.c
index 39d238c..6cc6acc 100644
--- a/libgtkpod/misc_track.c
+++ b/libgtkpod/misc_track.c
@@ -1956,16 +1956,19 @@ void delete_track_ok(struct DeleteData *dd) {
/* nr of tracks to be deleted */
n = g_list_length(dd->tracks);
+
+ gtkpod_statusbar_reset_progress(n);
+
if (dd->itdb->usertype & GP_ITDB_TYPE_IPOD) {
switch (dd->deleteaction) {
case DELETE_ACTION_IPOD:
- gtkpod_statusbar_message(ngettext ("Deleted one track completely
from iPod",
- "Deleted %d tracks completely from iPod",
+ gtkpod_statusbar_message(ngettext ("Deleting one track completely
from iPod",
+ "Deleting %d tracks completely from iPod",
n), n);
break;
case DELETE_ACTION_PLAYLIST:
- gtkpod_statusbar_message(ngettext ("Deleted %d track from playlist
'%s'",
- "Deleted %d tracks from playlist '%s'",
+ gtkpod_statusbar_message(ngettext ("Deleting %d track from
playlist '%s'",
+ "Deleting %d tracks from playlist '%s'",
n), n, dd->pl->name);
break;
case DELETE_ACTION_LOCAL:
@@ -1979,18 +1982,18 @@ void delete_track_ok(struct DeleteData *dd) {
if (dd->itdb->usertype & GP_ITDB_TYPE_LOCAL) {
switch (dd->deleteaction) {
case DELETE_ACTION_LOCAL:
- gtkpod_statusbar_message(ngettext ("Deleted one track from
harddisk",
- "Deleted %d tracks from harddisk",
+ gtkpod_statusbar_message(ngettext ("Deleting one track from
harddisk",
+ "Deleting %d tracks from harddisk",
n), n);
break;
case DELETE_ACTION_PLAYLIST:
- gtkpod_statusbar_message(ngettext ("Deleted %d track from playlist
'%s'",
- "Deleted %d tracks from playlist '%s'",
+ gtkpod_statusbar_message(ngettext ("Deleting %d track from
playlist '%s'",
+ "Deleting %d tracks from playlist '%s'",
n), n, dd->pl->name);
break;
case DELETE_ACTION_DATABASE:
- gtkpod_statusbar_message(ngettext ("Deleted track from local
database",
- "Deleted %d tracks from local database",
+ gtkpod_statusbar_message(ngettext ("Deleting track from local
database",
+ "Deleting %d tracks from local database",
n), n);
break;
case DELETE_ACTION_IPOD:
@@ -2000,12 +2003,21 @@ void delete_track_ok(struct DeleteData *dd) {
break;
}
}
+
+ int i = 1;
for (l = dd->tracks; l; l = l->next) {
- gp_playlist_remove_track(dd->pl, l->data, dd->deleteaction);
+ Track *track = l->data;
+ gchar *buf = g_strdup_printf(_("Deleting Track %d/%d ..."), i, n);
+ gtkpod_statusbar_increment_progress_ticks(1, buf);
+ g_free(buf);
+
+ gp_playlist_remove_track(dd->pl, track, dd->deleteaction);
+ i++;
}
g_list_free(dd->tracks);
g_free(dd);
+ gtkpod_statusbar_message(_("Completed deletion"));
gtkpod_tracks_statusbar_update();
}
------------------------------------------------------------------------------
Special Offer-- Download ArcSight Logger for FREE (a $49 USD value)!
Finally, a world-class log management solution at an even better price-free!
Download using promo code Free_Logger_4_Dev2Dev. Offer expires
February 28th, so secure your free ArcSight Logger TODAY!
http://p.sf.net/sfu/arcsight-sfd2d
_______________________________________________
gtkpod-cvs2 mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/gtkpod-cvs2