Helpviewer/Download/DownloadItem.py

changeset 3190
a9a94491c4fd
parent 3160
209a07d7e401
child 3345
071afe8be2a1
equal deleted inserted replaced
3189:9a21c547de5f 3190:a9a94491c4fd
183 if dlg.exec_() == QDialog.Rejected or dlg.getAction() == "cancel": 183 if dlg.exec_() == QDialog.Rejected or dlg.getAction() == "cancel":
184 self.progressBar.setVisible(False) 184 self.progressBar.setVisible(False)
185 self.__reply.close() 185 self.__reply.close()
186 self.on_stopButton_clicked() 186 self.on_stopButton_clicked()
187 self.filenameLabel.setText( 187 self.filenameLabel.setText(
188 self.trUtf8("Download canceled: {0}").format( 188 self.tr("Download canceled: {0}").format(
189 QFileInfo(defaultFileName).fileName())) 189 QFileInfo(defaultFileName).fileName()))
190 self.__canceledFileSelect = True 190 self.__canceledFileSelect = True
191 return 191 return
192 192
193 if dlg.getAction() == "scan": 193 if dlg.getAction() == "scan":
195 195
196 self.progressBar.setVisible(False) 196 self.progressBar.setVisible(False)
197 self.__reply.close() 197 self.__reply.close()
198 self.on_stopButton_clicked() 198 self.on_stopButton_clicked()
199 self.filenameLabel.setText( 199 self.filenameLabel.setText(
200 self.trUtf8("VirusTotal scan scheduled: {0}").format( 200 self.tr("VirusTotal scan scheduled: {0}").format(
201 QFileInfo(defaultFileName).fileName())) 201 QFileInfo(defaultFileName).fileName()))
202 self.__canceledFileSelect = True 202 self.__canceledFileSelect = True
203 return 203 return
204 204
205 self.__autoOpen = dlg.getAction() == "open" 205 self.__autoOpen = dlg.getAction() == "open"
209 209
210 if ask and not self.__autoOpen and self.__requestFilename: 210 if ask and not self.__autoOpen and self.__requestFilename:
211 self.__gettingFileName = True 211 self.__gettingFileName = True
212 fileName = E5FileDialog.getSaveFileName( 212 fileName = E5FileDialog.getSaveFileName(
213 None, 213 None,
214 self.trUtf8("Save File"), 214 self.tr("Save File"),
215 defaultFileName, 215 defaultFileName,
216 "") 216 "")
217 self.__gettingFileName = False 217 self.__gettingFileName = False
218 if not fileName: 218 if not fileName:
219 self.progressBar.setVisible(False) 219 self.progressBar.setVisible(False)
220 self.__reply.close() 220 self.__reply.close()
221 self.on_stopButton_clicked() 221 self.on_stopButton_clicked()
222 self.filenameLabel.setText( 222 self.filenameLabel.setText(
223 self.trUtf8("Download canceled: {0}") 223 self.tr("Download canceled: {0}")
224 .format(QFileInfo(defaultFileName).fileName())) 224 .format(QFileInfo(defaultFileName).fileName()))
225 self.__canceledFileSelect = True 225 self.__canceledFileSelect = True
226 return 226 return
227 227
228 fileInfo = QFileInfo(fileName) 228 fileInfo = QFileInfo(fileName)
237 saveDirPath = QFileInfo(self.__fileName).dir() 237 saveDirPath = QFileInfo(self.__fileName).dir()
238 if not saveDirPath.exists(): 238 if not saveDirPath.exists():
239 if not saveDirPath.mkpath(saveDirPath.absolutePath()): 239 if not saveDirPath.mkpath(saveDirPath.absolutePath()):
240 self.progressBar.setVisible(False) 240 self.progressBar.setVisible(False)
241 self.on_stopButton_clicked() 241 self.on_stopButton_clicked()
242 self.infoLabel.setText(self.trUtf8( 242 self.infoLabel.setText(self.tr(
243 "Download directory ({0}) couldn't be created.") 243 "Download directory ({0}) couldn't be created.")
244 .format(saveDirPath.absolutePath())) 244 .format(saveDirPath.absolutePath()))
245 return 245 return
246 246
247 self.filenameLabel.setText(QFileInfo(self.__fileName).fileName()) 247 self.filenameLabel.setText(QFileInfo(self.__fileName).fileName())
415 # in case someone else has already put a file there 415 # in case someone else has already put a file there
416 if not self.__requestFilename: 416 if not self.__requestFilename:
417 self.__getFileName() 417 self.__getFileName()
418 if not self.__output.open(QIODevice.WriteOnly): 418 if not self.__output.open(QIODevice.WriteOnly):
419 self.infoLabel.setText( 419 self.infoLabel.setText(
420 self.trUtf8("Error opening save file: {0}") 420 self.tr("Error opening save file: {0}")
421 .format(self.__output.errorString())) 421 .format(self.__output.errorString()))
422 self.on_stopButton_clicked() 422 self.on_stopButton_clicked()
423 self.statusChanged.emit() 423 self.statusChanged.emit()
424 return 424 return
425 self.statusChanged.emit() 425 self.statusChanged.emit()
427 buffer = self.__reply.readAll() 427 buffer = self.__reply.readAll()
428 self.__sha1Hash.addData(buffer) 428 self.__sha1Hash.addData(buffer)
429 self.__md5Hash.addData(buffer) 429 self.__md5Hash.addData(buffer)
430 bytesWritten = self.__output.write(buffer) 430 bytesWritten = self.__output.write(buffer)
431 if bytesWritten == -1: 431 if bytesWritten == -1:
432 self.infoLabel.setText(self.trUtf8("Error saving: {0}") 432 self.infoLabel.setText(self.tr("Error saving: {0}")
433 .format(self.__output.errorString())) 433 .format(self.__output.errorString()))
434 self.on_stopButton_clicked() 434 self.on_stopButton_clicked()
435 else: 435 else:
436 self.__startedSaving = True 436 self.__startedSaving = True
437 if self.__finishedDownloading: 437 if self.__finishedDownloading:
439 439
440 def __networkError(self): 440 def __networkError(self):
441 """ 441 """
442 Private slot to handle a network error. 442 Private slot to handle a network error.
443 """ 443 """
444 self.infoLabel.setText(self.trUtf8("Network Error: {0}") 444 self.infoLabel.setText(self.tr("Network Error: {0}")
445 .format(self.__reply.errorString())) 445 .format(self.__reply.errorString()))
446 self.tryAgainButton.setEnabled(True) 446 self.tryAgainButton.setEnabled(True)
447 self.tryAgainButton.setVisible(True) 447 self.tryAgainButton.setVisible(True)
448 self.downloadFinished.emit() 448 self.downloadFinished.emit()
449 449
550 remaining = "" 550 remaining = ""
551 551
552 if bytesTotal > 0: 552 if bytesTotal > 0:
553 remaining = timeString(timeRemaining) 553 remaining = timeString(timeRemaining)
554 554
555 info = self.trUtf8("{0} of {1} ({2}/sec)\n{3}")\ 555 info = self.tr("{0} of {1} ({2}/sec)\n{3}")\
556 .format( 556 .format(
557 dataString(self.__bytesReceived), 557 dataString(self.__bytesReceived),
558 bytesTotal == -1 and self.trUtf8("?") 558 bytesTotal == -1 and self.tr("?")
559 or dataString(bytesTotal), 559 or dataString(bytesTotal),
560 dataString(int(speed)), 560 dataString(int(speed)),
561 remaining) 561 remaining)
562 else: 562 else:
563 if self.__bytesReceived == bytesTotal or bytesTotal == -1: 563 if self.__bytesReceived == bytesTotal or bytesTotal == -1:
564 info = self.trUtf8("{0} downloaded\nSHA1: {1}\nMD5: {2}")\ 564 info = self.tr("{0} downloaded\nSHA1: {1}\nMD5: {2}")\
565 .format(dataString(self.__output.size()), 565 .format(dataString(self.__output.size()),
566 str(self.__sha1Hash.result().toHex(), 566 str(self.__sha1Hash.result().toHex(),
567 encoding="ascii"), 567 encoding="ascii"),
568 str(self.__md5Hash.result().toHex(), 568 str(self.__md5Hash.result().toHex(),
569 encoding="ascii") 569 encoding="ascii")
570 ) 570 )
571 else: 571 else:
572 info = self.trUtf8("{0} of {1} - Stopped")\ 572 info = self.tr("{0} of {1} - Stopped")\
573 .format(dataString(self.__bytesReceived), 573 .format(dataString(self.__bytesReceived),
574 dataString(bytesTotal)) 574 dataString(bytesTotal))
575 self.infoLabel.setText(info) 575 self.infoLabel.setText(info)
576 576
577 def downloading(self): 577 def downloading(self):

eric ide

mercurial