use stdHtml in preview

This commit is contained in:
Damien Elmes 2012-04-08 13:29:55 +09:00
parent cd4b1e894e
commit 4bbd644e0a
3 changed files with 16 additions and 43 deletions

View file

@ -11,6 +11,7 @@ from aqt.utils import saveGeom, restoreGeom, getBase, mungeQA, \
saveSplitter, restoreSplitter, showInfo, askUser, getOnlyText, \
showWarning, openHelp, openLink
from anki.utils import isMac, isWin
from aqt.webview import AnkiWebView
class CardLayout(QDialog):
@ -86,9 +87,13 @@ class CardLayout(QDialog):
right = QWidget()
pform = aqt.forms.preview.Ui_Form()
pform.setupUi(right)
self.frontWeb = AnkiWebView()
pform.frontPrevBox.addWidget(self.frontWeb)
self.backWeb = AnkiWebView()
pform.backPrevBox.addWidget(self.backWeb)
def linkClicked(url):
openLink(url)
for wig in pform.front, pform.back:
for wig in self.frontWeb, self.backWeb:
wig.page().setLinkDelegationPolicy(
QWebPage.DelegateExternalLinks)
c(wig, SIGNAL("linkClicked(QUrl)"), linkClicked)
@ -179,10 +184,12 @@ Please create a new card type first."""))
<style>%s</style>%s</body></html>'''
ti = self.maybeTextInput
base = getBase(self.mw.col)
self.tab['pform'].front.setHtml(
html % (base, "", ti(mungeQA(c.q(reload=True)))))
self.tab['pform'].back.setHtml(
html % (base, "", ti(mungeQA(c.a()), 'a')))
self.frontWeb.stdHtml(
ti(mungeQA(c.q(reload=True))), self.mw.reviewer._styles(),
bodyClass="card", head=base)
self.backWeb.stdHtml(
ti(mungeQA(c.a())), self.mw.reviewer._styles(),
bodyClass="card", head=base)
clearAudioQueue()
if c.id not in self.playedAudio:
playFromText(c.q())

View file

@ -102,8 +102,8 @@ button {
</head>
<body class="%s">%s</body></html>""" % (
fontForPlatform(), button, css, js or anki.js.jquery, head,
bodyClass, body), loadCB)
fontForPlatform(), button, css, js or anki.js.jquery+anki.js.browserSel,
head, bodyClass, body), loadCB)
def setBridge(self, bridge):
self._bridge.setBridge(bridge)
def eval(self, js):

View file

@ -22,28 +22,10 @@
<property name="title">
<string>Front Preview</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_4">
<layout class="QVBoxLayout" name="frontPrevBox">
<property name="margin">
<number>0</number>
</property>
<item>
<widget class="QWebView" name="front">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>1</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="url">
<url>
<string>about:blank</string>
</url>
</property>
</widget>
</item>
</layout>
</widget>
</item>
@ -52,31 +34,15 @@
<property name="title">
<string>Back Preview</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_2">
<layout class="QVBoxLayout" name="backPrevBox">
<property name="margin">
<number>0</number>
</property>
<item>
<widget class="QWebView" name="back">
<property name="url">
<url>
<string>about:blank</string>
</url>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
<customwidgets>
<customwidget>
<class>QWebView</class>
<extends>QWidget</extends>
<header>QtWebKit/QWebView</header>
</customwidget>
</customwidgets>
<resources/>
<connections/>
</ui>