Project/ProjectFormsBrowser.py

branch
Py2 comp.
changeset 3058
0a02c433f52d
parent 3057
10516539f238
parent 3030
4a0a82ddd9d2
child 3060
5883ce99ee12
equal deleted inserted replaced
3057:10516539f238 3058:0a02c433f52d
81 """ context menu.</p>""" 81 """ context menu.</p>"""
82 )) 82 ))
83 83
84 # templates for Qt4 84 # templates for Qt4
85 # these two lists have to stay in sync 85 # these two lists have to stay in sync
86 self.templates4 = ['dialog4.tmpl', 'widget4.tmpl', 'mainwindow4.tmpl', 86 self.templates4 = [
87 'dialog4.tmpl', 'widget4.tmpl', 'mainwindow4.tmpl',
87 'dialogbuttonboxbottom4.tmpl', 'dialogbuttonboxright4.tmpl', 88 'dialogbuttonboxbottom4.tmpl', 'dialogbuttonboxright4.tmpl',
88 'dialogbuttonsbottom4.tmpl', 'dialogbuttonsbottomcenter4.tmpl', 89 'dialogbuttonsbottom4.tmpl', 'dialogbuttonsbottomcenter4.tmpl',
89 'dialogbuttonsright4.tmpl', '', 'wizard4.tmpl', 'wizardpage4.tmpl', 90 'dialogbuttonsright4.tmpl', '', 'wizard4.tmpl', 'wizardpage4.tmpl',
90 'qdockwidget4.tmpl', 'qframe4.tmpl', 'qgroupbox4.tmpl', 91 'qdockwidget4.tmpl', 'qframe4.tmpl', 'qgroupbox4.tmpl',
91 'qscrollarea4.tmpl', 'qmdiarea4.tmpl', 'qtabwidget4.tmpl', 92 'qscrollarea4.tmpl', 'qmdiarea4.tmpl', 'qtabwidget4.tmpl',
92 'qtoolbox4.tmpl', 'qstackedwidget4.tmpl'] 93 'qtoolbox4.tmpl', 'qstackedwidget4.tmpl'
94 ]
93 self.templateTypes4 = [ 95 self.templateTypes4 = [
94 self.trUtf8("Dialog"), 96 self.trUtf8("Dialog"),
95 self.trUtf8("Widget"), 97 self.trUtf8("Widget"),
96 self.trUtf8("Main Window"), 98 self.trUtf8("Main Window"),
97 self.trUtf8("Dialog with Buttonbox (Bottom)"), 99 self.trUtf8("Dialog with Buttonbox (Bottom)"),
128 self.menu = QMenu(self) 130 self.menu = QMenu(self)
129 if self.project.getProjectType() in \ 131 if self.project.getProjectType() in \
130 ["Qt4", "PyQt5", "E4Plugin", "PySide"]: 132 ["Qt4", "PyQt5", "E4Plugin", "PySide"]:
131 self.menu.addAction( 133 self.menu.addAction(
132 self.trUtf8('Compile form'), self.__compileForm) 134 self.trUtf8('Compile form'), self.__compileForm)
133 self.menu.addAction(self.trUtf8('Compile all forms'), 135 self.menu.addAction(
136 self.trUtf8('Compile all forms'),
134 self.__compileAllForms) 137 self.__compileAllForms)
135 self.menu.addAction(self.trUtf8('Generate Dialog Code...'), 138 self.menu.addAction(
139 self.trUtf8('Generate Dialog Code...'),
136 self.__generateDialogCode) 140 self.__generateDialogCode)
137 self.menu.addSeparator() 141 self.menu.addSeparator()
138 self.menu.addAction( 142 self.menu.addAction(
139 self.trUtf8('Open in Qt-Designer'), self.__openFile) 143 self.trUtf8('Open in Qt-Designer'), self.__openFile)
140 self.menu.addAction( 144 self.menu.addAction(
144 self.menu.addAction( 148 self.menu.addAction(
145 self.trUtf8('Preview translations'), self.__TRPreview) 149 self.trUtf8('Preview translations'), self.__TRPreview)
146 else: 150 else:
147 if self.hooks["compileForm"] is not None: 151 if self.hooks["compileForm"] is not None:
148 self.menu.addAction( 152 self.menu.addAction(
149 self.hooksMenuEntries.get("compileForm", 153 self.hooksMenuEntries.get(
154 "compileForm",
150 self.trUtf8('Compile form')), self.__compileForm) 155 self.trUtf8('Compile form')), self.__compileForm)
151 if self.hooks["compileAllForms"] is not None: 156 if self.hooks["compileAllForms"] is not None:
152 self.menu.addAction( 157 self.menu.addAction(
153 self.hooksMenuEntries.get("compileAllForms", 158 self.hooksMenuEntries.get(
159 "compileAllForms",
154 self.trUtf8('Compile all forms')), 160 self.trUtf8('Compile all forms')),
155 self.__compileAllForms) 161 self.__compileAllForms)
156 if self.hooks["generateDialogCode"] is not None: 162 if self.hooks["generateDialogCode"] is not None:
157 self.menu.addAction( 163 self.menu.addAction(
158 self.hooksMenuEntries.get("generateDialogCode", 164 self.hooksMenuEntries.get(
165 "generateDialogCode",
159 self.trUtf8('Generate Dialog Code...')), 166 self.trUtf8('Generate Dialog Code...')),
160 self.__generateDialogCode) 167 self.__generateDialogCode)
161 if self.hooks["compileForm"] is not None or \ 168 if self.hooks["compileForm"] is not None or \
162 self.hooks["compileAllForms"] is not None or \ 169 self.hooks["compileAllForms"] is not None or \
163 self.hooks["generateDialogCode"] is not None: 170 self.hooks["generateDialogCode"] is not None:
180 ["Qt4", "PyQt5", "E4Plugin", "PySide"]: 187 ["Qt4", "PyQt5", "E4Plugin", "PySide"]:
181 self.menu.addAction(self.trUtf8('New form...'), self.__newForm) 188 self.menu.addAction(self.trUtf8('New form...'), self.__newForm)
182 else: 189 else:
183 if self.hooks["newForm"] is not None: 190 if self.hooks["newForm"] is not None:
184 self.menu.addAction( 191 self.menu.addAction(
185 self.hooksMenuEntries.get("newForm", 192 self.hooksMenuEntries.get(
186 self.trUtf8('New form...')), self.__newForm) 193 "newForm", self.trUtf8('New form...')), self.__newForm)
187 self.menu.addAction(self.trUtf8('Add forms...'), self.__addFormFiles) 194 self.menu.addAction(self.trUtf8('Add forms...'), self.__addFormFiles)
188 self.menu.addAction(self.trUtf8('Add forms directory...'), 195 self.menu.addAction(
189 self.__addFormsDirectory) 196 self.trUtf8('Add forms directory...'), self.__addFormsDirectory)
190 self.menu.addSeparator() 197 self.menu.addSeparator()
191 self.menu.addAction(self.trUtf8('Copy Path to Clipboard'), 198 self.menu.addAction(
192 self._copyToClipboard) 199 self.trUtf8('Copy Path to Clipboard'), self._copyToClipboard)
193 self.menu.addSeparator() 200 self.menu.addSeparator()
194 self.menu.addAction(self.trUtf8('Expand all directories'), 201 self.menu.addAction(
195 self._expandAllDirs) 202 self.trUtf8('Expand all directories'), self._expandAllDirs)
196 self.menu.addAction(self.trUtf8('Collapse all directories'), 203 self.menu.addAction(
197 self._collapseAllDirs) 204 self.trUtf8('Collapse all directories'), self._collapseAllDirs)
198 self.menu.addSeparator() 205 self.menu.addSeparator()
199 self.menu.addAction(self.trUtf8('Configure...'), self._configure) 206 self.menu.addAction(self.trUtf8('Configure...'), self._configure)
200 207
201 self.backMenu = QMenu(self) 208 self.backMenu = QMenu(self)
202 if self.project.getProjectType() in \ 209 if self.project.getProjectType() in \
203 ["Qt4", "PyQt5", "E4Plugin", "PySide"] or \ 210 ["Qt4", "PyQt5", "E4Plugin", "PySide"] or \
204 self.hooks["compileAllForms"] is not None: 211 self.hooks["compileAllForms"] is not None:
205 self.backMenu.addAction(self.trUtf8('Compile all forms'), 212 self.backMenu.addAction(
206 self.__compileAllForms) 213 self.trUtf8('Compile all forms'), self.__compileAllForms)
207 self.backMenu.addSeparator() 214 self.backMenu.addSeparator()
208 self.backMenu.addAction(self.trUtf8('New form...'), self.__newForm) 215 self.backMenu.addAction(self.trUtf8('New form...'), self.__newForm)
209 else: 216 else:
210 if self.hooks["newForm"] is not None: 217 if self.hooks["newForm"] is not None:
211 self.backMenu.addAction( 218 self.backMenu.addAction(
212 self.hooksMenuEntries.get("newForm", 219 self.hooksMenuEntries.get(
213 self.trUtf8('New form...')), self.__newForm) 220 "newForm", self.trUtf8('New form...')), self.__newForm)
214 self.backMenu.addAction( 221 self.backMenu.addAction(
215 self.trUtf8('Add forms...'), self.project.addUiFiles) 222 self.trUtf8('Add forms...'), self.project.addUiFiles)
216 self.backMenu.addAction(self.trUtf8('Add forms directory...'), 223 self.backMenu.addAction(
217 self.project.addUiDir) 224 self.trUtf8('Add forms directory...'), self.project.addUiDir)
218 self.backMenu.addSeparator() 225 self.backMenu.addSeparator()
219 self.backMenu.addAction(self.trUtf8('Expand all directories'), 226 self.backMenu.addAction(
220 self._expandAllDirs) 227 self.trUtf8('Expand all directories'), self._expandAllDirs)
221 self.backMenu.addAction(self.trUtf8('Collapse all directories'), 228 self.backMenu.addAction(
222 self._collapseAllDirs) 229 self.trUtf8('Collapse all directories'), self._collapseAllDirs)
223 self.backMenu.addSeparator() 230 self.backMenu.addSeparator()
224 self.backMenu.addAction(self.trUtf8('Configure...'), self._configure) 231 self.backMenu.addAction(self.trUtf8('Configure...'), self._configure)
225 self.backMenu.setEnabled(False) 232 self.backMenu.setEnabled(False)
226 233
227 # create the menu for multiple selected files 234 # create the menu for multiple selected files
228 self.multiMenu = QMenu(self) 235 self.multiMenu = QMenu(self)
229 if self.project.getProjectType() in \ 236 if self.project.getProjectType() in \
230 ["Qt4", "PyQt5", "E4Plugin", "PySide"]: 237 ["Qt4", "PyQt5", "E4Plugin", "PySide"]:
231 act = self.multiMenu.addAction(self.trUtf8('Compile forms'), 238 act = self.multiMenu.addAction(
232 self.__compileSelectedForms) 239 self.trUtf8('Compile forms'), self.__compileSelectedForms)
233 self.multiMenu.addSeparator() 240 self.multiMenu.addSeparator()
234 self.multiMenu.addAction(self.trUtf8('Open in Qt-Designer'), 241 self.multiMenu.addAction(
235 self.__openFile) 242 self.trUtf8('Open in Qt-Designer'), self.__openFile)
236 self.multiMenu.addAction(self.trUtf8('Open in Editor'), 243 self.multiMenu.addAction(
237 self.__openFileInEditor) 244 self.trUtf8('Open in Editor'), self.__openFileInEditor)
238 self.multiMenu.addSeparator() 245 self.multiMenu.addSeparator()
239 self.multiMenu.addAction(self.trUtf8('Preview translations'), 246 self.multiMenu.addAction(
240 self.__TRPreview) 247 self.trUtf8('Preview translations'), self.__TRPreview)
241 else: 248 else:
242 if self.hooks["compileSelectedForms"] is not None: 249 if self.hooks["compileSelectedForms"] is not None:
243 act = self.multiMenu.addAction( 250 act = self.multiMenu.addAction(
244 self.hooksMenuEntries.get("compileSelectedForms", 251 self.hooksMenuEntries.get(
252 "compileSelectedForms",
245 self.trUtf8('Compile forms')), 253 self.trUtf8('Compile forms')),
246 self.__compileSelectedForms) 254 self.__compileSelectedForms)
247 self.multiMenu.addSeparator() 255 self.multiMenu.addSeparator()
248 if self.hooks["open"] is not None: 256 if self.hooks["open"] is not None:
249 self.multiMenu.addAction( 257 self.multiMenu.addAction(
250 self.hooksMenuEntries.get("open", self.trUtf8('Open')), 258 self.hooksMenuEntries.get("open", self.trUtf8('Open')),
251 self.__openFile) 259 self.__openFile)
252 self.multiMenu.addAction( 260 self.multiMenu.addAction(
253 self.trUtf8('Open'), self.__openFileInEditor) 261 self.trUtf8('Open'), self.__openFileInEditor)
254 self.multiMenu.addSeparator() 262 self.multiMenu.addSeparator()
255 act = self.multiMenu.addAction(self.trUtf8('Remove from project'), 263 act = self.multiMenu.addAction(
256 self._removeFile) 264 self.trUtf8('Remove from project'), self._removeFile)
257 self.multiMenuActions.append(act) 265 self.multiMenuActions.append(act)
258 act = self.multiMenu.addAction( 266 act = self.multiMenu.addAction(
259 self.trUtf8('Delete'), self.__deleteFile) 267 self.trUtf8('Delete'), self.__deleteFile)
260 self.multiMenuActions.append(act) 268 self.multiMenuActions.append(act)
261 self.multiMenu.addSeparator() 269 self.multiMenu.addSeparator()
262 self.multiMenu.addAction(self.trUtf8('Expand all directories'), 270 self.multiMenu.addAction(
263 self._expandAllDirs) 271 self.trUtf8('Expand all directories'), self._expandAllDirs)
264 self.multiMenu.addAction(self.trUtf8('Collapse all directories'), 272 self.multiMenu.addAction(
265 self._collapseAllDirs) 273 self.trUtf8('Collapse all directories'), self._collapseAllDirs)
266 self.multiMenu.addSeparator() 274 self.multiMenu.addSeparator()
267 self.multiMenu.addAction(self.trUtf8('Configure...'), self._configure) 275 self.multiMenu.addAction(self.trUtf8('Configure...'), self._configure)
268 276
269 self.dirMenu = QMenu(self) 277 self.dirMenu = QMenu(self)
270 if self.project.getProjectType() in \ 278 if self.project.getProjectType() in \
271 ["Qt4", "PyQt5", "E4Plugin", "PySide"]: 279 ["Qt4", "PyQt5", "E4Plugin", "PySide"]:
272 self.dirMenu.addAction(self.trUtf8('Compile all forms'), 280 self.dirMenu.addAction(
273 self.__compileAllForms) 281 self.trUtf8('Compile all forms'), self.__compileAllForms)
274 self.dirMenu.addSeparator() 282 self.dirMenu.addSeparator()
275 else: 283 else:
276 if self.hooks["compileAllForms"] is not None: 284 if self.hooks["compileAllForms"] is not None:
277 self.dirMenu.addAction( 285 self.dirMenu.addAction(
278 self.hooksMenuEntries.get("compileAllForms", 286 self.hooksMenuEntries.get(
287 "compileAllForms",
279 self.trUtf8('Compile all forms')), 288 self.trUtf8('Compile all forms')),
280 self.__compileAllForms) 289 self.__compileAllForms)
281 self.dirMenu.addSeparator() 290 self.dirMenu.addSeparator()
282 act = self.dirMenu.addAction( 291 act = self.dirMenu.addAction(
283 self.trUtf8('Remove from project'), self._removeDir) 292 self.trUtf8('Remove from project'), self._removeDir)
290 ["Qt4", "PyQt5", "E4Plugin", "PySide"]: 299 ["Qt4", "PyQt5", "E4Plugin", "PySide"]:
291 self.dirMenu.addAction(self.trUtf8('New form...'), self.__newForm) 300 self.dirMenu.addAction(self.trUtf8('New form...'), self.__newForm)
292 else: 301 else:
293 if self.hooks["newForm"] is not None: 302 if self.hooks["newForm"] is not None:
294 self.dirMenu.addAction( 303 self.dirMenu.addAction(
295 self.hooksMenuEntries.get("newForm", 304 self.hooksMenuEntries.get(
305 "newForm",
296 self.trUtf8('New form...')), self.__newForm) 306 self.trUtf8('New form...')), self.__newForm)
297 self.dirMenu.addAction( 307 self.dirMenu.addAction(
298 self.trUtf8('Add forms...'), self.__addFormFiles) 308 self.trUtf8('Add forms...'), self.__addFormFiles)
299 self.dirMenu.addAction(self.trUtf8('Add forms directory...'), 309 self.dirMenu.addAction(
300 self.__addFormsDirectory) 310 self.trUtf8('Add forms directory...'), self.__addFormsDirectory)
301 self.dirMenu.addSeparator() 311 self.dirMenu.addSeparator()
302 self.dirMenu.addAction(self.trUtf8('Copy Path to Clipboard'), 312 self.dirMenu.addAction(
303 self._copyToClipboard) 313 self.trUtf8('Copy Path to Clipboard'), self._copyToClipboard)
304 self.dirMenu.addSeparator() 314 self.dirMenu.addSeparator()
305 self.dirMenu.addAction(self.trUtf8('Expand all directories'), 315 self.dirMenu.addAction(
306 self._expandAllDirs) 316 self.trUtf8('Expand all directories'), self._expandAllDirs)
307 self.dirMenu.addAction(self.trUtf8('Collapse all directories'), 317 self.dirMenu.addAction(
308 self._collapseAllDirs) 318 self.trUtf8('Collapse all directories'), self._collapseAllDirs)
309 self.dirMenu.addSeparator() 319 self.dirMenu.addSeparator()
310 self.dirMenu.addAction(self.trUtf8('Configure...'), self._configure) 320 self.dirMenu.addAction(self.trUtf8('Configure...'), self._configure)
311 321
312 self.dirMultiMenu = QMenu(self) 322 self.dirMultiMenu = QMenu(self)
313 if self.project.getProjectType() in \ 323 if self.project.getProjectType() in \
314 ["Qt4", "PyQt5", "E4Plugin", "PySide"]: 324 ["Qt4", "PyQt5", "E4Plugin", "PySide"]:
315 self.dirMultiMenu.addAction(self.trUtf8('Compile all forms'), 325 self.dirMultiMenu.addAction(
316 self.__compileAllForms) 326 self.trUtf8('Compile all forms'), self.__compileAllForms)
317 self.dirMultiMenu.addSeparator() 327 self.dirMultiMenu.addSeparator()
318 else: 328 else:
319 if self.hooks["compileAllForms"] is not None: 329 if self.hooks["compileAllForms"] is not None:
320 self.dirMultiMenu.addAction( 330 self.dirMultiMenu.addAction(
321 self.hooksMenuEntries.get("compileAllForms", 331 self.hooksMenuEntries.get(
332 "compileAllForms",
322 self.trUtf8('Compile all forms')), 333 self.trUtf8('Compile all forms')),
323 self.__compileAllForms) 334 self.__compileAllForms)
324 self.dirMultiMenu.addSeparator() 335 self.dirMultiMenu.addSeparator()
325 self.dirMultiMenu.addAction(self.trUtf8('Add forms...'), 336 self.dirMultiMenu.addAction(
326 self.project.addUiFiles) 337 self.trUtf8('Add forms...'), self.project.addUiFiles)
327 self.dirMultiMenu.addAction(self.trUtf8('Add forms directory...'), 338 self.dirMultiMenu.addAction(
328 self.project.addUiDir) 339 self.trUtf8('Add forms directory...'), self.project.addUiDir)
329 self.dirMultiMenu.addSeparator() 340 self.dirMultiMenu.addSeparator()
330 self.dirMultiMenu.addAction(self.trUtf8('Expand all directories'), 341 self.dirMultiMenu.addAction(
331 self._expandAllDirs) 342 self.trUtf8('Expand all directories'), self._expandAllDirs)
332 self.dirMultiMenu.addAction(self.trUtf8('Collapse all directories'), 343 self.dirMultiMenu.addAction(
333 self._collapseAllDirs) 344 self.trUtf8('Collapse all directories'), self._collapseAllDirs)
334 self.dirMultiMenu.addSeparator() 345 self.dirMultiMenu.addSeparator()
335 self.dirMultiMenu.addAction( 346 self.dirMultiMenu.addAction(
336 self.trUtf8('Configure...'), self._configure) 347 self.trUtf8('Configure...'), self._configure)
337 348
338 self.menu.aboutToShow.connect(self.__showContextMenu) 349 self.menu.aboutToShow.connect(self.__showContextMenu)
547 if not ok or not selectedForm: 558 if not ok or not selectedForm:
548 # user pressed cancel 559 # user pressed cancel
549 return 560 return
550 561
551 templateIndex = self.templateTypes4.index(selectedForm) 562 templateIndex = self.templateTypes4.index(selectedForm)
552 templateFile = os.path.join(getConfig('ericTemplatesDir'), 563 templateFile = os.path.join(
553 self.templates4[templateIndex]) 564 getConfig('ericTemplatesDir'), self.templates4[templateIndex])
554 565
555 fname, selectedFilter = E5FileDialog.getSaveFileNameAndFilter( 566 fname, selectedFilter = E5FileDialog.getSaveFileNameAndFilter(
556 self, 567 self,
557 self.trUtf8("New Form"), 568 self.trUtf8("New Form"),
558 path, 569 path,
569 ex = selectedFilter.split("(*")[1].split(")")[0] 580 ex = selectedFilter.split("(*")[1].split(")")[0]
570 if ex: 581 if ex:
571 fname += ex 582 fname += ex
572 583
573 if os.path.exists(fname): 584 if os.path.exists(fname):
574 res = E5MessageBox.yesNo(self, 585 res = E5MessageBox.yesNo(
586 self,
575 self.trUtf8("New Form"), 587 self.trUtf8("New Form"),
576 self.trUtf8("The file already exists! Overwrite it?"), 588 self.trUtf8("The file already exists! Overwrite it?"),
577 icon=E5MessageBox.Warning) 589 icon=E5MessageBox.Warning)
578 if not res: 590 if not res:
579 # user selected to not overwrite 591 # user selected to not overwrite
580 return 592 return
581 593
582 try: 594 try:
583 shutil.copy(templateFile, fname) 595 shutil.copy(templateFile, fname)
584 except IOError as e: 596 except IOError as e:
585 E5MessageBox.critical(self, 597 E5MessageBox.critical(
598 self,
586 self.trUtf8("New Form"), 599 self.trUtf8("New Form"),
587 self.trUtf8( 600 self.trUtf8(
588 "<p>The new form file <b>{0}</b> could not be created.<br>" 601 "<p>The new form file <b>{0}</b> could not be created.<br>"
589 "Problem: {1}</p>").format(fname, str(e))) 602 "Problem: {1}</p>").format(fname, str(e)))
590 return 603 return
606 fn = self.project.getRelativePath(fn2) 619 fn = self.project.getRelativePath(fn2)
607 files.append(fn) 620 files.append(fn)
608 621
609 from UI.DeleteFilesConfirmationDialog import \ 622 from UI.DeleteFilesConfirmationDialog import \
610 DeleteFilesConfirmationDialog 623 DeleteFilesConfirmationDialog
611 dlg = DeleteFilesConfirmationDialog(self.parent(), 624 dlg = DeleteFilesConfirmationDialog(
625 self.parent(),
612 self.trUtf8("Delete forms"), 626 self.trUtf8("Delete forms"),
613 self.trUtf8( 627 self.trUtf8(
614 "Do you really want to delete these forms from the project?"), 628 "Do you really want to delete these forms from the project?"),
615 files) 629 files)
616 630
676 f.write(line + "\n") 690 f.write(line + "\n")
677 f.close() 691 f.close()
678 if self.compiledFile not in self.project.pdata["SOURCES"]: 692 if self.compiledFile not in self.project.pdata["SOURCES"]:
679 self.project.appendFile(ofn) 693 self.project.appendFile(ofn)
680 if not self.noDialog and not ui.notificationsEnabled(): 694 if not self.noDialog and not ui.notificationsEnabled():
681 E5MessageBox.information(self, 695 E5MessageBox.information(
696 self,
682 self.trUtf8("Form Compilation"), 697 self.trUtf8("Form Compilation"),
683 self.trUtf8("The compilation of the form file" 698 self.trUtf8("The compilation of the form file"
684 " was successful.")) 699 " was successful."))
685 else: 700 else:
686 ui.showNotification( 701 ui.showNotification(
687 UI.PixmapCache.getPixmap("designer48.png"), 702 UI.PixmapCache.getPixmap("designer48.png"),
688 self.trUtf8("Form Compilation"), 703 self.trUtf8("Form Compilation"),
689 self.trUtf8("The compilation of the form file" 704 self.trUtf8("The compilation of the form file"
690 " was successful.")) 705 " was successful."))
691 self.project.projectFormCompiled.emit(self.compiledFile) 706 self.project.projectFormCompiled.emit(self.compiledFile)
692 except IOError as msg: 707 except IOError as msg:
693 if not self.noDialog: 708 if not self.noDialog:
694 E5MessageBox.information(self, 709 E5MessageBox.information(
710 self,
695 self.trUtf8("Form Compilation"), 711 self.trUtf8("Form Compilation"),
696 self.trUtf8( 712 self.trUtf8(
697 "<p>The compilation of the form file failed.</p>" 713 "<p>The compilation of the form file failed.</p>"
698 "<p>Reason: {0}</p>").format(str(msg))) 714 "<p>Reason: {0}</p>").format(str(msg)))
699 else: 715 else:
703 self.trUtf8( 719 self.trUtf8(
704 "<p>The compilation of the form file failed.</p>" 720 "<p>The compilation of the form file failed.</p>"
705 "<p>Reason: {0}</p>").format(str(msg))) 721 "<p>Reason: {0}</p>").format(str(msg)))
706 else: 722 else:
707 if not self.noDialog: 723 if not self.noDialog:
708 E5MessageBox.information(self, 724 E5MessageBox.information(
725 self,
709 self.trUtf8("Form Compilation"), 726 self.trUtf8("Form Compilation"),
710 self.trUtf8("The compilation of the form file failed.")) 727 self.trUtf8("The compilation of the form file failed."))
711 else: 728 else:
712 ui.showNotification(UI.PixmapCache.getPixmap("designer48.png"), 729 ui.showNotification(
730 UI.PixmapCache.getPixmap("designer48.png"),
713 self.trUtf8("Form Compilation"), 731 self.trUtf8("Form Compilation"),
714 self.trUtf8("The compilation of the form file failed.")) 732 self.trUtf8("The compilation of the form file failed."))
715 self.compileProc = None 733 self.compileProc = None
716 734
717 def __compileUI(self, fn, noDialog=False, progress=None): 735 def __compileUI(self, fn, noDialog=False, progress=None):
784 return self.compileProc 802 return self.compileProc
785 else: 803 else:
786 self.compileRunning = False 804 self.compileRunning = False
787 if progress is not None: 805 if progress is not None:
788 progress.cancel() 806 progress.cancel()
789 E5MessageBox.critical(self, 807 E5MessageBox.critical(
808 self,
790 self.trUtf8('Process Generation Error'), 809 self.trUtf8('Process Generation Error'),
791 self.trUtf8( 810 self.trUtf8(
792 'Could not start {0}.<br>' 811 'Could not start {0}.<br>'
793 'Ensure that it is in the search path.' 812 'Ensure that it is in the search path.'
794 ).format(self.uicompiler)) 813 ).format(self.uicompiler))
837 """ 856 """
838 if self.hooks["compileAllForms"] is not None: 857 if self.hooks["compileAllForms"] is not None:
839 self.hooks["compileAllForms"](self.project.pdata["FORMS"]) 858 self.hooks["compileAllForms"](self.project.pdata["FORMS"])
840 else: 859 else:
841 numForms = len(self.project.pdata["FORMS"]) 860 numForms = len(self.project.pdata["FORMS"])
842 progress = QProgressDialog(self.trUtf8("Compiling forms..."), 861 progress = QProgressDialog(
862 self.trUtf8("Compiling forms..."),
843 self.trUtf8("Abort"), 0, numForms, self) 863 self.trUtf8("Abort"), 0, numForms, self)
844 progress.setModal(True) 864 progress.setModal(True)
845 progress.setMinimumDuration(0) 865 progress.setMinimumDuration(0)
846 i = 0 866 i = 0
847 867
872 892
873 if self.hooks["compileSelectedForms"] is not None: 893 if self.hooks["compileSelectedForms"] is not None:
874 self.hooks["compileSelectedForms"](files) 894 self.hooks["compileSelectedForms"](files)
875 else: 895 else:
876 numForms = len(files) 896 numForms = len(files)
877 progress = QProgressDialog(self.trUtf8("Compiling forms..."), 897 progress = QProgressDialog(
898 self.trUtf8("Compiling forms..."),
878 self.trUtf8("Abort"), 0, numForms, self) 899 self.trUtf8("Abort"), 0, numForms, self)
879 progress.setModal(True) 900 progress.setModal(True)
880 progress.setMinimumDuration(0) 901 progress.setMinimumDuration(0)
881 i = 0 902 i = 0
882 903

eric ide

mercurial