fix edit & delete bugs in add-ons section

This commit is contained in:
Damien Elmes 2016-07-08 13:10:19 +10:00
parent 19cb527edf
commit 3afef3edb0

View file

@ -37,7 +37,9 @@ class AddonManager(object):
def directories(self): def directories(self):
return [d for d in os.listdir(self.addonsFolder()) return [d for d in os.listdir(self.addonsFolder())
if not d.startswith('.') and os.path.isdir(os.path.join(self.addonsFolder(), d))] if not d.startswith('.') and
not d == "__pycache__" and
os.path.isdir(os.path.join(self.addonsFolder(), d))]
def loadAddons(self): def loadAddons(self):
for file in self.files(): for file in self.files():
@ -67,11 +69,10 @@ class AddonManager(object):
m = self.mw.form.menuPlugins.addMenu( m = self.mw.form.menuPlugins.addMenu(
os.path.splitext(file)[0]) os.path.splitext(file)[0])
self._menus.append(m) self._menus.append(m)
a = QAction(_("Edit..."), self.mw, triggered=self.onEdit)
p = os.path.join(self.addonsFolder(), file) p = os.path.join(self.addonsFolder(), file)
a = QAction(_("Edit..."), self.mw, triggered=lambda x, y=p: self.onEdit(y))
m.addAction(a) m.addAction(a)
a = QAction(_("Delete..."), self.mw, triggered=self.onRem) a = QAction(_("Delete..."), self.mw, triggered=lambda x, y=p: self.onRem(y))
m.addAction(a) m.addAction(a)
def onEdit(self, path): def onEdit(self, path):
@ -84,7 +85,7 @@ class AddonManager(object):
d.exec_() d.exec_()
def onAcceptEdit(self, path, frm): def onAcceptEdit(self, path, frm):
open(path, "w").write(frm.text.toPlainText().encode("utf8")) open(path, "wb").write(frm.text.toPlainText().encode("utf8"))
showInfo(_("Edits saved. Please restart Anki.")) showInfo(_("Edits saved. Please restart Anki."))
def onRem(self, path): def onRem(self, path):