+ store
+ end
+
+
+ def handle_current_id( id )
+ songpath = Gtk::TreePath.new( @status[:playlist].index id )
+ @playlistView.scroll_to_cell( songpath, nil, true, 0.5, 0.5 )
+ @playlistView.set_cursor( songpath, nil, false )
+ @server.medialib_get_info( id ).notifier do |songinfo|
+ @currentartistLabel.text = ""
+ @currenttitleLabel.text = ""
+ @currentalbumLabel.text = ""
+
+ @extinfoTab.each do |child| @extinfoTab.remove child end
+
+ songinfo[:artist] && songinfo[:artist].each_pair do |src, value|
+ @currentartistLabel.text += @currentartistLabel.text.empty? ? value : "\n#{value}"
+ end
+ songinfo[:title] && songinfo[:title].each_pair do |src, value|
+ @currenttitleLabel.text += @currenttitleLabel.text.empty? ? value : "\n#{value}"
+ end
+ songinfo[:album] && songinfo[:album].each_pair do |src, value|
+ @currentalbumLabel.text += @currentalbumLabel.text.empty? ? value : "\n#{value}"
+ end
+ songinfo.each_key do |key|
+ infos = String.new
+ songinfo[key].each_pair do |src,value|
+ p key, value if src == :server
+ infos.empty? || infos += "\n"
+ infos += "#{value} (#{src})"
+ end
+ @extinfoTab.pack_end( Gtk::Frame.new( key.to_s ).add( Gtk::Label.new( infos ) ) )
+ end
+ @extinfoTab.show_all
+ true