diff options
Diffstat (limited to 'lib-python/3/tkinter/dialog.py')
-rw-r--r-- | lib-python/3/tkinter/dialog.py | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/lib-python/3/tkinter/dialog.py b/lib-python/3/tkinter/dialog.py new file mode 100644 index 0000000000..be085abe1d --- /dev/null +++ b/lib-python/3/tkinter/dialog.py @@ -0,0 +1,49 @@ +# dialog.py -- Tkinter interface to the tk_dialog script. + +from tkinter import * +from tkinter import _cnfmerge + +if TkVersion <= 3.6: + DIALOG_ICON = 'warning' +else: + DIALOG_ICON = 'questhead' + + +class Dialog(Widget): + def __init__(self, master=None, cnf={}, **kw): + cnf = _cnfmerge((cnf, kw)) + self.widgetName = '__dialog__' + Widget._setup(self, master, cnf) + self.num = self.tk.getint( + self.tk.call( + 'tk_dialog', self._w, + cnf['title'], cnf['text'], + cnf['bitmap'], cnf['default'], + *cnf['strings'])) + try: Widget.destroy(self) + except TclError: pass + def destroy(self): pass + +def _test(): + d = Dialog(None, {'title': 'File Modified', + 'text': + 'File "Python.h" has been modified' + ' since the last time it was saved.' + ' Do you want to save it before' + ' exiting the application.', + 'bitmap': DIALOG_ICON, + 'default': 0, + 'strings': ('Save File', + 'Discard Changes', + 'Return to Editor')}) + print(d.num) + + +if __name__ == '__main__': + t = Button(None, {'text': 'Test', + 'command': _test, + Pack: {}}) + q = Button(None, {'text': 'Quit', + 'command': t.quit, + Pack: {}}) + t.mainloop() |