On Monday, June 3, 2013 10:16:13 PM UTC-5, Vito De Tullio wrote: > Rick Johnson wrote: > > Take your > > standard yes/no/cancel dialog, i would expect it to return > > True|False|None respectively, > you clearly mean True / False / FileNotFound.
No, i clearly meant what i said :-). FileDialogs only return one of two values; either a valid path or a value representing "failure". I suppose FileNotFound is a custom exception? That will work however i wonder if exception handling is overkill for this? try: path = filedialog.open("path") except FileNotFound: return do_something(path) As opposed to: path = filedialog.open("path") if path: do_something(path) Or, if Python was really cool! if filedialog.open("path") as path: do_something(path) However, i think True|False|None is the best return values for a yes|no|cancel choice. Consider: result = yesnocancel("save changes?") if result: # Try to save changes and close. if self.fileSave(): app.close() else: show_error() elif result is False: # Close without saving changes. app.close() else: # Canceled: Do nothing. return -- http://mail.python.org/mailman/listinfo/python-list