rendered paste bodyclass Songlist
def initialize(widget)
@widget = widget
@list = Gtk::ListStore.new(String)
renderer = Gtk::CellRendererText.new
column_songs = Gtk::TreeViewColumn::new("Songs", renderer, :text => 0)
@widget.append_column(column_songs)
@widget.model = @list
@song = []
end
def initialize_contactmenu
menu = Gtk::Menu::new()
item_info = Gtk::MenuItem::new('_Information')
item_info.name = 'menu_contacts_information'
item_info.signal_connect('activate') { |item| menu_handler(item) }
menu.append(item_info)
menu.show_all
@menu = menu
end
def get_iter(path)
return @list.get_iter(path)
end
def add(song)
@song << song
end
def clear
@list.clear
end
def display(name)
clear
if name[:album] && name[:album] != "[ALL]"
@song.each { |song|
@list.append[0] = song.title if name[:album] == song.album
}
elsif name[:artist] || name[:album] == "[ALL]"
@song.each { |song|
@list.append[0] = song.title if name[:artist] == song.artist || name[:artist] == "[ALL]"
}
end
end
@widget.signal_connect('button-press-event') { |widget, event|
if(event.kind_of?(Gdk::EventButton))
@contact_menu.popup(nil, nil, event.button, event.time) if(event.button == 3)
false
end
}
end