From 4ecd71376c3828dc86217d5cf433959960db7329 Mon Sep 17 00:00:00 2001 From: Fredrik Lundh Date: Mon, 29 Oct 2001 22:58:55 +0000 Subject: [PATCH] directory chooser (requires a recent version of Tk) --- Lib/lib-tk/tkDirectoryChooser.py | 52 ++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 Lib/lib-tk/tkDirectoryChooser.py diff --git a/Lib/lib-tk/tkDirectoryChooser.py b/Lib/lib-tk/tkDirectoryChooser.py new file mode 100644 index 00000000000..593ad8fd9d1 --- /dev/null +++ b/Lib/lib-tk/tkDirectoryChooser.py @@ -0,0 +1,52 @@ +# +# tkDirectoryChooser.py +# $Id$ +# +# tk common directory dialogue +# +# this module provides interfaces to the native directory dialogue +# available in Tk 8.3 and newer. +# +# written by Fredrik Lundh, November 2000. +# + +# +# options (all have default values): +# +# - initialdir: initial directory. preserved by dialog instance. +# +# - mustexist: if true, user must pick an existing directory +# +# - parent: which window to place the dialog on top of +# +# - title: dialog title +# + +from tkCommonDialog import Dialog + +class Chooser(Dialog): + + command = "tk_chooseDirectory" + + def _fixresult(self, widget, result): + if result: + # keep directory until next time + self.options["initialdir"] = result + self.directory = result # compatibility + return result + +# +# convenience stuff + +def askdirectory(**options): + "Ask for a directory name" + + return apply(Chooser, (), options).show() + +# -------------------------------------------------------------------- +# test stuff + +if __name__ == "__main__": + + print "directory", askdirectory() +