Skip to content

Commit 2d09d13

Browse files
committed
Add check update to FastWQ menu
1 parent 6ee8915 commit 2d09d13

File tree

10 files changed

+28
-12
lines changed

10 files changed

+28
-12
lines changed

addons/fastwq/__init__.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,11 @@ def _show_options():
106106
if b:
107107
menu.addSeparator()
108108

109+
# check update
110+
action = QAction(_('CHECK_UPDATE'), browser)
111+
action.triggered.connect(lambda: check_updates(background=False, parent=browser))
112+
menu.addAction(action)
113+
109114
# About
110115
action = QAction(_('ABOUT'), browser)
111116
action.triggered.connect(lambda: show_about_dialog(browser))

addons/fastwq/gui/common.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,10 +34,11 @@
3434
__all__ = ['show_options', 'check_updates', 'show_fm_dialog', 'show_about_dialog']
3535

3636

37-
def check_updates(background=False):
37+
def check_updates(background=False, parent=None):
3838
'''check add-on last version'''
3939
try:
40-
state = ankihub.update([Endpoint.check_version], Endpoint.version, background)
40+
parent = mw if parent is None else parent
41+
state = ankihub.update([Endpoint.check_version], Endpoint.version, background, parent)
4142
if not background:
4243
if state == 0:
4344
showInfo(_('LATEST_VERSION'))

addons/fastwq/gui/options.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@ def show_paras(self):
192192
def check_updates(self):
193193
'''check addon version'''
194194
from .common import check_updates
195-
check_updates()
195+
check_updates(parent=self)
196196

197197
def show_fm_dialog(self):
198198
'''open folder manager dialog'''

addons/fastwq/lang.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@
5959
['NEW_VERSION', u'检查到新版本:', u'New version available:'],
6060
['UPDATE', u'更新', u'Update'],
6161
['AUTO_UPDATE', u'自动检测新版本', u'Auto check new version'],
62+
['CHECK_UPDATE', u'检测更新', u'Check Update'],
6263
['IGNORE_MDX_WORDCASE', u'忽略本地词典单词大小写', u'Ignore MDX dictionary word case'],
6364
['FORCE_UPDATE', u'强制更新字段', u'Forced Updates of all fields'],
6465
['IGNORE_ACCENTS', u'忽略声调', u'Ignore Accents'],

addons/fastwq/libs/ankihub.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -159,10 +159,11 @@ def callback(appendHtml, onReady):
159159
return callback
160160

161161

162-
def update(add=[], VERSION='v0.0.0', background=False):
162+
def update(add=[], VERSION='v0.0.0', background=False, parent=None):
163+
parent = parent if parent else mw
163164
# progress win
164165
if not background:
165-
progresswin = QProgressDialog('Update Checking...', '', 0, 0, mw)
166+
progresswin = QProgressDialog('Update Checking...', '', 0, 0, parent)
166167
progresswin.setWindowModality(Qt.ApplicationModal)
167168
progresswin.setCancelButton(None)
168169
progresswin.setWindowFlags(
@@ -264,7 +265,7 @@ def update(add=[], VERSION='v0.0.0', background=False):
264265
if progresswin:
265266
progresswin.hide()
266267
progresswin.destroy()
267-
dialog = DialogUpdates(None, data, repository, updateSingle(repositories, path, data))
268+
dialog = DialogUpdates(parent, data, repository, updateSingle(repositories, path, data))
268269
dialog.exec_()
269270
dialog.destroy()
270271
else:

addons21/fastwq/common.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,11 @@ def _show_options():
106106
if b:
107107
menu.addSeparator()
108108

109+
# check update
110+
action = QAction(_('CHECK_UPDATE'), browser)
111+
action.triggered.connect(lambda: check_updates(background=False, parent=browser))
112+
menu.addAction(action)
113+
109114
# About
110115
action = QAction(_('ABOUT'), browser)
111116
action.triggered.connect(lambda: show_about_dialog(browser))

addons21/fastwq/gui/common.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,10 +34,11 @@
3434
__all__ = ['show_options', 'check_updates', 'show_fm_dialog', 'show_about_dialog']
3535

3636

37-
def check_updates(background=False):
37+
def check_updates(background=False, parent=None):
3838
'''check add-on last version'''
3939
try:
40-
state = ankihub.update([Endpoint.check_version], Endpoint.version, background)
40+
parent = mw if parent is None else parent
41+
state = ankihub.update([Endpoint.check_version], Endpoint.version, background, parent)
4142
if not background:
4243
if state == 0:
4344
showInfo(_('LATEST_VERSION'))

addons21/fastwq/gui/options.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@ def show_paras(self):
192192
def check_updates(self):
193193
'''check addon version'''
194194
from .common import check_updates
195-
check_updates()
195+
check_updates(parent=self)
196196

197197
def show_fm_dialog(self):
198198
'''open folder manager dialog'''

addons21/fastwq/lang.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@
5959
['NEW_VERSION', u'检查到新版本:', u'New version available:'],
6060
['UPDATE', u'更新', u'Update'],
6161
['AUTO_UPDATE', u'自动检测新版本', u'Auto check new version'],
62+
['CHECK_UPDATE', u'检测更新', u'Check Update'],
6263
['IGNORE_MDX_WORDCASE', u'忽略本地词典单词大小写', u'Ignore MDX dictionary word case'],
6364
['FORCE_UPDATE', u'强制更新字段', u'Forced Updates of all fields'],
6465
['IGNORE_ACCENTS', u'忽略声调', u'Ignore Accents'],

addons21/fastwq/libs/ankihub.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -160,10 +160,11 @@ def callback(appendHtml, onReady):
160160
return callback
161161

162162

163-
def update(add=[], VERSION='v0.0.0', background=False):
163+
def update(add=[], VERSION='v0.0.0', background=False, parent=None):
164+
parent = parent if parent else mw
164165
# progress win
165166
if not background:
166-
progresswin = QProgressDialog('Update Checking...', '', 0, 0, mw)
167+
progresswin = QProgressDialog('Update Checking...', '', 0, 0, parent)
167168
progresswin.setWindowModality(Qt.ApplicationModal)
168169
progresswin.setCancelButton(None)
169170
progresswin.setWindowFlags(
@@ -265,7 +266,7 @@ def update(add=[], VERSION='v0.0.0', background=False):
265266
if progresswin:
266267
progresswin.hide()
267268
progresswin.destroy()
268-
dialog = DialogUpdates(None, data, repository, updateSingle(repositories, path, data))
269+
dialog = DialogUpdates(parent, data, repository, updateSingle(repositories, path, data))
269270
dialog.exec_()
270271
dialog.destroy()
271272
else:

0 commit comments

Comments
 (0)