display weboob-config-qt at launch on Qt applications when there are no configured backends
This commit is contained in:
parent
31445de767
commit
f0ea8829a2
5 changed files with 24 additions and 3 deletions
|
|
@ -39,9 +39,13 @@ class MainWindow(QtMainWindow):
|
||||||
self.connect(self.ui.actionBackends, SIGNAL("triggered()"), self.backendsConfig)
|
self.connect(self.ui.actionBackends, SIGNAL("triggered()"), self.backendsConfig)
|
||||||
self.connect(self.ui.actionRefresh, SIGNAL("triggered()"), self.refresh)
|
self.connect(self.ui.actionRefresh, SIGNAL("triggered()"), self.refresh)
|
||||||
|
|
||||||
|
if self.weboob.count_backends() == 0:
|
||||||
|
self.backendsConfig()
|
||||||
|
|
||||||
def backendsConfig(self):
|
def backendsConfig(self):
|
||||||
bckndcfg = BackendCfg(self.weboob, (ICapMessages,), self)
|
bckndcfg = BackendCfg(self.weboob, (ICapMessages,), self)
|
||||||
bckndcfg.show()
|
if bckndcfg.run():
|
||||||
|
self.refresh()
|
||||||
|
|
||||||
def refresh(self):
|
def refresh(self):
|
||||||
self.centralWidget().refresh()
|
self.centralWidget().refresh()
|
||||||
|
|
|
||||||
|
|
@ -53,6 +53,9 @@ class MainWindow(QtMainWindow):
|
||||||
self.ui.tabWidget.addTab(QWidget(), self.tr('Calendar'))
|
self.ui.tabWidget.addTab(QWidget(), self.tr('Calendar'))
|
||||||
self.ui.tabWidget.addTab(QWidget(), self.tr('Optimizations'))
|
self.ui.tabWidget.addTab(QWidget(), self.tr('Optimizations'))
|
||||||
|
|
||||||
|
if self.weboob.count_backends() == 0:
|
||||||
|
self.backendsConfig()
|
||||||
|
|
||||||
def backendsConfig(self):
|
def backendsConfig(self):
|
||||||
bckndcfg = BackendCfg(self.weboob, (ICapDating,), self)
|
bckndcfg = BackendCfg(self.weboob, (ICapDating,), self)
|
||||||
if bckndcfg.run():
|
if bckndcfg.run():
|
||||||
|
|
|
||||||
|
|
@ -50,6 +50,9 @@ class MainWindow(QtMainWindow):
|
||||||
|
|
||||||
self.loadBackendsList()
|
self.loadBackendsList()
|
||||||
|
|
||||||
|
if self.ui.backendEdit.count() == 0:
|
||||||
|
self.backendsConfig()
|
||||||
|
|
||||||
def backendsConfig(self):
|
def backendsConfig(self):
|
||||||
bckndcfg = BackendCfg(self.weboob, (ICapVideo,), self)
|
bckndcfg = BackendCfg(self.weboob, (ICapVideo,), self)
|
||||||
if bckndcfg.run():
|
if bckndcfg.run():
|
||||||
|
|
@ -57,12 +60,20 @@ class MainWindow(QtMainWindow):
|
||||||
|
|
||||||
def loadBackendsList(self):
|
def loadBackendsList(self):
|
||||||
self.ui.backendEdit.clear()
|
self.ui.backendEdit.clear()
|
||||||
self.ui.backendEdit.addItem('All backends', '')
|
|
||||||
for i, backend in enumerate(self.weboob.iter_backends()):
|
for i, backend in enumerate(self.weboob.iter_backends()):
|
||||||
|
if i == 0:
|
||||||
|
self.ui.backendEdit.addItem('All backends', '')
|
||||||
self.ui.backendEdit.addItem(backend.name, backend.name)
|
self.ui.backendEdit.addItem(backend.name, backend.name)
|
||||||
if backend.name == self.config.get('settings', 'backend'):
|
if backend.name == self.config.get('settings', 'backend'):
|
||||||
self.ui.backendEdit.setCurrentIndex(i+1)
|
self.ui.backendEdit.setCurrentIndex(i+1)
|
||||||
|
|
||||||
|
if self.ui.backendEdit.count() == 0:
|
||||||
|
self.ui.searchEdit.setEnabled(False)
|
||||||
|
self.ui.urlEdit.setEnabled(False)
|
||||||
|
else:
|
||||||
|
self.ui.searchEdit.setEnabled(True)
|
||||||
|
self.ui.urlEdit.setEnabled(True)
|
||||||
|
|
||||||
def nsfwChanged(self, state):
|
def nsfwChanged(self, state):
|
||||||
self.config.set('settings', 'nsfw', int(self.ui.nsfwCheckBox.isChecked()))
|
self.config.set('settings', 'nsfw', int(self.ui.nsfwCheckBox.isChecked()))
|
||||||
self.updateVideosDisplay()
|
self.updateVideosDisplay()
|
||||||
|
|
|
||||||
|
|
@ -109,6 +109,9 @@ class Weboob(object):
|
||||||
def get_backend(self, name):
|
def get_backend(self, name):
|
||||||
return self.backend_instances[name]
|
return self.backend_instances[name]
|
||||||
|
|
||||||
|
def count_backends(self):
|
||||||
|
return len(self.backend_instances)
|
||||||
|
|
||||||
def iter_backends(self, caps=None):
|
def iter_backends(self, caps=None):
|
||||||
"""
|
"""
|
||||||
Iter on each backends.
|
Iter on each backends.
|
||||||
|
|
|
||||||
|
|
@ -280,7 +280,7 @@ class BackendCfg(QDialog):
|
||||||
backend.version,
|
backend.version,
|
||||||
backend.maintainer.replace('&', '&').replace('<', '<').replace('>', '>'),
|
backend.maintainer.replace('&', '&').replace('<', '<').replace('>', '>'),
|
||||||
backend.license,
|
backend.license,
|
||||||
('<b>Website</b>: %s<br />' % backend.website) if backend.website else '',
|
(unicode(self.tr('<b>Website</b>: %s<br />')) % backend.website) if backend.website else '',
|
||||||
backend.description,
|
backend.description,
|
||||||
', '.join([cap.__name__ for cap in backend.iter_caps()])))
|
', '.join([cap.__name__ for cap in backend.iter_caps()])))
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue