init undo on new deck, add importing

This commit is contained in:
Damien Elmes 2008-11-30 05:56:24 +09:00
parent 44e788dd9c
commit 1dca4f73be
2 changed files with 16 additions and 10 deletions

View file

@ -114,16 +114,21 @@ class ImportDialog(QDialog):
self.importer.tagsToAdd = unicode(self.dialog.tags.text())
self.importer.tagDuplicates = self.dialog.tagDuplicates.isChecked()
try:
self.importer.doImport()
except ImportFormatError, e:
msg = _("Importing failed.\n")
msg += e.data['info']
self.dialog.status.setText(msg)
return
except DeckWrongFormatError, e:
msg = _("Import failed: %s") % `e.data`
self.dialog.status.setText(msg)
return
n = _("Import")
self.parent.deck.setUndoStart(n)
try:
self.importer.doImport()
except ImportFormatError, e:
msg = _("Importing failed.\n")
msg += e.data['info']
self.dialog.status.setText(msg)
return
except DeckWrongFormatError, e:
msg = _("Import failed: %s") % `e.data`
self.dialog.status.setText(msg)
return
finally:
self.parent.deck.setUndoEnd(n)
txt = (
_("Importing complete. %(num)d cards imported from %(file)s.\n") %
{"num": self.importer.total, "file": os.path.basename(self.file)})

View file

@ -618,6 +618,7 @@ To upgrade an old deck, download Anki 0.9.8.7."""))
def onNew(self):
if not self.saveAndClose(hideWelcome=True): return
self.deck = DeckStorage.Deck()
self.deck.initUndo()
self.deck.addModel(BasicModel())
self.saveDeck()
self.updateRecentFiles(self.deck.path)