Helpviewer/GreaseMonkey/GreaseMonkeyDownloader.py

branch
Py2 comp.
changeset 3057
10516539f238
parent 2525
8b507a9a2d40
parent 3002
6ffc581f00f1
child 3058
0a02c433f52d
equal deleted inserted replaced
3056:9986ec0e559a 3057:10516539f238
30 def __init__(self, request, manager): 30 def __init__(self, request, manager):
31 """ 31 """
32 Constructor 32 Constructor
33 33
34 @param request reference to the request object (QNetworkRequest) 34 @param request reference to the request object (QNetworkRequest)
35 @param manager reference to the GreaseMonkey manager (GreaseMonkeyManager) 35 @param manager reference to the GreaseMonkey manager
36 (GreaseMonkeyManager)
36 """ 37 """
37 super(GreaseMonkeyDownloader, self).__init__() 38 super(GreaseMonkeyDownloader, self).__init__()
38 39
39 self.__manager = manager 40 self.__manager = manager
40 41
65 try: 66 try:
66 f = open(self.__fileName, "w", encoding="utf-8") 67 f = open(self.__fileName, "w", encoding="utf-8")
67 except (IOError, OSError) as err: 68 except (IOError, OSError) as err:
68 E5MessageBox.critical(None, 69 E5MessageBox.critical(None,
69 self.trUtf8("GreaseMonkey Download"), 70 self.trUtf8("GreaseMonkey Download"),
70 self.trUtf8("""<p>The file <b>{0}</b> could not be opened""" 71 self.trUtf8(
71 """ for writing.<br/>Reason: {1}</p>""").format( 72 """<p>The file <b>{0}</b> could not be opened"""
72 self.__fileName, str(err))) 73 """ for writing.<br/>Reason: {1}</p>""").format(
74 self.__fileName, str(err)))
73 self.finished.emit() 75 self.finished.emit()
74 return 76 return
75 f.write(response) 77 f.write(response)
76 f.close() 78 f.close()
77 79
78 settings = QSettings(os.path.join(self.__manager.requireScriptsDirectory(), 80 settings = QSettings(
79 "requires.ini"), 81 os.path.join(self.__manager.requireScriptsDirectory(),
80 QSettings.IniFormat) 82 "requires.ini"),
83 QSettings.IniFormat)
81 settings.beginGroup("Files") 84 settings.beginGroup("Files")
82 85
83 rx = QRegExp("@require(.*)\\n") 86 rx = QRegExp("@require(.*)\\n")
84 rx.setMinimal(True) 87 rx.setMinimal(True)
85 rx.indexIn(response) 88 rx.indexIn(response)
113 try: 116 try:
114 f = open(fileName, "w", encoding="utf-8") 117 f = open(fileName, "w", encoding="utf-8")
115 except (IOError, OSError) as err: 118 except (IOError, OSError) as err:
116 E5MessageBox.critical(None, 119 E5MessageBox.critical(None,
117 self.trUtf8("GreaseMonkey Download"), 120 self.trUtf8("GreaseMonkey Download"),
118 self.trUtf8("""<p>The file <b>{0}</b> could not be opened""" 121 self.trUtf8(
119 """ for writing.<br/>Reason: {1}</p>""").format( 122 """<p>The file <b>{0}</b> could not be opened"""
120 fileName, str(err))) 123 """ for writing.<br/>Reason: {1}</p>""").format(
124 fileName, str(err)))
121 self.finished.emit() 125 self.finished.emit()
122 return 126 return
123 f.write(response) 127 f.write(response)
124 f.close() 128 f.close()
125 129
126 settings = QSettings(os.path.join(self.__manager.requireScriptsDirectory(), 130 settings = QSettings(
127 "requires.ini"), 131 os.path.join(self.__manager.requireScriptsDirectory(),
128 QSettings.IniFormat) 132 "requires.ini"),
133 QSettings.IniFormat)
129 settings.beginGroup("Files") 134 settings.beginGroup("Files")
130 settings.setValue(self.__reply.originalUrl().toString(), fileName) 135 settings.setValue(self.__reply.originalUrl().toString(), fileName)
131 136
132 self.__reply.deleteLater() 137 self.__reply.deleteLater()
133 self.__reply = None 138 self.__reply = None
147 deleteScript = True 152 deleteScript = True
148 script = GreaseMonkeyScript(self.__manager, self.__fileName) 153 script = GreaseMonkeyScript(self.__manager, self.__fileName)
149 154
150 if script.isValid(): 155 if script.isValid():
151 if not self.__manager.containsScript(script.fullName()): 156 if not self.__manager.containsScript(script.fullName()):
152 from .GreaseMonkeyAddScriptDialog import GreaseMonkeyAddScriptDialog 157 from .GreaseMonkeyAddScriptDialog import \
158 GreaseMonkeyAddScriptDialog
153 dlg = GreaseMonkeyAddScriptDialog(self.__manager, script) 159 dlg = GreaseMonkeyAddScriptDialog(self.__manager, script)
154 deleteScript = dlg.exec_() != QDialog.Accepted 160 deleteScript = dlg.exec_() != QDialog.Accepted
155 else: 161 else:
156 E5MessageBox.information(None, 162 E5MessageBox.information(None,
157 self.trUtf8("GreaseMonkey Download"), 163 self.trUtf8("GreaseMonkey Download"),
158 self.trUtf8("""<p><b>{0}</b> is already installed.</p>""") 164 self.trUtf8(
165 """<p><b>{0}</b> is already installed.</p>""")
159 .format(script.name())) 166 .format(script.name()))
160 167
161 if deleteScript: 168 if deleteScript:
162 try: 169 try:
163 os.remove(self.__fileName) 170 os.remove(self.__fileName)

eric ide

mercurial