+ free( psz_arturl );
+
+ strings.clear();
+
+ if( model->i_depth == 1 ) //left window for playlist etc.
+ {
+ strings.append( qfu( p_item->p_input->psz_name ) );
+ return;
+ }
+
+ char *psz_meta;
+#define ADD_META( item, meta ) \
+ psz_meta = input_item_Get ## meta ( item->p_input ); \
+ strings.append( qfu( psz_meta ) ); \
+ free( psz_meta );
+
+ for( int i_index=1; i_index <= VLC_META_ENGINE_ART_URL; i_index = i_index * 2 )
+ {
+ if( parentItem->i_showflags & i_index )
+ {
+ switch( i_index )
+ {
+ case VLC_META_ENGINE_ARTIST:
+ ADD_META( p_item, Artist );
+ break;
+ case VLC_META_ENGINE_TITLE:
+ char *psz_title, *psz_name;
+ psz_title = input_item_GetTitle( p_item->p_input );
+ psz_name = input_item_GetName( p_item->p_input );
+ if( psz_title )
+ {
+ ADD_META( p_item, Title );
+ } else {
+ strings.append( qfu( psz_name ) );
+ }
+ free( psz_title );
+ free( psz_name );
+ break;
+ case VLC_META_ENGINE_DESCRIPTION:
+ ADD_META( p_item, Description );
+ break;
+ case VLC_META_ENGINE_DURATION:
+ secstotimestr( psz_duration,
+ input_item_GetDuration( p_item->p_input ) / 1000000 );
+ strings.append( QString( psz_duration ) );
+ break;
+ case VLC_META_ENGINE_GENRE:
+ ADD_META( p_item, Genre );
+ break;
+ case VLC_META_ENGINE_COLLECTION:
+ ADD_META( p_item, Album );
+ break;
+ case VLC_META_ENGINE_SEQ_NUM:
+ ADD_META( p_item, TrackNum );
+ break;
+ case VLC_META_ENGINE_RATING:
+ ADD_META( p_item, Rating );
+ default:
+ break;
+ }
+ }
+
+ }
+#undef ADD_META