My $i = new Tcl::Tk; (... generate GUI ...) $i -> call("package require", "tkdnd"); $i -> call("dnd bindsource", ".perl_hlist_object", "text/uri", {\&Perl_Sub}); $i -> call("bind", ".perl_hlist_object", "<1>", {dnd drag %W};