/* update "totals" view section */ void info_update_totals_view(void) { guint32 tracks = 0, playtime = 0; /* playtime in secs */ gdouble filesize = 0; /* in bytes */ Playlist *pl; iTunesDB *itdb; callback_call_all(callbacks_info_update_totals_view); if (!info_window) return; /* not open */ itdb = get_itdb_ipod(); if (itdb) { pl = itdb_playlist_mpl(itdb); g_return_if_fail (pl); fill_in_info(pl->members, &tracks, &playtime, &filesize); } itdb = get_itdb_local(); if (itdb) { pl = itdb_playlist_mpl(itdb); g_return_if_fail (pl); fill_in_info(pl->members, &tracks, &playtime, &filesize); } info_update_totals_view_space(); }
QString IpodDeviceHelper::ipodName( Itdb_iTunesDB *itdb ) { Itdb_Playlist *mpl = itdb ? itdb_playlist_mpl( itdb ) : 0; QString mplName = mpl ? QString::fromUtf8( mpl->name ) : QString(); if( mplName.isEmpty() ) mplName = i18nc( "default iPod name (when user-set name is empty)", "iPod" ); return mplName; }
static void rb_ipod_db_add_track_internal (RbIpodDb *ipod_db, Itdb_Track *track) { RbIpodDbPrivate *priv = IPOD_DB_GET_PRIVATE (ipod_db); itdb_track_add (priv->itdb, track, -1); itdb_playlist_add_track (itdb_playlist_mpl (priv->itdb), track, -1); rb_ipod_db_save_async (ipod_db); }
void IpodDeviceHelper::setIpodName( Itdb_iTunesDB *itdb, const QString &newName ) { if( !itdb ) return; Itdb_Playlist *mpl = itdb_playlist_mpl( itdb ); if( !mpl ) return; g_free( mpl->name ); mpl->name = g_strdup( newName.toUtf8() ); }
const char * rb_ipod_db_get_ipod_name (RbIpodDb *db) { Itdb_Playlist *mpl; RbIpodDbPrivate *priv = IPOD_DB_GET_PRIVATE (db); mpl = itdb_playlist_mpl (priv->itdb); if (mpl == NULL) { rb_debug ("Couldn't find iPod master playlist"); return NULL; } return mpl->name; }
Itdb_Track* GPodDevice::AddTrackToITunesDb(const Song& metadata) { // Create the track Itdb_Track* track = itdb_track_new(); metadata.ToItdb(track); // Add it to the DB and the master playlist // The DB takes ownership of the track itdb_track_add(db_, track, -1); Itdb_Playlist* mpl = itdb_playlist_mpl(db_); itdb_playlist_add_track(mpl, track, -1); return track; }
static void rb_ipod_db_set_ipod_name_internal (RbIpodDb *ipod_db, const char *name) { Itdb_Playlist *mpl; RbIpodDbPrivate *priv = IPOD_DB_GET_PRIVATE (ipod_db); mpl = itdb_playlist_mpl (priv->itdb); if (mpl != NULL) { if (mpl->name != NULL) { rb_debug ("Renaming iPod from %s to %s", mpl->name, name); if (strcmp (mpl->name, name) == 0) { rb_debug ("iPod is already named %s", name); return; } } g_free (mpl->name); mpl->name = g_strdup (name); } else { g_warning ("iPod's master playlist is missing"); } rb_ipod_db_save_async (ipod_db); }
Itdb_Track* GpodDb::AddTrack (const QString& path, const QString& filename, const UnmountableFileInfo& info) { auto dup = [] (const QString& str) { return strdup (str.toUtf8 ().constData ()); }; const auto track = itdb_track_new (); track->track_nr = info.TrackNumber_; track->title = dup (info.TrackTitle_); track->artist = dup (info.Artist_); track->album = dup (info.Album_); track->year = info.AlbumYear_; track->genre = dup (info.Genres_.join (" / ")); track->size = QFileInfo { path }.size (); track->transferred = 1; track->filetype = strdup ("mp3"); const auto& suffix = filename.section ('.', -1, -1).toUpper (); track->filetype_marker = 0; for (int i = 0; i < 4; ++i) { track->filetype_marker <<= 8; track->filetype_marker |= (i >= suffix.length () ? ' ' : suffix [i].toLatin1 ()); } track->ipod_path = strdup (filename.toUtf8 ().mid (1)); itdb_filename_fs2ipod (track->ipod_path); itdb_track_add (DB_, track, -1); itdb_playlist_add_track (itdb_playlist_mpl (DB_), track, -1); return track; }