From 94dddb6531f8ba0d2f16ab5675673886decb2bc7 Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Tue, 28 Apr 2009 17:56:01 +0900 Subject: [PATCH] fix images in preview, typo in hook code --- ankiqt/ui/facteditor.py | 7 ++++--- ankiqt/ui/utils.py | 13 +++++++++++++ ankiqt/ui/view.py | 15 ++------------- 3 files changed, 19 insertions(+), 16 deletions(-) diff --git a/ankiqt/ui/facteditor.py b/ankiqt/ui/facteditor.py index b1dcc32a8..bfa4ec6c6 100644 --- a/ankiqt/ui/facteditor.py +++ b/ankiqt/ui/facteditor.py @@ -12,7 +12,7 @@ from ankiqt.ui.sound import getAudio import anki.sound from ankiqt import ui import ankiqt -from ankiqt.ui.utils import mungeQA, saveGeom, restoreGeom +from ankiqt.ui.utils import mungeQA, saveGeom, restoreGeom, getBase from anki.hooks import addHook, removeHook, runHook from sqlalchemy.exceptions import InvalidRequestError @@ -44,7 +44,7 @@ class FactEditor(object): def close(self): removeHook("deckClosed", self.deckClosedHook) - addHook("colourChanged", self.colourChanged) + removeHook("guiReset", self.refresh) removeHook("colourChanged", self.colourChanged) def setFact(self, fact, noFocus=False, check=False, scroll=False): @@ -1075,12 +1075,13 @@ class PreviewDialog(QDialog): def updateCard(self): c = self.cards[self.currentCard] self.dialog.webView.setHtml( + ('%s' % getBase(self.deck)) + "" + mungeQA(self.deck, c.htmlQuestion()) + "




" + - mungeQA(self.deck, c.htmlAnswer())) + mungeQA(self.deck, c.htmlAnswer()) + "") playFromText(c.question) playFromText(c.answer) diff --git a/ankiqt/ui/utils.py b/ankiqt/ui/utils.py index 91e80837f..1162f3dcc 100644 --- a/ankiqt/ui/utils.py +++ b/ankiqt/ui/utils.py @@ -189,6 +189,19 @@ def mungeQA(deck, txt): txt = stripSounds(txt) return txt +def getBase(deck): + if deck and deck.mediaDir(): + if sys.platform.startswith("win32"): + prefix = u"file:///" + else: + prefix = u"file://" + base = prefix + unicode( + urllib.quote(deck.mediaDir().encode("utf-8")), + "utf-8") + return '' % base + else: + return "" + class ProgressWin(object): def __init__(self, parent, max=0, min=0, title=None): diff --git a/ankiqt/ui/view.py b/ankiqt/ui/view.py index b4836e395..c283c2cd3 100644 --- a/ankiqt/ui/view.py +++ b/ankiqt/ui/view.py @@ -11,7 +11,7 @@ from anki.utils import stripHTML from anki.hooks import runHook import types, time, re, os, urllib, sys, difflib from ankiqt import ui -from ankiqt.ui.utils import mungeQA +from ankiqt.ui.utils import mungeQA, getBase from anki.utils import fmtTimeSpan from PyQt4.QtWebKit import QWebPage, QWebView @@ -106,19 +106,8 @@ class View(object): self.buffer = self.addStyles() + self.buffer # hook for user css runHook("preFlushHook") - if self.main.deck and self.main.deck.mediaDir(): - if sys.platform.startswith("win32"): - prefix = u"file:///" - else: - prefix = u"file://" - base = prefix + unicode( - urllib.quote(self.main.deck.mediaDir().encode("utf-8")), - "utf-8") - base = '' % base - else: - base = "" self.buffer = '''%s%s''' % ( - base, self.buffer) + getBase(self.main.deck), self.buffer) #print self.buffer.encode("utf-8") self.body.setHtml(self.buffer)