# HG changeset patch # User William Pitcock # Date 1186743954 18000 # Node ID 08a6320f7a2b48dd89f8a2f1d41b8b9b44a28c2d # Parent 59f2c23810bcefb227443000683ec4e878586174 console: update to new tuple API diff -r 59f2c23810bc -r 08a6320f7a2b src/console/Audacious_Driver.cxx --- a/src/console/Audacious_Driver.cxx Fri Aug 10 03:38:19 2007 -0500 +++ b/src/console/Audacious_Driver.cxx Fri Aug 10 06:05:54 2007 -0500 @@ -13,9 +13,11 @@ #include #include #include +extern "C" { +#include "audacious/main.h" +#include "audacious/tuple.h" +#include "audacious/tuple_formatter.h" #include "audacious/util.h" -#include "audacious/titlestring.h" -extern "C" { #include "audacious/output.h" #include "audacious/playlist.h" } @@ -200,21 +202,29 @@ return g_strdup(in); } -static TitleInput* get_track_ti( const char* path, track_info_t const& info, int track ) +static Tuple* get_track_ti( const char* path, track_info_t const& info, int track ) { - TitleInput* ti = bmp_title_input_new(); + Tuple* ti = tuple_new(); if ( ti ) { - ti->file_name = g_path_get_basename( path ); - ti->file_path = g_path_get_dirname ( path ); - ti->performer = selective_strdup( info.author ); - ti->album_name = selective_strdup( info.game ); - ti->track_name = selective_strdup( info.song ? info.song : ti->file_name ); + tuple_associate_string(ti, "file-name", g_path_get_basename(path)); + tuple_associate_string(ti, "file-path", g_path_get_dirname(path)); + tuple_associate_string(ti, "artist", info.author); + tuple_associate_string(ti, "album", info.game); + tuple_associate_string(ti, "game", info.game); + tuple_associate_string(ti, "title", info.song ? info.song : g_path_get_basename(path)); if ( info.track_count > 1 ) - ti->track_number = track + 1; - ti->comment = selective_strdup( info.copyright ); - ti->genre = g_strconcat( "Console: ", info.system, NULL ); - + { + tuple_associate_int(ti, "track-number", track + 1); + tuple_associate_int(ti, "subsong", track); + } + tuple_associate_string(ti, "copyright", info.copyright); + tuple_associate_string(ti, "console", info.system); + tuple_associate_string(ti, "codec", info.system); + tuple_associate_string(ti, "quality", "sequenced"); + tuple_associate_string(ti, "dumper", info.dumper); + tuple_associate_string(ti, "comment", info.comment); + int length = info.length; if ( length <= 0 ) length = info.intro_length + 2 * info.loop_length; @@ -222,24 +232,24 @@ length = audcfg.loop_length * 1000; else if ( length >= fade_threshold ) length += fade_length; - ti->length = length; + tuple_associate_int(ti, "length", length); } return ti; } -static char* format_and_free_ti( TitleInput* ti, int* length ) +static char* format_and_free_ti( Tuple* ti, int* length ) { - char* result = xmms_get_titlestring( xmms_get_gentitle_format(), ti ); + char* result = tuple_formatter_process_string(ti, cfg.gentitle_format); if ( result ) - *length = ti->length; - bmp_title_input_free( ti ); - + *length = tuple_get_int(ti, "length"); + mowgli_object_unref((void *) ti); + return result; } -static TitleInput *get_song_tuple( gchar *path ) +static Tuple *get_song_tuple( gchar *path ) { - TitleInput* result = 0; + Tuple* result = 0; File_Handler fh( path ); if ( !fh.load( gme_info_only ) ) { @@ -255,7 +265,7 @@ *length = -1; *title = NULL; - TitleInput* ti = get_song_tuple( path ); + Tuple* ti = get_song_tuple( path ); if ( ti ) *title = format_and_free_ti( ti, length ); } @@ -362,7 +372,7 @@ { if ( fh.type == gme_spc_type && audcfg.ignore_spc_length ) info.length = -1; - TitleInput* ti = get_track_ti( fh.path, info, fh.track ); + Tuple* ti = get_track_ti( fh.path, info, fh.track ); if ( ti ) { char* title = format_and_free_ti( ti, &length );