diff options
author | James <james@mackie.(none)> | 2007-03-20 21:47:25 (GMT) |
---|---|---|
committer | James <james@mackie.(none)> | 2007-03-20 21:47:25 (GMT) |
commit | 2dd597154d0cd93b6f252bf98bcb0ddeae488e17 (patch) | |
tree | aece7796129cc57cad2132e72afb2b78b14a9854 /Edit | |
parent | e76233e8f1cf7462ad8343aad5ffd6f7c2fcb16f (diff) |
added .tam extension if filename is missing it
Diffstat (limited to 'Edit')
-rw-r--r-- | Edit/MainWindow.py | 35 |
1 files changed, 23 insertions, 12 deletions
diff --git a/Edit/MainWindow.py b/Edit/MainWindow.py index 23b752c..c63c39d 100644 --- a/Edit/MainWindow.py +++ b/Edit/MainWindow.py @@ -1236,7 +1236,7 @@ class MainWindow( SubActivity ): def handleSave(self, widget): chooser = gtk.FileChooserDialog( - title='Save TamTam Tune', + title='Save Tune', action=gtk.FILE_CHOOSER_ACTION_SAVE, buttons=(gtk.STOCK_CANCEL,gtk.RESPONSE_CANCEL,gtk.STOCK_SAVE,gtk.RESPONSE_OK)) filter = gtk.FileFilter() @@ -1248,16 +1248,22 @@ class MainWindow( SubActivity ): chooser.remove_shortcut_folder_uri(f) if chooser.run() == gtk.RESPONSE_OK: - print 'INFO: serialize to file %s' % chooser.get_filename() - ofile = open(chooser.get_filename(), 'w') - ofilestream = ControlStream.TamTamOStream (ofile) - self.noteDB.dumpToStream(ofilestream) - ofile.close() + ofilename = chooser.get_filename() + if ofilename[-4:] != '.tam': + ofilename += '.tam' + print 'INFO: serialize to file %s' % ofilename + try: + ofile = open(ofilename, 'w') + ofilestream = ControlStream.TamTamOStream (ofile) + self.noteDB.dumpToStream(ofilestream) + ofile.close() + except OSError,e: + print 'ERROR: failed to open file %s for writing\n' % ofilename chooser.destroy() def handleLoad(self, widget): chooser = gtk.FileChooserDialog( - title='Load TamTam Tune', + title='Load Tune', action=gtk.FILE_CHOOSER_ACTION_OPEN, buttons=(gtk.STOCK_CANCEL,gtk.RESPONSE_CANCEL,gtk.STOCK_OPEN,gtk.RESPONSE_OK)) @@ -1274,11 +1280,16 @@ class MainWindow( SubActivity ): self.noteDB.deletePages( self.noteDB.pages.keys() ) # still leaves an empty page at start... grrr print 'DEBUG: loading file: ', chooser.get_filename() - ifile = open(chooser.get_filename(), 'r') - ttt = ControlStream.TamTamTable ( self.noteDB ) - ttt.parseFile(ifile) - ifile.close() - self.noteDB.deletePages( self.noteDB.tune[0:1] ) + try: + ifile = open(chooser.get_filename(), 'r') + ttt = ControlStream.TamTamTable ( self.noteDB ) + ttt.parseFile(ifile) + ifile.close() + # TODO: if deletePages() worked the first time, we wouldn't need + # this + self.noteDB.deletePages( self.noteDB.tune[0:1] ) + except OSError,e: + print 'ERROR: failed to open file %s for reading\n' % ofilename chooser.destroy() |