Project/ProjectResourcesBrowser.py

changeset 3190
a9a94491c4fd
parent 3160
209a07d7e401
child 3478
beec1d9c1851
child 3484
645c12de6b0c
equal deleted inserted replaced
3189:9a21c547de5f 3190:a9a94491c4fd
56 parent) 56 parent)
57 57
58 self.selectedItemsFilter = \ 58 self.selectedItemsFilter = \
59 [ProjectBrowserFileItem, ProjectBrowserSimpleDirectoryItem] 59 [ProjectBrowserFileItem, ProjectBrowserSimpleDirectoryItem]
60 60
61 self.setWindowTitle(self.trUtf8('Resources')) 61 self.setWindowTitle(self.tr('Resources'))
62 62
63 self.setWhatsThis(self.trUtf8( 63 self.setWhatsThis(self.tr(
64 """<b>Project Resources Browser</b>""" 64 """<b>Project Resources Browser</b>"""
65 """<p>This allows to easily see all resources contained in the""" 65 """<p>This allows to easily see all resources contained in the"""
66 """ current project. Several actions can be executed via the""" 66 """ current project. Several actions can be executed via the"""
67 """ context menu.</p>""" 67 """ context menu.</p>"""
68 )) 68 ))
81 self.menu = QMenu(self) 81 self.menu = QMenu(self)
82 if self.project.getProjectType() in \ 82 if self.project.getProjectType() in \
83 ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", 83 ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
84 "PySide", "PySideC"]: 84 "PySide", "PySideC"]:
85 self.menu.addAction( 85 self.menu.addAction(
86 self.trUtf8('Compile resource'), 86 self.tr('Compile resource'),
87 self.__compileResource) 87 self.__compileResource)
88 self.menu.addAction( 88 self.menu.addAction(
89 self.trUtf8('Compile all resources'), 89 self.tr('Compile all resources'),
90 self.__compileAllResources) 90 self.__compileAllResources)
91 self.menu.addSeparator() 91 self.menu.addSeparator()
92 else: 92 else:
93 if self.hooks["compileResource"] is not None: 93 if self.hooks["compileResource"] is not None:
94 self.menu.addAction( 94 self.menu.addAction(
95 self.hooksMenuEntries.get( 95 self.hooksMenuEntries.get(
96 "compileResource", 96 "compileResource",
97 self.trUtf8('Compile resource')), 97 self.tr('Compile resource')),
98 self.__compileResource) 98 self.__compileResource)
99 if self.hooks["compileAllResources"] is not None: 99 if self.hooks["compileAllResources"] is not None:
100 self.menu.addAction( 100 self.menu.addAction(
101 self.hooksMenuEntries.get( 101 self.hooksMenuEntries.get(
102 "compileAllResources", 102 "compileAllResources",
103 self.trUtf8('Compile all resources')), 103 self.tr('Compile all resources')),
104 self.__compileAllResources) 104 self.__compileAllResources)
105 if self.hooks["compileResource"] is not None or \ 105 if self.hooks["compileResource"] is not None or \
106 self.hooks["compileAllResources"] is not None: 106 self.hooks["compileAllResources"] is not None:
107 self.menu.addSeparator() 107 self.menu.addSeparator()
108 self.menu.addAction(self.trUtf8('Open'), self.__openFile) 108 self.menu.addAction(self.tr('Open'), self.__openFile)
109 self.menu.addSeparator() 109 self.menu.addSeparator()
110 act = self.menu.addAction(self.trUtf8('Rename file'), self._renameFile) 110 act = self.menu.addAction(self.tr('Rename file'), self._renameFile)
111 self.menuActions.append(act) 111 self.menuActions.append(act)
112 act = self.menu.addAction( 112 act = self.menu.addAction(
113 self.trUtf8('Remove from project'), self._removeFile) 113 self.tr('Remove from project'), self._removeFile)
114 self.menuActions.append(act) 114 self.menuActions.append(act)
115 act = self.menu.addAction(self.trUtf8('Delete'), self.__deleteFile) 115 act = self.menu.addAction(self.tr('Delete'), self.__deleteFile)
116 self.menuActions.append(act) 116 self.menuActions.append(act)
117 self.menu.addSeparator() 117 self.menu.addSeparator()
118 if self.project.getProjectType() in \ 118 if self.project.getProjectType() in \
119 ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", 119 ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
120 "PySide", "PySideC"]: 120 "PySide", "PySideC"]:
121 self.menu.addAction( 121 self.menu.addAction(
122 self.trUtf8('New resource...'), self.__newResource) 122 self.tr('New resource...'), self.__newResource)
123 else: 123 else:
124 if self.hooks["newResource"] is not None: 124 if self.hooks["newResource"] is not None:
125 self.menu.addAction( 125 self.menu.addAction(
126 self.hooksMenuEntries.get( 126 self.hooksMenuEntries.get(
127 "newResource", 127 "newResource",
128 self.trUtf8('New resource...')), self.__newResource) 128 self.tr('New resource...')), self.__newResource)
129 self.menu.addAction( 129 self.menu.addAction(
130 self.trUtf8('Add resources...'), self.__addResourceFiles) 130 self.tr('Add resources...'), self.__addResourceFiles)
131 self.menu.addAction( 131 self.menu.addAction(
132 self.trUtf8('Add resources directory...'), 132 self.tr('Add resources directory...'),
133 self.__addResourcesDirectory) 133 self.__addResourcesDirectory)
134 self.menu.addSeparator() 134 self.menu.addSeparator()
135 self.menu.addAction( 135 self.menu.addAction(
136 self.trUtf8('Copy Path to Clipboard'), self._copyToClipboard) 136 self.tr('Copy Path to Clipboard'), self._copyToClipboard)
137 self.menu.addSeparator() 137 self.menu.addSeparator()
138 self.menu.addAction( 138 self.menu.addAction(
139 self.trUtf8('Expand all directories'), self._expandAllDirs) 139 self.tr('Expand all directories'), self._expandAllDirs)
140 self.menu.addAction( 140 self.menu.addAction(
141 self.trUtf8('Collapse all directories'), self._collapseAllDirs) 141 self.tr('Collapse all directories'), self._collapseAllDirs)
142 self.menu.addSeparator() 142 self.menu.addSeparator()
143 self.menu.addAction(self.trUtf8('Configure...'), self._configure) 143 self.menu.addAction(self.tr('Configure...'), self._configure)
144 144
145 self.backMenu = QMenu(self) 145 self.backMenu = QMenu(self)
146 if self.project.getProjectType() in \ 146 if self.project.getProjectType() in \
147 ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", 147 ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
148 "PySide", "PySideC"]: 148 "PySide", "PySideC"]:
149 self.backMenu.addAction( 149 self.backMenu.addAction(
150 self.trUtf8('Compile all resources'), 150 self.tr('Compile all resources'),
151 self.__compileAllResources) 151 self.__compileAllResources)
152 self.backMenu.addSeparator() 152 self.backMenu.addSeparator()
153 self.backMenu.addAction( 153 self.backMenu.addAction(
154 self.trUtf8('New resource...'), self.__newResource) 154 self.tr('New resource...'), self.__newResource)
155 else: 155 else:
156 if self.hooks["compileAllResources"] is not None: 156 if self.hooks["compileAllResources"] is not None:
157 self.backMenu.addAction( 157 self.backMenu.addAction(
158 self.hooksMenuEntries.get( 158 self.hooksMenuEntries.get(
159 "compileAllResources", 159 "compileAllResources",
160 self.trUtf8('Compile all resources')), 160 self.tr('Compile all resources')),
161 self.__compileAllResources) 161 self.__compileAllResources)
162 self.backMenu.addSeparator() 162 self.backMenu.addSeparator()
163 if self.hooks["newResource"] is not None: 163 if self.hooks["newResource"] is not None:
164 self.backMenu.addAction( 164 self.backMenu.addAction(
165 self.hooksMenuEntries.get( 165 self.hooksMenuEntries.get(
166 "newResource", 166 "newResource",
167 self.trUtf8('New resource...')), self.__newResource) 167 self.tr('New resource...')), self.__newResource)
168 self.backMenu.addAction( 168 self.backMenu.addAction(
169 self.trUtf8('Add resources...'), self.project.addResourceFiles) 169 self.tr('Add resources...'), self.project.addResourceFiles)
170 self.backMenu.addAction( 170 self.backMenu.addAction(
171 self.trUtf8('Add resources directory...'), 171 self.tr('Add resources directory...'),
172 self.project.addResourceDir) 172 self.project.addResourceDir)
173 self.backMenu.addSeparator() 173 self.backMenu.addSeparator()
174 self.backMenu.addAction( 174 self.backMenu.addAction(
175 self.trUtf8('Expand all directories'), self._expandAllDirs) 175 self.tr('Expand all directories'), self._expandAllDirs)
176 self.backMenu.addAction( 176 self.backMenu.addAction(
177 self.trUtf8('Collapse all directories'), self._collapseAllDirs) 177 self.tr('Collapse all directories'), self._collapseAllDirs)
178 self.backMenu.addSeparator() 178 self.backMenu.addSeparator()
179 self.backMenu.addAction(self.trUtf8('Configure...'), self._configure) 179 self.backMenu.addAction(self.tr('Configure...'), self._configure)
180 self.backMenu.setEnabled(False) 180 self.backMenu.setEnabled(False)
181 181
182 # create the menu for multiple selected files 182 # create the menu for multiple selected files
183 self.multiMenu = QMenu(self) 183 self.multiMenu = QMenu(self)
184 if self.project.getProjectType() in \ 184 if self.project.getProjectType() in \
185 ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", 185 ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
186 "PySide", "PySideC"]: 186 "PySide", "PySideC"]:
187 act = self.multiMenu.addAction( 187 act = self.multiMenu.addAction(
188 self.trUtf8('Compile resources'), 188 self.tr('Compile resources'),
189 self.__compileSelectedResources) 189 self.__compileSelectedResources)
190 self.multiMenu.addSeparator() 190 self.multiMenu.addSeparator()
191 else: 191 else:
192 if self.hooks["compileSelectedResources"] is not None: 192 if self.hooks["compileSelectedResources"] is not None:
193 act = self.multiMenu.addAction( 193 act = self.multiMenu.addAction(
194 self.hooksMenuEntries.get( 194 self.hooksMenuEntries.get(
195 "compileSelectedResources", 195 "compileSelectedResources",
196 self.trUtf8('Compile resources')), 196 self.tr('Compile resources')),
197 self.__compileSelectedResources) 197 self.__compileSelectedResources)
198 self.multiMenu.addSeparator() 198 self.multiMenu.addSeparator()
199 self.multiMenu.addAction(self.trUtf8('Open'), self.__openFile) 199 self.multiMenu.addAction(self.tr('Open'), self.__openFile)
200 self.multiMenu.addSeparator() 200 self.multiMenu.addSeparator()
201 act = self.multiMenu.addAction( 201 act = self.multiMenu.addAction(
202 self.trUtf8('Remove from project'), self._removeFile) 202 self.tr('Remove from project'), self._removeFile)
203 self.multiMenuActions.append(act) 203 self.multiMenuActions.append(act)
204 act = self.multiMenu.addAction( 204 act = self.multiMenu.addAction(
205 self.trUtf8('Delete'), self.__deleteFile) 205 self.tr('Delete'), self.__deleteFile)
206 self.multiMenuActions.append(act) 206 self.multiMenuActions.append(act)
207 self.multiMenu.addSeparator() 207 self.multiMenu.addSeparator()
208 self.multiMenu.addAction( 208 self.multiMenu.addAction(
209 self.trUtf8('Expand all directories'), self._expandAllDirs) 209 self.tr('Expand all directories'), self._expandAllDirs)
210 self.multiMenu.addAction( 210 self.multiMenu.addAction(
211 self.trUtf8('Collapse all directories'), self._collapseAllDirs) 211 self.tr('Collapse all directories'), self._collapseAllDirs)
212 self.multiMenu.addSeparator() 212 self.multiMenu.addSeparator()
213 self.multiMenu.addAction(self.trUtf8('Configure...'), self._configure) 213 self.multiMenu.addAction(self.tr('Configure...'), self._configure)
214 214
215 self.dirMenu = QMenu(self) 215 self.dirMenu = QMenu(self)
216 if self.project.getProjectType() in \ 216 if self.project.getProjectType() in \
217 ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", 217 ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
218 "PySide", "PySideC"]: 218 "PySide", "PySideC"]:
219 self.dirMenu.addAction( 219 self.dirMenu.addAction(
220 self.trUtf8('Compile all resources'), 220 self.tr('Compile all resources'),
221 self.__compileAllResources) 221 self.__compileAllResources)
222 self.dirMenu.addSeparator() 222 self.dirMenu.addSeparator()
223 else: 223 else:
224 if self.hooks["compileAllResources"] is not None: 224 if self.hooks["compileAllResources"] is not None:
225 self.dirMenu.addAction( 225 self.dirMenu.addAction(
226 self.hooksMenuEntries.get( 226 self.hooksMenuEntries.get(
227 "compileAllResources", 227 "compileAllResources",
228 self.trUtf8('Compile all resources')), 228 self.tr('Compile all resources')),
229 self.__compileAllResources) 229 self.__compileAllResources)
230 self.dirMenu.addSeparator() 230 self.dirMenu.addSeparator()
231 act = self.dirMenu.addAction( 231 act = self.dirMenu.addAction(
232 self.trUtf8('Remove from project'), self._removeDir) 232 self.tr('Remove from project'), self._removeDir)
233 self.dirMenuActions.append(act) 233 self.dirMenuActions.append(act)
234 act = self.dirMenu.addAction( 234 act = self.dirMenu.addAction(
235 self.trUtf8('Delete'), self._deleteDirectory) 235 self.tr('Delete'), self._deleteDirectory)
236 self.dirMenuActions.append(act) 236 self.dirMenuActions.append(act)
237 self.dirMenu.addSeparator() 237 self.dirMenu.addSeparator()
238 self.dirMenu.addAction( 238 self.dirMenu.addAction(
239 self.trUtf8('New resource...'), self.__newResource) 239 self.tr('New resource...'), self.__newResource)
240 self.dirMenu.addAction( 240 self.dirMenu.addAction(
241 self.trUtf8('Add resources...'), self.__addResourceFiles) 241 self.tr('Add resources...'), self.__addResourceFiles)
242 self.dirMenu.addAction( 242 self.dirMenu.addAction(
243 self.trUtf8('Add resources directory...'), 243 self.tr('Add resources directory...'),
244 self.__addResourcesDirectory) 244 self.__addResourcesDirectory)
245 self.dirMenu.addSeparator() 245 self.dirMenu.addSeparator()
246 self.dirMenu.addAction( 246 self.dirMenu.addAction(
247 self.trUtf8('Copy Path to Clipboard'), self._copyToClipboard) 247 self.tr('Copy Path to Clipboard'), self._copyToClipboard)
248 self.dirMenu.addSeparator() 248 self.dirMenu.addSeparator()
249 self.dirMenu.addAction( 249 self.dirMenu.addAction(
250 self.trUtf8('Expand all directories'), self._expandAllDirs) 250 self.tr('Expand all directories'), self._expandAllDirs)
251 self.dirMenu.addAction( 251 self.dirMenu.addAction(
252 self.trUtf8('Collapse all directories'), self._collapseAllDirs) 252 self.tr('Collapse all directories'), self._collapseAllDirs)
253 self.dirMenu.addSeparator() 253 self.dirMenu.addSeparator()
254 self.dirMenu.addAction(self.trUtf8('Configure...'), self._configure) 254 self.dirMenu.addAction(self.tr('Configure...'), self._configure)
255 255
256 self.dirMultiMenu = QMenu(self) 256 self.dirMultiMenu = QMenu(self)
257 if self.project.getProjectType() in \ 257 if self.project.getProjectType() in \
258 ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", 258 ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
259 "PySide", "PySideC"]: 259 "PySide", "PySideC"]:
260 self.dirMultiMenu.addAction( 260 self.dirMultiMenu.addAction(
261 self.trUtf8('Compile all resources'), 261 self.tr('Compile all resources'),
262 self.__compileAllResources) 262 self.__compileAllResources)
263 self.dirMultiMenu.addSeparator() 263 self.dirMultiMenu.addSeparator()
264 else: 264 else:
265 if self.hooks["compileAllResources"] is not None: 265 if self.hooks["compileAllResources"] is not None:
266 self.dirMultiMenu.addAction( 266 self.dirMultiMenu.addAction(
267 self.hooksMenuEntries.get( 267 self.hooksMenuEntries.get(
268 "compileAllResources", 268 "compileAllResources",
269 self.trUtf8('Compile all resources')), 269 self.tr('Compile all resources')),
270 self.__compileAllResources) 270 self.__compileAllResources)
271 self.dirMultiMenu.addSeparator() 271 self.dirMultiMenu.addSeparator()
272 self.dirMultiMenu.addAction( 272 self.dirMultiMenu.addAction(
273 self.trUtf8('Add resources...'), 273 self.tr('Add resources...'),
274 self.project.addResourceFiles) 274 self.project.addResourceFiles)
275 self.dirMultiMenu.addAction( 275 self.dirMultiMenu.addAction(
276 self.trUtf8('Add resources directory...'), 276 self.tr('Add resources directory...'),
277 self.project.addResourceDir) 277 self.project.addResourceDir)
278 self.dirMultiMenu.addSeparator() 278 self.dirMultiMenu.addSeparator()
279 self.dirMultiMenu.addAction( 279 self.dirMultiMenu.addAction(
280 self.trUtf8('Expand all directories'), self._expandAllDirs) 280 self.tr('Expand all directories'), self._expandAllDirs)
281 self.dirMultiMenu.addAction( 281 self.dirMultiMenu.addAction(
282 self.trUtf8('Collapse all directories'), self._collapseAllDirs) 282 self.tr('Collapse all directories'), self._collapseAllDirs)
283 self.dirMultiMenu.addSeparator() 283 self.dirMultiMenu.addSeparator()
284 self.dirMultiMenu.addAction( 284 self.dirMultiMenu.addAction(
285 self.trUtf8('Configure...'), self._configure) 285 self.tr('Configure...'), self._configure)
286 286
287 self.menu.aboutToShow.connect(self.__showContextMenu) 287 self.menu.aboutToShow.connect(self.__showContextMenu)
288 self.multiMenu.aboutToShow.connect(self.__showContextMenuMulti) 288 self.multiMenu.aboutToShow.connect(self.__showContextMenuMulti)
289 self.dirMenu.aboutToShow.connect(self.__showContextMenuDir) 289 self.dirMenu.aboutToShow.connect(self.__showContextMenuDir)
290 self.dirMultiMenu.aboutToShow.connect(self.__showContextMenuDirMulti) 290 self.dirMultiMenu.aboutToShow.connect(self.__showContextMenuDirMulti)
435 if self.hooks["newResource"] is not None: 435 if self.hooks["newResource"] is not None:
436 self.hooks["newResource"](path) 436 self.hooks["newResource"](path)
437 else: 437 else:
438 fname, selectedFilter = E5FileDialog.getSaveFileNameAndFilter( 438 fname, selectedFilter = E5FileDialog.getSaveFileNameAndFilter(
439 self, 439 self,
440 self.trUtf8("New Resource"), 440 self.tr("New Resource"),
441 path, 441 path,
442 self.trUtf8("Qt Resource Files (*.qrc)"), 442 self.tr("Qt Resource Files (*.qrc)"),
443 "", 443 "",
444 E5FileDialog.Options(E5FileDialog.DontConfirmOverwrite)) 444 E5FileDialog.Options(E5FileDialog.DontConfirmOverwrite))
445 445
446 if not fname: 446 if not fname:
447 # user aborted or didn't enter a filename 447 # user aborted or didn't enter a filename
454 fname += ex 454 fname += ex
455 455
456 if os.path.exists(fname): 456 if os.path.exists(fname):
457 res = E5MessageBox.yesNo( 457 res = E5MessageBox.yesNo(
458 self, 458 self,
459 self.trUtf8("New Resource"), 459 self.tr("New Resource"),
460 self.trUtf8("The file already exists! Overwrite it?"), 460 self.tr("The file already exists! Overwrite it?"),
461 icon=E5MessageBox.Warning) 461 icon=E5MessageBox.Warning)
462 if not res: 462 if not res:
463 # user selected to not overwrite 463 # user selected to not overwrite
464 return 464 return
465 465
476 rcfile.write('</RCC>\n') 476 rcfile.write('</RCC>\n')
477 rcfile.close() 477 rcfile.close()
478 except IOError as e: 478 except IOError as e:
479 E5MessageBox.critical( 479 E5MessageBox.critical(
480 self, 480 self,
481 self.trUtf8("New Resource"), 481 self.tr("New Resource"),
482 self.trUtf8( 482 self.tr(
483 "<p>The new resource file <b>{0}</b> could not" 483 "<p>The new resource file <b>{0}</b> could not"
484 " be created.<br>Problem: {1}</p>") 484 " be created.<br>Problem: {1}</p>")
485 .format(fname, str(e))) 485 .format(fname, str(e)))
486 return 486 return
487 487
504 504
505 from UI.DeleteFilesConfirmationDialog import \ 505 from UI.DeleteFilesConfirmationDialog import \
506 DeleteFilesConfirmationDialog 506 DeleteFilesConfirmationDialog
507 dlg = DeleteFilesConfirmationDialog( 507 dlg = DeleteFilesConfirmationDialog(
508 self.parent(), 508 self.parent(),
509 self.trUtf8("Delete resources"), 509 self.tr("Delete resources"),
510 self.trUtf8( 510 self.tr(
511 "Do you really want to delete these resources from the" 511 "Do you really want to delete these resources from the"
512 " project?"), 512 " project?"),
513 files) 513 files)
514 514
515 if dlg.exec_() == QDialog.Accepted: 515 if dlg.exec_() == QDialog.Accepted:
577 if self.compiledFile not in self.project.pdata["SOURCES"]: 577 if self.compiledFile not in self.project.pdata["SOURCES"]:
578 self.project.appendFile(ofn) 578 self.project.appendFile(ofn)
579 if not self.noDialog and not ui.notificationsEnabled(): 579 if not self.noDialog and not ui.notificationsEnabled():
580 E5MessageBox.information( 580 E5MessageBox.information(
581 self, 581 self,
582 self.trUtf8("Resource Compilation"), 582 self.tr("Resource Compilation"),
583 self.trUtf8("The compilation of the resource file" 583 self.tr("The compilation of the resource file"
584 " was successful.")) 584 " was successful."))
585 else: 585 else:
586 ui.showNotification( 586 ui.showNotification(
587 UI.PixmapCache.getPixmap("resourcesCompiler48.png"), 587 UI.PixmapCache.getPixmap("resourcesCompiler48.png"),
588 self.trUtf8("Resource Compilation"), 588 self.tr("Resource Compilation"),
589 self.trUtf8("The compilation of the resource file" 589 self.tr("The compilation of the resource file"
590 " was successful.")) 590 " was successful."))
591 except IOError as msg: 591 except IOError as msg:
592 if not self.noDialog: 592 if not self.noDialog:
593 E5MessageBox.information( 593 E5MessageBox.information(
594 self, 594 self,
595 self.trUtf8("Resource Compilation"), 595 self.tr("Resource Compilation"),
596 self.trUtf8( 596 self.tr(
597 "<p>The compilation of the resource file" 597 "<p>The compilation of the resource file"
598 " failed.</p><p>Reason: {0}</p>").format(str(msg))) 598 " failed.</p><p>Reason: {0}</p>").format(str(msg)))
599 else: 599 else:
600 if not self.noDialog: 600 if not self.noDialog:
601 E5MessageBox.information( 601 E5MessageBox.information(
602 self, 602 self,
603 self.trUtf8("Resource Compilation"), 603 self.tr("Resource Compilation"),
604 self.trUtf8( 604 self.tr(
605 "The compilation of the resource file failed.")) 605 "The compilation of the resource file failed."))
606 else: 606 else:
607 ui.showNotification( 607 ui.showNotification(
608 UI.PixmapCache.getPixmap("resourcesCompiler48.png"), 608 UI.PixmapCache.getPixmap("resourcesCompiler48.png"),
609 self.trUtf8("Resource Compilation"), 609 self.tr("Resource Compilation"),
610 self.trUtf8( 610 self.tr(
611 "The compilation of the resource file failed.")) 611 "The compilation of the resource file failed."))
612 self.compileProc = None 612 self.compileProc = None
613 613
614 def __compileQRC(self, fn, noDialog=False, progress=None): 614 def __compileQRC(self, fn, noDialog=False, progress=None):
615 """ 615 """
690 self.compileRunning = False 690 self.compileRunning = False
691 if progress is not None: 691 if progress is not None:
692 progress.cancel() 692 progress.cancel()
693 E5MessageBox.critical( 693 E5MessageBox.critical(
694 self, 694 self,
695 self.trUtf8('Process Generation Error'), 695 self.tr('Process Generation Error'),
696 self.trUtf8( 696 self.tr(
697 'Could not start {0}.<br>' 697 'Could not start {0}.<br>'
698 'Ensure that it is in the search path.' 698 'Ensure that it is in the search path.'
699 ).format(self.rccCompiler)) 699 ).format(self.rccCompiler))
700 return None 700 return None
701 701
718 if self.hooks["compileAllResources"] is not None: 718 if self.hooks["compileAllResources"] is not None:
719 self.hooks["compileAllResources"](self.project.pdata["RESOURCES"]) 719 self.hooks["compileAllResources"](self.project.pdata["RESOURCES"])
720 else: 720 else:
721 numResources = len(self.project.pdata["RESOURCES"]) 721 numResources = len(self.project.pdata["RESOURCES"])
722 progress = E5ProgressDialog( 722 progress = E5ProgressDialog(
723 self.trUtf8("Compiling resources..."), 723 self.tr("Compiling resources..."),
724 self.trUtf8("Abort"), 0, numResources, 724 self.tr("Abort"), 0, numResources,
725 self.trUtf8("%v/%m Resources"), self) 725 self.tr("%v/%m Resources"), self)
726 progress.setModal(True) 726 progress.setModal(True)
727 progress.setMinimumDuration(0) 727 progress.setMinimumDuration(0)
728 i = 0 728 i = 0
729 729
730 for fn in self.project.pdata["RESOURCES"]: 730 for fn in self.project.pdata["RESOURCES"]:
754 if self.hooks["compileSelectedResources"] is not None: 754 if self.hooks["compileSelectedResources"] is not None:
755 self.hooks["compileSelectedResources"](files) 755 self.hooks["compileSelectedResources"](files)
756 else: 756 else:
757 numResources = len(files) 757 numResources = len(files)
758 progress = E5ProgressDialog( 758 progress = E5ProgressDialog(
759 self.trUtf8("Compiling resources..."), 759 self.tr("Compiling resources..."),
760 self.trUtf8("Abort"), 0, numResources, 760 self.tr("Abort"), 0, numResources,
761 self.trUtf8("%v/%m Resources"), self) 761 self.tr("%v/%m Resources"), self)
762 progress.setModal(True) 762 progress.setModal(True)
763 progress.setMinimumDuration(0) 763 progress.setMinimumDuration(0)
764 i = 0 764 i = 0
765 765
766 for fn in files: 766 for fn in files:
824 if self.hooks["compileChangedResources"] is not None: 824 if self.hooks["compileChangedResources"] is not None:
825 self.hooks["compileChangedResources"]( 825 self.hooks["compileChangedResources"](
826 self.project.pdata["RESOURCES"]) 826 self.project.pdata["RESOURCES"])
827 else: 827 else:
828 progress = E5ProgressDialog( 828 progress = E5ProgressDialog(
829 self.trUtf8("Determining changed resources..."), 829 self.tr("Determining changed resources..."),
830 None, 0, 100, self.trUtf8("%v/%m Resources")) 830 None, 0, 100, self.tr("%v/%m Resources"))
831 progress.setMinimumDuration(0) 831 progress.setMinimumDuration(0)
832 i = 0 832 i = 0
833 833
834 # get list of changed resources 834 # get list of changed resources
835 changedResources = [] 835 changedResources = []
858 progress.setValue(i) 858 progress.setValue(i)
859 QApplication.processEvents() 859 QApplication.processEvents()
860 860
861 if changedResources: 861 if changedResources:
862 progress.setLabelText( 862 progress.setLabelText(
863 self.trUtf8("Compiling changed resources...")) 863 self.tr("Compiling changed resources..."))
864 progress.setMaximum(len(changedResources)) 864 progress.setMaximum(len(changedResources))
865 i = 0 865 i = 0
866 progress.setValue(i) 866 progress.setValue(i)
867 QApplication.processEvents() 867 QApplication.processEvents()
868 for fn in changedResources: 868 for fn in changedResources:

eric ide

mercurial