# Bryan Schumaker (6 / 18 / 2011)

import gtk
import libsaria

page = gtk.VBox()
text = "Library"
panels = {}

def remove_path(button, path):
	page.remove(panels[path])
	del panels[path]
	libsaria.sources.library.rm_path(path)

def add_panel(panel, path):
	full_box = gtk.VBox()
	full_box.pack_start(panel)
	full_box.pack_start(gtk.HSeparator())
	full_box.show_all()
	panels[path] = full_box
	page.pack_start(full_box, False, False)

def show_source(path, lib):
	panel    = gtk.HBox()
	info_box = gtk.VBox()

	path_lbl = gtk.Label()
	path_lbl.set_markup("<span size='xx-large' weight='bold'>%s</span>" % path)
	count_lbl = gtk.Label()
	count_lbl.set_markup("<span size='large'>%s files</span>" % len(lib))
	remove_button = gtk.Button("Remove", gtk.STOCK_REMOVE)
	remove_button.connect("clicked", remove_path, path)

	info_box.pack_start(path_lbl)
	info_box.pack_start(count_lbl)
	panel.pack_start(info_box)
	panel.pack_start(remove_button, False, False)
	add_panel(panel, path)

def refresh():
	for path in panels:
		page.remove(panels[path])

	for path, lib in libsaria.sources.library.list_paths():
		show_source(path, lib)
refresh()

