home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / pyos2bin.zip / Lib / lib-tk / Dialog.py < prev    next >
Text File  |  1995-08-03  |  1KB  |  50 lines

  1. # Dialog.py -- Tkinter interface to the tk_dialog script.
  2.  
  3. from Tkinter import *
  4. from Tkinter import _cnfmerge
  5.  
  6. if TkVersion <= 3.6:
  7.     DIALOG_ICON = 'warning'
  8. else:
  9.     DIALOG_ICON = 'questhead'
  10.  
  11.  
  12. class Dialog(Widget):
  13.     def __init__(self, master=None, cnf={}, **kw):
  14.         cnf = _cnfmerge((cnf, kw))
  15.         self.widgetName = '__dialog__'
  16.         Widget._setup(self, master, cnf)
  17.         self.num = self.tk.getint(
  18.             apply(self.tk.call,
  19.                   ('tk_dialog', self._w,
  20.                    cnf['title'], cnf['text'], 
  21.                    cnf['bitmap'], cnf['default'])
  22.                   + cnf['strings']))
  23.         try: Widget.destroy(self)
  24.         except TclError: pass
  25.     def destroy(self): pass
  26.  
  27. def _test():
  28.     d = Dialog(None, {'title': 'File Modified',
  29.               'text':
  30.               'File "Python.h" has been modified'
  31.               ' since the last time it was saved.'
  32.               ' Do you want to save it before'
  33.               ' exiting the application.',
  34.               'bitmap': DIALOG_ICON,
  35.               'default': 0,
  36.               'strings': ('Save File', 
  37.                       'Discard Changes', 
  38.                       'Return to Editor')})
  39.     print d.num
  40.  
  41.  
  42. if __name__ == '__main__':
  43.     t = Button(None, {'text': 'Test',
  44.               'command': _test,
  45.               Pack: {}})
  46.     q = Button(None, {'text': 'Quit',
  47.               'command': t.quit,
  48.               Pack: {}})
  49.     t.mainloop()
  50.