Helpviewer/OpenSearch/OpenSearchManager.py

changeset 168
3383117f894b
parent 129
3bc474738bf3
child 464
a2b1d1770ef0
child 792
a13346916170
equal deleted inserted replaced
167:7508e44f4853 168:3383117f894b
40 """ 40 """
41 if parent is None: 41 if parent is None:
42 parent = e5App() 42 parent = e5App()
43 QObject.__init__(self, parent) 43 QObject.__init__(self, parent)
44 44
45 self.__replies = []
45 self.__engines = {} 46 self.__engines = {}
46 self.__keywords = {} 47 self.__keywords = {}
47 self.__current = "" 48 self.__current = ""
48 self.__loading = False 49 self.__loading = False
49 self.__saveTimer = AutoSaver(self, self.save) 50 self.__saveTimer = AutoSaver(self, self.save)
169 from Helpviewer.HelpWindow import HelpWindow 170 from Helpviewer.HelpWindow import HelpWindow
170 171
171 reply = HelpWindow.networkAccessManager().get(QNetworkRequest(url)) 172 reply = HelpWindow.networkAccessManager().get(QNetworkRequest(url))
172 self.connect(reply, SIGNAL("finished()"), self.__engineFromUrlAvailable) 173 self.connect(reply, SIGNAL("finished()"), self.__engineFromUrlAvailable)
173 reply.setParent(self) 174 reply.setParent(self)
175 self.__replies.append(reply)
174 176
175 return True 177 return True
176 178
177 def __addEngineByFile(self, filename): 179 def __addEngineByFile(self, filename):
178 """ 180 """
379 381
380 host = QUrl(engine.searchUrlTemplate()).host() 382 host = QUrl(engine.searchUrlTemplate()).host()
381 383
382 res = QMessageBox.question(None, 384 res = QMessageBox.question(None,
383 "", 385 "",
384 self.trUtf8("""Do you want to add the following engine to your list of""" 386 self.trUtf8("""<p>Do you want to add the following engine to your list of"""
385 """ search engines?<br/><br/>Name: {0}<br/>Searches on: {1}""")\ 387 """ search engines?<br/><br/>Name: {0}<br/>"""
388 """Searches on: {1}</p>""")\
386 .format(engine.name(), host), 389 .format(engine.name(), host),
387 QMessageBox.StandardButtons(\ 390 QMessageBox.StandardButtons(\
388 QMessageBox.No | \ 391 QMessageBox.No | \
389 QMessageBox.Yes), 392 QMessageBox.Yes),
390 QMessageBox.No) 393 QMessageBox.No)
398 if reply is None: 401 if reply is None:
399 return 402 return
400 403
401 if reply.error() != QNetworkReply.NoError: 404 if reply.error() != QNetworkReply.NoError:
402 reply.close() 405 reply.close()
403 reply.deleteLater() 406 if reply in self.__replies:
407 self.__replies.remove(reply)
404 return 408 return
405 409
406 reader = OpenSearchReader() 410 reader = OpenSearchReader()
407 engine = reader.read(reply) 411 engine = reader.read(reply)
408 412
409 reply.close() 413 reply.close()
410 reply.deleteLater() 414 if reply in self.__replies:
415 self.__replies.remove(reply)
411 416
412 if not engine.isValid(): 417 if not engine.isValid():
413 return 418 return
414 419
415 if self.engineExists(engine.name()): 420 if self.engineExists(engine.name()):

eric ide

mercurial