mirror of
https://github.com/ankitects/anki.git
synced 2025-09-24 08:46:37 -04:00
update help references and some old links
This commit is contained in:
parent
2d76f2516e
commit
292f6403a1
23 changed files with 46 additions and 95 deletions
|
@ -8,8 +8,7 @@ from PyQt4.QtGui import *
|
||||||
appName="Anki"
|
appName="Anki"
|
||||||
appVersion="1.99"
|
appVersion="1.99"
|
||||||
appWebsite="http://ankisrs.net/"
|
appWebsite="http://ankisrs.net/"
|
||||||
appWiki="http://ankisrs.net/wiki/"
|
appHelpSite="http://ankisrs.net/docs/dev/"
|
||||||
appHelpSite="http://ankisrs.net/docs/"
|
|
||||||
appDonate="http://ankisrs.net/support/"
|
appDonate="http://ankisrs.net/support/"
|
||||||
modDir=os.path.dirname(os.path.abspath(__file__))
|
modDir=os.path.dirname(os.path.abspath(__file__))
|
||||||
runningDir=os.path.split(modDir)[0]
|
runningDir=os.path.split(modDir)[0]
|
||||||
|
@ -19,6 +18,14 @@ if hasattr(sys, "frozen"):
|
||||||
sys.path.append(modDir)
|
sys.path.append(modDir)
|
||||||
modDir = os.path.dirname(sys.argv[0])
|
modDir = os.path.dirname(sys.argv[0])
|
||||||
|
|
||||||
|
def openHelp(name):
|
||||||
|
if "#" in name:
|
||||||
|
name = name.split("#")
|
||||||
|
name = name[0] + ".html#" + name[1]
|
||||||
|
else:
|
||||||
|
name = name + ".html"
|
||||||
|
QDesktopServices.openUrl(QUrl(appHelpSite + name))
|
||||||
|
|
||||||
# Dialog manager - manages modeless windows
|
# Dialog manager - manages modeless windows
|
||||||
##########################################################################
|
##########################################################################
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,7 @@ def show(parent):
|
||||||
abouttext += '<p>' + _("Anki is a friendly, intelligent spaced learning \
|
abouttext += '<p>' + _("Anki is a friendly, intelligent spaced learning \
|
||||||
system. It's free and open source.")
|
system. It's free and open source.")
|
||||||
abouttext += '<p>' + _("Version %s") % appVersion + '<br>'
|
abouttext += '<p>' + _("Version %s") % appVersion + '<br>'
|
||||||
abouttext += _("<a href='http://ichi2.net/anki/'>Visit website</a>") + \
|
abouttext += (_("<a href='%s'>Visit website</a>") % aqt.appWebsite) + \
|
||||||
"</span>"
|
"</span>"
|
||||||
abouttext += '<p>' + _("Written by Damien Elmes, with patches, translation,\
|
abouttext += '<p>' + _("Written by Damien Elmes, with patches, translation,\
|
||||||
testing and design from:<p>%(cont)s") % {'cont': u"""
|
testing and design from:<p>%(cont)s") % {'cont': u"""
|
||||||
|
|
|
@ -129,8 +129,7 @@ class ActiveTagsChooser(QDialog):
|
||||||
QDialog.accept(self)
|
QDialog.accept(self)
|
||||||
|
|
||||||
def onHelp(self):
|
def onHelp(self):
|
||||||
QDesktopServices.openUrl(QUrl(aqt.appWiki +
|
aqt.openHelp("SelectiveStudy")
|
||||||
"SelectiveStudy"))
|
|
||||||
|
|
||||||
def show(parent, type):
|
def show(parent, type):
|
||||||
at = ActiveTagsChooser(parent, type)
|
at = ActiveTagsChooser(parent, type)
|
||||||
|
|
|
@ -59,7 +59,7 @@ class AddCards(QDialog):
|
||||||
self.dialog.modelArea.setLayout(self.modelChooser)
|
self.dialog.modelArea.setLayout(self.modelChooser)
|
||||||
|
|
||||||
def helpRequested(self):
|
def helpRequested(self):
|
||||||
QDesktopServices.openUrl(QUrl(aqt.appWiki + "AddItems"))
|
aqt.openHelp("AddItems")
|
||||||
|
|
||||||
def addButtons(self):
|
def addButtons(self):
|
||||||
self.addButton = QPushButton(_("Add"))
|
self.addButton = QPushButton(_("Add"))
|
||||||
|
|
|
@ -1137,8 +1137,8 @@ where id in %s""" % ids2str(sf))
|
||||||
}, parent=self)
|
}, parent=self)
|
||||||
|
|
||||||
def onFindReplaceHelp(self):
|
def onFindReplaceHelp(self):
|
||||||
QDesktopServices.openUrl(QUrl(aqt.appWiki +
|
aqt.openHelp("Browser#FindReplace")
|
||||||
"Browser#FindReplace"))
|
|
||||||
# Edit: finding dupes
|
# Edit: finding dupes
|
||||||
######################################################################
|
######################################################################
|
||||||
|
|
||||||
|
@ -1270,7 +1270,7 @@ select fm.id, fm.name from fieldmodels fm""")
|
||||||
######################################################################
|
######################################################################
|
||||||
|
|
||||||
def onHelp(self):
|
def onHelp(self):
|
||||||
QDesktopServices.openUrl(QUrl(aqt.appWiki + "Browser"))
|
aqt.openHelp("Browser")
|
||||||
|
|
||||||
# Generate card dialog
|
# Generate card dialog
|
||||||
######################################################################
|
######################################################################
|
||||||
|
@ -1315,8 +1315,7 @@ order by ordinal""" % ids2str(self.cms))
|
||||||
QDialog.accept(self)
|
QDialog.accept(self)
|
||||||
|
|
||||||
def onHelp(self):
|
def onHelp(self):
|
||||||
QDesktopServices.openUrl(QUrl(aqt.appWiki +
|
aqt.openHelp("Browser#GenerateCards")
|
||||||
"Browser#GenerateCards"))
|
|
||||||
|
|
||||||
# Change model dialog
|
# Change model dialog
|
||||||
######################################################################
|
######################################################################
|
||||||
|
@ -1476,5 +1475,4 @@ Are you sure you want to continue?"""), parent=self):
|
||||||
return QDialog.accept(self)
|
return QDialog.accept(self)
|
||||||
|
|
||||||
def onHelp(self):
|
def onHelp(self):
|
||||||
QDesktopServices.openUrl(QUrl(aqt.appWiki +
|
aqt.openHelp("Browser#ChangeModel")
|
||||||
"Browser#ChangeModel"))
|
|
||||||
|
|
|
@ -325,8 +325,7 @@ order by n""", id=card.id)
|
||||||
QDialog.reject(self)
|
QDialog.reject(self)
|
||||||
|
|
||||||
def onHelp(self):
|
def onHelp(self):
|
||||||
QDesktopServices.openUrl(QUrl(aqt.appWiki +
|
aqt.openHelp("CardLayout")
|
||||||
"CardLayout"))
|
|
||||||
|
|
||||||
# Fields
|
# Fields
|
||||||
##########################################################################
|
##########################################################################
|
||||||
|
|
|
@ -147,8 +147,7 @@ class DeckProperties(QDialog):
|
||||||
self.d.setModified()
|
self.d.setModified()
|
||||||
|
|
||||||
def helpRequested(self):
|
def helpRequested(self):
|
||||||
QDesktopServices.openUrl(QUrl(aqt.appWiki +
|
aqt.openHelp("DeckProperties")
|
||||||
"DeckProperties"))
|
|
||||||
|
|
||||||
def reject(self):
|
def reject(self):
|
||||||
n = _("Deck Properties")
|
n = _("Deck Properties")
|
||||||
|
|
|
@ -884,8 +884,7 @@ class FactEditor(object):
|
||||||
|
|
||||||
def onHtmlEdit(self):
|
def onHtmlEdit(self):
|
||||||
def helpRequested():
|
def helpRequested():
|
||||||
QDesktopServices.openUrl(QUrl(aqt.appWiki +
|
aqt.openHelp("HtmlEditor")
|
||||||
"HtmlEditor"))
|
|
||||||
w = self.focusedEdit()
|
w = self.focusedEdit()
|
||||||
if w:
|
if w:
|
||||||
self.saveFields()
|
self.saveFields()
|
||||||
|
|
|
@ -24,8 +24,7 @@ class GroupConf(QDialog):
|
||||||
self.setup()
|
self.setup()
|
||||||
self.connect(self.form.buttonBox,
|
self.connect(self.form.buttonBox,
|
||||||
SIGNAL("helpRequested()"),
|
SIGNAL("helpRequested()"),
|
||||||
lambda: QDesktopServices.openUrl(QUrl(
|
lambda: aqt.openHelp("GroupOptions"))
|
||||||
aqt.appWiki + "GroupOptions")))
|
|
||||||
self.connect(self.form.buttonBox.button(QDialogButtonBox.RestoreDefaults),
|
self.connect(self.form.buttonBox.button(QDialogButtonBox.RestoreDefaults),
|
||||||
SIGNAL("clicked()"),
|
SIGNAL("clicked()"),
|
||||||
self.onRestore)
|
self.onRestore)
|
||||||
|
|
|
@ -63,8 +63,7 @@ class GroupManager(QDialog):
|
||||||
b = button(_("&Options..."), self.onEdit).setShortcut("o")
|
b = button(_("&Options..."), self.onEdit).setShortcut("o")
|
||||||
self.connect(box,
|
self.connect(box,
|
||||||
SIGNAL("helpRequested()"),
|
SIGNAL("helpRequested()"),
|
||||||
lambda: QDesktopServices.openUrl(QUrl(
|
lambda: aqt.openHelp("GroupManager"))
|
||||||
aqt.appWiki + "GroupManager")))
|
|
||||||
|
|
||||||
def onStudy(self):
|
def onStudy(self):
|
||||||
self.mw.deck.reset()
|
self.mw.deck.reset()
|
||||||
|
|
|
@ -66,7 +66,7 @@ class UpdateMap(QDialog):
|
||||||
self.exec_()
|
self.exec_()
|
||||||
|
|
||||||
def helpRequested(self):
|
def helpRequested(self):
|
||||||
QDesktopServices.openUrl(QUrl(aqt.appWiki + "FileImport"))
|
aqt.openHelp("FileImport")
|
||||||
|
|
||||||
def accept(self):
|
def accept(self):
|
||||||
self.updateKey = (
|
self.updateKey = (
|
||||||
|
@ -312,4 +312,4 @@ you can enter it here. Use \\t to represent tab."""),
|
||||||
QDialog.reject(self)
|
QDialog.reject(self)
|
||||||
|
|
||||||
def helpRequested(self):
|
def helpRequested(self):
|
||||||
QDesktopServices.openUrl(QUrl(aqt.appWiki + "FileImport"))
|
aqt.openHelp("FileImport")
|
||||||
|
|
|
@ -205,5 +205,4 @@ class AddModel(QDialog):
|
||||||
QDialog.accept(self)
|
QDialog.accept(self)
|
||||||
|
|
||||||
def onHelp(self):
|
def onHelp(self):
|
||||||
QDesktopServices.openUrl(QUrl(aqt.appWiki +
|
aqt.openHelp("AddModel")
|
||||||
"AddModel"))
|
|
||||||
|
|
|
@ -252,8 +252,7 @@ class ModelProperties(QDialog):
|
||||||
self.ignoreCardUpdate = False
|
self.ignoreCardUpdate = False
|
||||||
|
|
||||||
def helpRequested(self):
|
def helpRequested(self):
|
||||||
QDesktopServices.openUrl(QUrl(aqt.appWiki +
|
aqt.openHelp("ModelProperties")
|
||||||
"ModelProperties"))
|
|
||||||
|
|
||||||
# Cleanup
|
# Cleanup
|
||||||
##########################################################################
|
##########################################################################
|
||||||
|
|
|
@ -123,9 +123,6 @@ to work with this version of Anki."""))
|
||||||
path = self.pluginsFolder()
|
path = self.pluginsFolder()
|
||||||
openFolder(path)
|
openFolder(path)
|
||||||
|
|
||||||
def onGetPlugins(self):
|
|
||||||
QDesktopServices.openUrl(QUrl("http://ichi2.net/anki/wiki/Plugins"))
|
|
||||||
|
|
||||||
def enablePlugin(self, p):
|
def enablePlugin(self, p):
|
||||||
pd = self.pluginsFolder()
|
pd = self.pluginsFolder()
|
||||||
old = os.path.join(pd, p)
|
old = os.path.join(pd, p)
|
||||||
|
|
|
@ -248,7 +248,4 @@ class Preferences(QDialog):
|
||||||
return self.codeToIndex("en")
|
return self.codeToIndex("en")
|
||||||
|
|
||||||
def helpRequested(self):
|
def helpRequested(self):
|
||||||
idx = self.dialog.tabWidget.currentIndex()
|
aqt.openHelp("Preferences")
|
||||||
QDesktopServices.openUrl(QUrl(aqt.appWiki +
|
|
||||||
"Preferences#" +
|
|
||||||
tabs[idx]))
|
|
||||||
|
|
|
@ -527,9 +527,8 @@ div#filler {
|
||||||
# progress
|
# progress
|
||||||
addWgt(vertSep())
|
addWgt(vertSep())
|
||||||
class QClickableProgress(QProgressBar):
|
class QClickableProgress(QProgressBar):
|
||||||
url = "http://ichi2.net/anki/wiki/ProgressBars"
|
|
||||||
def mouseReleaseEvent(self, evt):
|
def mouseReleaseEvent(self, evt):
|
||||||
QDesktopServices.openUrl(QUrl(self.url))
|
aqt.openHelp("ProgressBars")
|
||||||
progressBarSize = (50, 14)
|
progressBarSize = (50, 14)
|
||||||
self.progressBar = QClickableProgress()
|
self.progressBar = QClickableProgress()
|
||||||
self.progressBar.setFixedSize(*progressBarSize)
|
self.progressBar.setFixedSize(*progressBarSize)
|
||||||
|
@ -590,10 +589,9 @@ div#filler {
|
||||||
def onLeech(self, card):
|
def onLeech(self, card):
|
||||||
print "leech"
|
print "leech"
|
||||||
return
|
return
|
||||||
|
link = aqt.appHelpSite + "Leeches.html"
|
||||||
txt = (_("""\
|
txt = (_("""\
|
||||||
<b>%s</b>... is a <a href="http://ichi2.net/anki/wiki/Leeches">leech</a>.""")
|
Card was a <a href="%s">leech</a>.""") % link)
|
||||||
% stripHTML(stripSounds(self.currentCard.question)).\
|
|
||||||
replace("\n", " ")[0:30])
|
|
||||||
if isLeech and self.deck.db.scalar(
|
if isLeech and self.deck.db.scalar(
|
||||||
"select 1 from cards where id = :id and type < 0", id=cardId):
|
"select 1 from cards where id = :id and type < 0", id=cardId):
|
||||||
txt += _(" It has been suspended.")
|
txt += _(" It has been suspended.")
|
||||||
|
|
|
@ -69,8 +69,8 @@
|
||||||
This is an exported packaged deck created by Anki.<p>
|
This is an exported packaged deck created by Anki.<p>
|
||||||
|
|
||||||
To share this deck with other people, upload it to
|
To share this deck with other people, upload it to
|
||||||
<a href="http://anki.ichi2.net/file/upload">
|
<a href="http://ankiweb.net/file/upload">
|
||||||
http://anki.ichi2.net/file/upload</a>, or email
|
http://ankiweb.net/file/upload</a>, or email
|
||||||
it to your friends.
|
it to your friends.
|
||||||
</body></html>''')
|
</body></html>''')
|
||||||
readme.close()
|
readme.close()
|
||||||
|
|
|
@ -16,8 +16,7 @@ class StudyOptions(QDialog):
|
||||||
self.load()
|
self.load()
|
||||||
self.connect(self.form.buttonBox,
|
self.connect(self.form.buttonBox,
|
||||||
SIGNAL("helpRequested()"),
|
SIGNAL("helpRequested()"),
|
||||||
lambda: QDesktopServices.openUrl(QUrl(
|
lambda: aqt.openHelp("StudyOptions"))
|
||||||
aqt.appWiki + "StudyOptions")))
|
|
||||||
self.exec_()
|
self.exec_()
|
||||||
|
|
||||||
def setup(self):
|
def setup(self):
|
||||||
|
|
|
@ -288,7 +288,7 @@ This deck already exists on your computer. Overwrite the local copy?"""),
|
||||||
vbox = QVBoxLayout()
|
vbox = QVBoxLayout()
|
||||||
l = QLabel(_(
|
l = QLabel(_(
|
||||||
'<h1>Online Account</h1>'
|
'<h1>Online Account</h1>'
|
||||||
'To use your free <a href="http://anki.ichi2.net/">online account</a>,<br>'
|
'To use your free <a href="http://ankiweb.net/">online account</a>,<br>'
|
||||||
"please enter your details below.<br><br>"
|
"please enter your details below.<br><br>"
|
||||||
"You can change your details later with<br>"
|
"You can change your details later with<br>"
|
||||||
"Settings->Preferences->Sync<br>"))
|
"Settings->Preferences->Sync<br>"))
|
||||||
|
|
|
@ -8,7 +8,7 @@ import anki, anki.utils, anki.lang, anki.stats
|
||||||
import aqt
|
import aqt
|
||||||
import simplejson, platform
|
import simplejson, platform
|
||||||
|
|
||||||
baseUrl = "http://anki.ichi2.net/update/"
|
baseUrl = "http://ankiweb.net/update/"
|
||||||
#baseUrl = "http://localhost:8001/update/"
|
#baseUrl = "http://localhost:8001/update/"
|
||||||
|
|
||||||
class LatestVersionFinder(QThread):
|
class LatestVersionFinder(QThread):
|
||||||
|
|
11
aqt/utils.py
11
aqt/utils.py
|
@ -11,9 +11,6 @@ from anki.utils import call
|
||||||
def openLink(link):
|
def openLink(link):
|
||||||
QDesktopServices.openUrl(QUrl(link))
|
QDesktopServices.openUrl(QUrl(link))
|
||||||
|
|
||||||
def openWikiLink(page):
|
|
||||||
openLink(aqt.appWiki + page)
|
|
||||||
|
|
||||||
def showWarning(text, parent=None, help=""):
|
def showWarning(text, parent=None, help=""):
|
||||||
"Show a small warning with an OK button."
|
"Show a small warning with an OK button."
|
||||||
return showInfo(text, parent, help, QMessageBox.warning)
|
return showInfo(text, parent, help, QMessageBox.warning)
|
||||||
|
@ -34,7 +31,7 @@ def showInfo(text, parent=None, help="", func=None):
|
||||||
while 1:
|
while 1:
|
||||||
ret = func(parent, "Anki", text, sb)
|
ret = func(parent, "Anki", text, sb)
|
||||||
if ret == QMessageBox.Help:
|
if ret == QMessageBox.Help:
|
||||||
openWikiLink(help)
|
aqt.openHelp(help)
|
||||||
else:
|
else:
|
||||||
break
|
break
|
||||||
|
|
||||||
|
@ -74,7 +71,7 @@ def askUser(text, parent=None, help="", defaultno=False):
|
||||||
r = QMessageBox.question(parent, "Anki", text, sb,
|
r = QMessageBox.question(parent, "Anki", text, sb,
|
||||||
default)
|
default)
|
||||||
if r == QMessageBox.Help:
|
if r == QMessageBox.Help:
|
||||||
openWikiLink(help)
|
aqt.openHelp(help)
|
||||||
else:
|
else:
|
||||||
break
|
break
|
||||||
return r == QMessageBox.Yes
|
return r == QMessageBox.Yes
|
||||||
|
@ -105,7 +102,7 @@ class ButtonedDialog(QMessageBox):
|
||||||
but = self.clickedButton().text()
|
but = self.clickedButton().text()
|
||||||
if but == "Help":
|
if but == "Help":
|
||||||
# FIXME stop dialog closing?
|
# FIXME stop dialog closing?
|
||||||
openWikiLink(self.help)
|
aqt.openHelp(self.help)
|
||||||
return self.clickedButton().text()
|
return self.clickedButton().text()
|
||||||
|
|
||||||
def setDefault(self, idx):
|
def setDefault(self, idx):
|
||||||
|
@ -156,7 +153,7 @@ class GetTextDialog(QDialog):
|
||||||
return QDialog.reject(self)
|
return QDialog.reject(self)
|
||||||
|
|
||||||
def helpRequested(self):
|
def helpRequested(self):
|
||||||
QDesktopServices.openUrl(QUrl(aqt.appWiki + self.help))
|
aqt.openHelp(self.help)
|
||||||
|
|
||||||
def getText(prompt, parent=None, help=None, edit=None, default=u"", title="Anki"):
|
def getText(prompt, parent=None, help=None, edit=None, default=u"", title="Anki"):
|
||||||
if not parent:
|
if not parent:
|
||||||
|
|
|
@ -9,8 +9,8 @@
|
||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>383</width>
|
<width>404</width>
|
||||||
<height>452</height>
|
<height>540</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="windowTitle">
|
<property name="windowTitle">
|
||||||
|
@ -19,9 +19,6 @@
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||||
<item>
|
<item>
|
||||||
<widget class="QTabWidget" name="qtabwidget">
|
<widget class="QTabWidget" name="qtabwidget">
|
||||||
<property name="whatsThis">
|
|
||||||
<string><a href="http://ichi2.net/anki/wiki/DeckProperties#Synchronization">Help</a></string>
|
|
||||||
</property>
|
|
||||||
<property name="currentIndex">
|
<property name="currentIndex">
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
|
@ -183,20 +180,11 @@
|
||||||
<string>Advanced</string>
|
<string>Advanced</string>
|
||||||
</attribute>
|
</attribute>
|
||||||
<layout class="QVBoxLayout">
|
<layout class="QVBoxLayout">
|
||||||
<property name="spacing">
|
|
||||||
<number>6</number>
|
|
||||||
</property>
|
|
||||||
<property name="margin">
|
<property name="margin">
|
||||||
<number>6</number>
|
<number>6</number>
|
||||||
</property>
|
</property>
|
||||||
<item>
|
<item>
|
||||||
<layout class="QGridLayout">
|
<layout class="QGridLayout">
|
||||||
<property name="margin">
|
|
||||||
<number>0</number>
|
|
||||||
</property>
|
|
||||||
<property name="spacing">
|
|
||||||
<number>6</number>
|
|
||||||
</property>
|
|
||||||
<item row="6" column="2">
|
<item row="6" column="2">
|
||||||
<widget class="QLineEdit" name="easyMin">
|
<widget class="QLineEdit" name="easyMin">
|
||||||
<property name="sizePolicy">
|
<property name="sizePolicy">
|
||||||
|
|
|
@ -6,8 +6,8 @@
|
||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>365</width>
|
<width>397</width>
|
||||||
<height>440</height>
|
<height>444</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="windowTitle">
|
<property name="windowTitle">
|
||||||
|
@ -20,7 +20,7 @@
|
||||||
<enum>Qt::StrongFocus</enum>
|
<enum>Qt::StrongFocus</enum>
|
||||||
</property>
|
</property>
|
||||||
<property name="currentIndex">
|
<property name="currentIndex">
|
||||||
<number>0</number>
|
<number>1</number>
|
||||||
</property>
|
</property>
|
||||||
<widget class="QWidget" name="tab_1">
|
<widget class="QWidget" name="tab_1">
|
||||||
<attribute name="title">
|
<attribute name="title">
|
||||||
|
@ -173,31 +173,15 @@
|
||||||
<property name="spacing">
|
<property name="spacing">
|
||||||
<number>10</number>
|
<number>10</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="margin">
|
|
||||||
<number>0</number>
|
|
||||||
</property>
|
|
||||||
<item>
|
<item>
|
||||||
<layout class="QVBoxLayout">
|
<layout class="QVBoxLayout">
|
||||||
<property name="spacing">
|
|
||||||
<number>6</number>
|
|
||||||
</property>
|
|
||||||
<property name="margin">
|
|
||||||
<number>0</number>
|
|
||||||
</property>
|
|
||||||
<item>
|
<item>
|
||||||
<layout class="QGridLayout">
|
<layout class="QGridLayout"/>
|
||||||
<property name="margin">
|
|
||||||
<number>0</number>
|
|
||||||
</property>
|
|
||||||
<property name="spacing">
|
|
||||||
<number>6</number>
|
|
||||||
</property>
|
|
||||||
</layout>
|
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QLabel" name="label_16">
|
<widget class="QLabel" name="label_16">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string><b>Synchronisation</b><a href="http://anki.ichi2.net/"><br>Create a free account</a>.</string>
|
<string><b>Synchronisation</b><a href="http://ankiweb.net/"><br>Create a free account</a>.</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="wordWrap">
|
<property name="wordWrap">
|
||||||
<bool>true</bool>
|
<bool>true</bool>
|
||||||
|
@ -209,12 +193,6 @@
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<layout class="QGridLayout">
|
<layout class="QGridLayout">
|
||||||
<property name="margin">
|
|
||||||
<number>0</number>
|
|
||||||
</property>
|
|
||||||
<property name="spacing">
|
|
||||||
<number>6</number>
|
|
||||||
</property>
|
|
||||||
<item row="1" column="0">
|
<item row="1" column="0">
|
||||||
<widget class="QLabel" name="label_18">
|
<widget class="QLabel" name="label_18">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
|
|
Loading…
Reference in a new issue