[Idle-dev] CVS: idle ScriptBinding.py,1.13,1.14

Kurt B. Kaiser kbk@users.sourceforge.net
Wed, 18 Dec 2002 19:25:36 -0800


Update of /cvsroot/idlefork/idle
In directory sc8-pr-cvs1:/tmp/cvs-serv26259

Modified Files:
	ScriptBinding.py 
Log Message:
If Edit window has not been saved, offer to save if user tries to Run or
Check the module.


Index: ScriptBinding.py
===================================================================
RCS file: /cvsroot/idlefork/idle/ScriptBinding.py,v
retrieving revision 1.13
retrieving revision 1.14
diff -C2 -r1.13 -r1.14
*** ScriptBinding.py	17 Dec 2002 21:16:12 -0000	1.13
--- ScriptBinding.py	19 Dec 2002 03:25:34 -0000	1.14
***************
*** 142,161 ****
  
      def getfilename(self):
!         # Logic to make sure we have a saved filename
!         # XXX Better logic would offer to save!
          if not self.editwin.get_saved():
!             name = (self.editwin.short_title() or
!                     self.editwin.long_title() or
!                     "Untitled")
!             self.errorbox("Not saved",
!                           "The buffer for %s is not saved.\n" % name +
!                           "Please save it first!")
!             self.editwin.text.focus_set()
!             return
          filename = self.editwin.io.filename
!         if not filename:
!             self.errorbox("No file name",
!                           "This window has no file name")
!             return
          return filename
  
--- 142,168 ----
  
      def getfilename(self):
!         """Get source filename.  If not saved, offer to save (or create) file
! 
!         The debugger requires a source file.  Make sure there is one, and that
!         the current version of the source buffer has been saved.  If the user
!         declines to save or cancels the Save As dialog, return None.
!         """
          if not self.editwin.get_saved():
!             msg = """Source Must Be Saved
!      OK to Save?"""
!             mb = tkMessageBox.Message(
!                                 title="Save Before Run or Check",
!                                 message=msg,
!                                 icon=tkMessageBox.QUESTION,
!                                 type=tkMessageBox.OKCANCEL,
!                                 master=self.editwin.text)
!             reply = mb.show()
!             if reply == "ok":
!                 self.editwin.io.save(None)
!             else:
!                 return None
!         # filename is None if file doesn't exist
          filename = self.editwin.io.filename
!         self.editwin.text.focus_set()
          return filename