import pygtk$ pygtk.require("2.0")$ import gtk$ $ items = ['a', 'b', 'c', 'd']$ $ def callback(*params):$ print params$ $ model = gtk.ListStore(str)$ model.connect("rows-reordered", callback)$ #model.connect("row-changed", callback)$ for i in items:$ model.append((i,))$ $ w = gtk.Window()$ w.connect("destroy", gtk.main_quit)$ v = gtk.TreeView(model)$ v.set_size_request(300, 200)$ v.set_reorderable(True)$ c = gtk.TreeViewColumn("File", gtk.CellRendererText(), text=0)$ v.append_column(c)$ $ w.add(v)$ w.show_all()$ gtk.main()$