From f01d1f914268b926078aac75344b11eca4cc9ffb Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Sat, 22 Jan 2011 03:36:13 +0900 Subject: [PATCH] play audio once for each template, not once on open --- ankiqt/ui/clayout.py | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/ankiqt/ui/clayout.py b/ankiqt/ui/clayout.py index 9dfa18acb..c78d03b78 100644 --- a/ankiqt/ui/clayout.py +++ b/ankiqt/ui/clayout.py @@ -99,7 +99,7 @@ class CardLayout(QDialog): def setupCards(self): self.needFormatRebuild = False self.updatingCards = False - self.playedAudio = False + self.playedAudio = {} # replace with more appropriate size hints for e in ("cardQuestion", "cardAnswer"): w = getattr(self.form, e) @@ -274,16 +274,7 @@ order by n""", id=card.id) self.saveCard() def renderPreview(self): - if self.card: - c = self.card - else: - # we'll need to generate one - cards = self.deck.previewFact(self.fact) - if not cards: - ui.utils.showInfo(_("No cards to preview."), - parent=parent) - return - pass + c = self.card styles = (self.deck.rebuildCSS() + ("\nhtml { background: %s }" % c.cardModel.lastFontColour)) styles = runFilter("addStyles", styles, c) @@ -297,10 +288,10 @@ order by n""", id=card.id) c) + "") clearAudioQueue() - if not self.playedAudio: + if c.id not in self.playedAudio: playFromText(c.question) playFromText(c.answer) - self.playedAudio = True + self.playedAudio[c.id] = True def reject(self): modified = False