Project/ProjectSourcesBrowser.py

changeset 3190
a9a94491c4fd
parent 3160
209a07d7e401
child 3438
29717a5e8b97
equal deleted inserted replaced
3189:9a21c547de5f 3190:a9a94491c4fd
53 parent) 53 parent)
54 54
55 self.selectedItemsFilter = \ 55 self.selectedItemsFilter = \
56 [ProjectBrowserFileItem, ProjectBrowserSimpleDirectoryItem] 56 [ProjectBrowserFileItem, ProjectBrowserSimpleDirectoryItem]
57 57
58 self.setWindowTitle(self.trUtf8('Sources')) 58 self.setWindowTitle(self.tr('Sources'))
59 59
60 self.setWhatsThis(self.trUtf8( 60 self.setWhatsThis(self.tr(
61 """<b>Project Sources Browser</b>""" 61 """<b>Project Sources Browser</b>"""
62 """<p>This allows to easily see all sources contained in the""" 62 """<p>This allows to easily see all sources contained in the"""
63 """ current project. Several actions can be executed via the""" 63 """ current project. Several actions can be executed via the"""
64 """ context menu.</p>""" 64 """ context menu.</p>"""
65 )) 65 ))
111 111
112 def __createPythonPopupMenus(self): 112 def __createPythonPopupMenus(self):
113 """ 113 """
114 Privat method to generate the popup menus for a Python project. 114 Privat method to generate the popup menus for a Python project.
115 """ 115 """
116 self.checksMenu = QMenu(self.trUtf8('Check')) 116 self.checksMenu = QMenu(self.tr('Check'))
117 self.checksMenu.aboutToShow.connect(self.__showContextMenuCheck) 117 self.checksMenu.aboutToShow.connect(self.__showContextMenuCheck)
118 118
119 self.menuShow = QMenu(self.trUtf8('Show')) 119 self.menuShow = QMenu(self.tr('Show'))
120 self.menuShow.addAction( 120 self.menuShow.addAction(
121 self.trUtf8('Code metrics...'), self.__showCodeMetrics) 121 self.tr('Code metrics...'), self.__showCodeMetrics)
122 self.coverageMenuAction = self.menuShow.addAction( 122 self.coverageMenuAction = self.menuShow.addAction(
123 self.trUtf8('Code coverage...'), self.__showCodeCoverage) 123 self.tr('Code coverage...'), self.__showCodeCoverage)
124 self.profileMenuAction = self.menuShow.addAction( 124 self.profileMenuAction = self.menuShow.addAction(
125 self.trUtf8('Profile data...'), self.__showProfileData) 125 self.tr('Profile data...'), self.__showProfileData)
126 self.menuShow.aboutToShow.connect(self.__showContextMenuShow) 126 self.menuShow.aboutToShow.connect(self.__showContextMenuShow)
127 127
128 self.graphicsMenu = QMenu(self.trUtf8('Diagrams')) 128 self.graphicsMenu = QMenu(self.tr('Diagrams'))
129 self.classDiagramAction = self.graphicsMenu.addAction( 129 self.classDiagramAction = self.graphicsMenu.addAction(
130 self.trUtf8("Class Diagram..."), self.__showClassDiagram) 130 self.tr("Class Diagram..."), self.__showClassDiagram)
131 self.graphicsMenu.addAction( 131 self.graphicsMenu.addAction(
132 self.trUtf8("Package Diagram..."), self.__showPackageDiagram) 132 self.tr("Package Diagram..."), self.__showPackageDiagram)
133 self.importsDiagramAction = self.graphicsMenu.addAction( 133 self.importsDiagramAction = self.graphicsMenu.addAction(
134 self.trUtf8("Imports Diagram..."), self.__showImportsDiagram) 134 self.tr("Imports Diagram..."), self.__showImportsDiagram)
135 self.graphicsMenu.addAction( 135 self.graphicsMenu.addAction(
136 self.trUtf8("Application Diagram..."), 136 self.tr("Application Diagram..."),
137 self.__showApplicationDiagram) 137 self.__showApplicationDiagram)
138 self.graphicsMenu.addSeparator() 138 self.graphicsMenu.addSeparator()
139 self.graphicsMenu.addAction( 139 self.graphicsMenu.addAction(
140 UI.PixmapCache.getIcon("open.png"), 140 UI.PixmapCache.getIcon("open.png"),
141 self.trUtf8("Load Diagram..."), self.__loadDiagram) 141 self.tr("Load Diagram..."), self.__loadDiagram)
142 self.graphicsMenu.aboutToShow.connect(self.__showContextMenuGraphics) 142 self.graphicsMenu.aboutToShow.connect(self.__showContextMenuGraphics)
143 143
144 self.unittestAction = self.sourceMenu.addAction( 144 self.unittestAction = self.sourceMenu.addAction(
145 self.trUtf8('Run unittest...'), self.handleUnittest) 145 self.tr('Run unittest...'), self.handleUnittest)
146 self.sourceMenu.addSeparator() 146 self.sourceMenu.addSeparator()
147 act = self.sourceMenu.addAction( 147 act = self.sourceMenu.addAction(
148 self.trUtf8('Rename file'), self._renameFile) 148 self.tr('Rename file'), self._renameFile)
149 self.menuActions.append(act) 149 self.menuActions.append(act)
150 act = self.sourceMenu.addAction( 150 act = self.sourceMenu.addAction(
151 self.trUtf8('Remove from project'), self._removeFile) 151 self.tr('Remove from project'), self._removeFile)
152 self.menuActions.append(act) 152 self.menuActions.append(act)
153 act = self.sourceMenu.addAction( 153 act = self.sourceMenu.addAction(
154 self.trUtf8('Delete'), self.__deleteFile) 154 self.tr('Delete'), self.__deleteFile)
155 self.menuActions.append(act) 155 self.menuActions.append(act)
156 self.sourceMenu.addSeparator() 156 self.sourceMenu.addSeparator()
157 self.sourceMenu.addAction( 157 self.sourceMenu.addAction(
158 self.trUtf8('New package...'), self.__addNewPackage) 158 self.tr('New package...'), self.__addNewPackage)
159 self.sourceMenu.addAction( 159 self.sourceMenu.addAction(
160 self.trUtf8('Add source files...'), self.__addSourceFiles) 160 self.tr('Add source files...'), self.__addSourceFiles)
161 self.sourceMenu.addAction( 161 self.sourceMenu.addAction(
162 self.trUtf8('Add source directory...'), self.__addSourceDirectory) 162 self.tr('Add source directory...'), self.__addSourceDirectory)
163 self.sourceMenu.addSeparator() 163 self.sourceMenu.addSeparator()
164 act = self.sourceMenu.addMenu(self.graphicsMenu) 164 act = self.sourceMenu.addMenu(self.graphicsMenu)
165 self.sourceMenu.addSeparator() 165 self.sourceMenu.addSeparator()
166 self.sourceMenu.addMenu(self.checksMenu) 166 self.sourceMenu.addMenu(self.checksMenu)
167 self.sourceMenu.addSeparator() 167 self.sourceMenu.addSeparator()
168 self.sourceMenuActions["Show"] = self.sourceMenu.addMenu(self.menuShow) 168 self.sourceMenuActions["Show"] = self.sourceMenu.addMenu(self.menuShow)
169 self.sourceMenu.addSeparator() 169 self.sourceMenu.addSeparator()
170 self.sourceMenu.addAction( 170 self.sourceMenu.addAction(
171 self.trUtf8('Copy Path to Clipboard'), self._copyToClipboard) 171 self.tr('Copy Path to Clipboard'), self._copyToClipboard)
172 self.sourceMenu.addSeparator() 172 self.sourceMenu.addSeparator()
173 self.sourceMenu.addAction( 173 self.sourceMenu.addAction(
174 self.trUtf8('Expand all directories'), self._expandAllDirs) 174 self.tr('Expand all directories'), self._expandAllDirs)
175 self.sourceMenu.addAction( 175 self.sourceMenu.addAction(
176 self.trUtf8('Collapse all directories'), self._collapseAllDirs) 176 self.tr('Collapse all directories'), self._collapseAllDirs)
177 self.sourceMenu.addSeparator() 177 self.sourceMenu.addSeparator()
178 self.sourceMenu.addAction(self.trUtf8('Configure...'), self._configure) 178 self.sourceMenu.addAction(self.tr('Configure...'), self._configure)
179 179
180 self.menu.addSeparator() 180 self.menu.addSeparator()
181 self.menu.addAction( 181 self.menu.addAction(
182 self.trUtf8('New package...'), self.__addNewPackage) 182 self.tr('New package...'), self.__addNewPackage)
183 self.menu.addAction( 183 self.menu.addAction(
184 self.trUtf8('Add source files...'), self.__addSourceFiles) 184 self.tr('Add source files...'), self.__addSourceFiles)
185 self.menu.addAction( 185 self.menu.addAction(
186 self.trUtf8('Add source directory...'), self.__addSourceDirectory) 186 self.tr('Add source directory...'), self.__addSourceDirectory)
187 self.menu.addSeparator() 187 self.menu.addSeparator()
188 self.menu.addAction( 188 self.menu.addAction(
189 self.trUtf8('Expand all directories'), self._expandAllDirs) 189 self.tr('Expand all directories'), self._expandAllDirs)
190 self.menu.addAction( 190 self.menu.addAction(
191 self.trUtf8('Collapse all directories'), self._collapseAllDirs) 191 self.tr('Collapse all directories'), self._collapseAllDirs)
192 self.menu.addSeparator() 192 self.menu.addSeparator()
193 self.menu.addAction(self.trUtf8('Configure...'), self._configure) 193 self.menu.addAction(self.tr('Configure...'), self._configure)
194 194
195 # create the attribute menu 195 # create the attribute menu
196 self.gotoMenu = QMenu(self.trUtf8("Goto"), self) 196 self.gotoMenu = QMenu(self.tr("Goto"), self)
197 self.gotoMenu.aboutToShow.connect(self._showGotoMenu) 197 self.gotoMenu.aboutToShow.connect(self._showGotoMenu)
198 self.gotoMenu.triggered.connect(self._gotoAttribute) 198 self.gotoMenu.triggered.connect(self._gotoAttribute)
199 199
200 self.attributeMenu = QMenu(self) 200 self.attributeMenu = QMenu(self)
201 self.attributeMenu.addMenu(self.gotoMenu) 201 self.attributeMenu.addMenu(self.gotoMenu)
202 self.attributeMenu.addSeparator() 202 self.attributeMenu.addSeparator()
203 self.attributeMenu.addAction( 203 self.attributeMenu.addAction(
204 self.trUtf8('New package...'), self.__addNewPackage) 204 self.tr('New package...'), self.__addNewPackage)
205 self.attributeMenu.addAction( 205 self.attributeMenu.addAction(
206 self.trUtf8('Add source files...'), self.project.addSourceFiles) 206 self.tr('Add source files...'), self.project.addSourceFiles)
207 self.attributeMenu.addAction( 207 self.attributeMenu.addAction(
208 self.trUtf8('Add source directory...'), self.project.addSourceDir) 208 self.tr('Add source directory...'), self.project.addSourceDir)
209 self.attributeMenu.addSeparator() 209 self.attributeMenu.addSeparator()
210 self.attributeMenu.addAction( 210 self.attributeMenu.addAction(
211 self.trUtf8('Expand all directories'), self._expandAllDirs) 211 self.tr('Expand all directories'), self._expandAllDirs)
212 self.attributeMenu.addAction( 212 self.attributeMenu.addAction(
213 self.trUtf8('Collapse all directories'), self._collapseAllDirs) 213 self.tr('Collapse all directories'), self._collapseAllDirs)
214 self.attributeMenu.addSeparator() 214 self.attributeMenu.addSeparator()
215 self.attributeMenu.addAction( 215 self.attributeMenu.addAction(
216 self.trUtf8('Configure...'), self._configure) 216 self.tr('Configure...'), self._configure)
217 217
218 self.backMenu = QMenu(self) 218 self.backMenu = QMenu(self)
219 self.backMenu.addAction( 219 self.backMenu.addAction(
220 self.trUtf8('New package...'), self.__addNewPackage) 220 self.tr('New package...'), self.__addNewPackage)
221 self.backMenu.addAction( 221 self.backMenu.addAction(
222 self.trUtf8('Add source files...'), self.project.addSourceFiles) 222 self.tr('Add source files...'), self.project.addSourceFiles)
223 self.backMenu.addAction( 223 self.backMenu.addAction(
224 self.trUtf8('Add source directory...'), self.project.addSourceDir) 224 self.tr('Add source directory...'), self.project.addSourceDir)
225 self.backMenu.addSeparator() 225 self.backMenu.addSeparator()
226 self.backMenu.addAction( 226 self.backMenu.addAction(
227 self.trUtf8('Expand all directories'), self._expandAllDirs) 227 self.tr('Expand all directories'), self._expandAllDirs)
228 self.backMenu.addAction( 228 self.backMenu.addAction(
229 self.trUtf8('Collapse all directories'), self._collapseAllDirs) 229 self.tr('Collapse all directories'), self._collapseAllDirs)
230 self.backMenu.addSeparator() 230 self.backMenu.addSeparator()
231 self.backMenu.addAction(self.trUtf8('Configure...'), self._configure) 231 self.backMenu.addAction(self.tr('Configure...'), self._configure)
232 self.backMenu.setEnabled(False) 232 self.backMenu.setEnabled(False)
233 233
234 self.multiMenu.addSeparator() 234 self.multiMenu.addSeparator()
235 act = self.multiMenu.addAction( 235 act = self.multiMenu.addAction(
236 self.trUtf8('Remove from project'), self._removeFile) 236 self.tr('Remove from project'), self._removeFile)
237 self.multiMenuActions.append(act) 237 self.multiMenuActions.append(act)
238 act = self.multiMenu.addAction( 238 act = self.multiMenu.addAction(
239 self.trUtf8('Delete'), self.__deleteFile) 239 self.tr('Delete'), self.__deleteFile)
240 self.multiMenuActions.append(act) 240 self.multiMenuActions.append(act)
241 self.multiMenu.addSeparator() 241 self.multiMenu.addSeparator()
242 self.multiMenu.addAction( 242 self.multiMenu.addAction(
243 self.trUtf8('Expand all directories'), self._expandAllDirs) 243 self.tr('Expand all directories'), self._expandAllDirs)
244 self.multiMenu.addAction( 244 self.multiMenu.addAction(
245 self.trUtf8('Collapse all directories'), self._collapseAllDirs) 245 self.tr('Collapse all directories'), self._collapseAllDirs)
246 self.multiMenu.addSeparator() 246 self.multiMenu.addSeparator()
247 self.multiMenu.addAction(self.trUtf8('Configure...'), self._configure) 247 self.multiMenu.addAction(self.tr('Configure...'), self._configure)
248 248
249 self.dirMenu = QMenu(self) 249 self.dirMenu = QMenu(self)
250 act = self.dirMenu.addAction( 250 act = self.dirMenu.addAction(
251 self.trUtf8('Remove from project'), self._removeDir) 251 self.tr('Remove from project'), self._removeDir)
252 self.dirMenuActions.append(act) 252 self.dirMenuActions.append(act)
253 act = self.dirMenu.addAction( 253 act = self.dirMenu.addAction(
254 self.trUtf8('Delete'), self._deleteDirectory) 254 self.tr('Delete'), self._deleteDirectory)
255 self.dirMenuActions.append(act) 255 self.dirMenuActions.append(act)
256 self.dirMenu.addSeparator() 256 self.dirMenu.addSeparator()
257 self.dirMenu.addAction( 257 self.dirMenu.addAction(
258 self.trUtf8('New package...'), self.__addNewPackage) 258 self.tr('New package...'), self.__addNewPackage)
259 self.dirMenu.addAction( 259 self.dirMenu.addAction(
260 self.trUtf8('Add source files...'), self.__addSourceFiles) 260 self.tr('Add source files...'), self.__addSourceFiles)
261 self.dirMenu.addAction( 261 self.dirMenu.addAction(
262 self.trUtf8('Add source directory...'), self.__addSourceDirectory) 262 self.tr('Add source directory...'), self.__addSourceDirectory)
263 self.dirMenu.addSeparator() 263 self.dirMenu.addSeparator()
264 act = self.dirMenu.addMenu(self.graphicsMenu) 264 act = self.dirMenu.addMenu(self.graphicsMenu)
265 self.dirMenu.addSeparator() 265 self.dirMenu.addSeparator()
266 self.dirMenu.addMenu(self.checksMenu) 266 self.dirMenu.addMenu(self.checksMenu)
267 self.dirMenu.addSeparator() 267 self.dirMenu.addSeparator()
268 self.dirMenu.addAction( 268 self.dirMenu.addAction(
269 self.trUtf8('Copy Path to Clipboard'), self._copyToClipboard) 269 self.tr('Copy Path to Clipboard'), self._copyToClipboard)
270 self.dirMenu.addSeparator() 270 self.dirMenu.addSeparator()
271 self.dirMenu.addAction( 271 self.dirMenu.addAction(
272 self.trUtf8('Expand all directories'), self._expandAllDirs) 272 self.tr('Expand all directories'), self._expandAllDirs)
273 self.dirMenu.addAction( 273 self.dirMenu.addAction(
274 self.trUtf8('Collapse all directories'), self._collapseAllDirs) 274 self.tr('Collapse all directories'), self._collapseAllDirs)
275 self.dirMenu.addSeparator() 275 self.dirMenu.addSeparator()
276 self.dirMenu.addAction(self.trUtf8('Configure...'), self._configure) 276 self.dirMenu.addAction(self.tr('Configure...'), self._configure)
277 277
278 self.dirMultiMenu = QMenu(self) 278 self.dirMultiMenu = QMenu(self)
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.sourceMenu.aboutToShow.connect(self.__showContextMenu) 287 self.sourceMenu.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)
293 293
294 def __createRubyPopupMenus(self): 294 def __createRubyPopupMenus(self):
295 """ 295 """
296 Privat method to generate the popup menus for a Ruby project. 296 Privat method to generate the popup menus for a Ruby project.
297 """ 297 """
298 self.graphicsMenu = QMenu(self.trUtf8('Diagrams')) 298 self.graphicsMenu = QMenu(self.tr('Diagrams'))
299 self.classDiagramAction = self.graphicsMenu.addAction( 299 self.classDiagramAction = self.graphicsMenu.addAction(
300 self.trUtf8("Class Diagram..."), self.__showClassDiagram) 300 self.tr("Class Diagram..."), self.__showClassDiagram)
301 self.graphicsMenu.addAction( 301 self.graphicsMenu.addAction(
302 self.trUtf8("Package Diagram..."), self.__showPackageDiagram) 302 self.tr("Package Diagram..."), self.__showPackageDiagram)
303 self.graphicsMenu.addAction( 303 self.graphicsMenu.addAction(
304 self.trUtf8("Application Diagram..."), 304 self.tr("Application Diagram..."),
305 self.__showApplicationDiagram) 305 self.__showApplicationDiagram)
306 self.graphicsMenu.addSeparator() 306 self.graphicsMenu.addSeparator()
307 self.graphicsMenu.addAction( 307 self.graphicsMenu.addAction(
308 UI.PixmapCache.getIcon("fileOpen.png"), 308 UI.PixmapCache.getIcon("fileOpen.png"),
309 self.trUtf8("Load Diagram..."), self.__loadDiagram) 309 self.tr("Load Diagram..."), self.__loadDiagram)
310 310
311 self.sourceMenu.addSeparator() 311 self.sourceMenu.addSeparator()
312 act = self.sourceMenu.addAction( 312 act = self.sourceMenu.addAction(
313 self.trUtf8('Rename file'), self._renameFile) 313 self.tr('Rename file'), self._renameFile)
314 self.menuActions.append(act) 314 self.menuActions.append(act)
315 act = self.sourceMenu.addAction( 315 act = self.sourceMenu.addAction(
316 self.trUtf8('Remove from project'), self._removeFile) 316 self.tr('Remove from project'), self._removeFile)
317 self.menuActions.append(act) 317 self.menuActions.append(act)
318 act = self.sourceMenu.addAction( 318 act = self.sourceMenu.addAction(
319 self.trUtf8('Delete'), self.__deleteFile) 319 self.tr('Delete'), self.__deleteFile)
320 self.menuActions.append(act) 320 self.menuActions.append(act)
321 self.sourceMenu.addSeparator() 321 self.sourceMenu.addSeparator()
322 self.sourceMenu.addAction( 322 self.sourceMenu.addAction(
323 self.trUtf8('Add source files...'), self.__addSourceFiles) 323 self.tr('Add source files...'), self.__addSourceFiles)
324 self.sourceMenu.addAction( 324 self.sourceMenu.addAction(
325 self.trUtf8('Add source directory...'), self.__addSourceDirectory) 325 self.tr('Add source directory...'), self.__addSourceDirectory)
326 self.sourceMenu.addSeparator() 326 self.sourceMenu.addSeparator()
327 act = self.sourceMenu.addMenu(self.graphicsMenu) 327 act = self.sourceMenu.addMenu(self.graphicsMenu)
328 self.sourceMenu.addSeparator() 328 self.sourceMenu.addSeparator()
329 self.sourceMenu.addAction( 329 self.sourceMenu.addAction(
330 self.trUtf8('Expand all directories'), self._expandAllDirs) 330 self.tr('Expand all directories'), self._expandAllDirs)
331 self.sourceMenu.addAction( 331 self.sourceMenu.addAction(
332 self.trUtf8('Collapse all directories'), self._collapseAllDirs) 332 self.tr('Collapse all directories'), self._collapseAllDirs)
333 self.sourceMenu.addSeparator() 333 self.sourceMenu.addSeparator()
334 self.sourceMenu.addAction(self.trUtf8('Configure...'), self._configure) 334 self.sourceMenu.addAction(self.tr('Configure...'), self._configure)
335 335
336 self.menu.addSeparator() 336 self.menu.addSeparator()
337 self.menu.addAction( 337 self.menu.addAction(
338 self.trUtf8('Add source files...'), self.__addSourceFiles) 338 self.tr('Add source files...'), self.__addSourceFiles)
339 self.menu.addAction( 339 self.menu.addAction(
340 self.trUtf8('Add source directory...'), self.__addSourceDirectory) 340 self.tr('Add source directory...'), self.__addSourceDirectory)
341 self.menu.addSeparator() 341 self.menu.addSeparator()
342 self.menu.addAction( 342 self.menu.addAction(
343 self.trUtf8('Expand all directories'), self._expandAllDirs) 343 self.tr('Expand all directories'), self._expandAllDirs)
344 self.menu.addAction( 344 self.menu.addAction(
345 self.trUtf8('Collapse all directories'), self._collapseAllDirs) 345 self.tr('Collapse all directories'), self._collapseAllDirs)
346 self.menu.addSeparator() 346 self.menu.addSeparator()
347 self.menu.addAction(self.trUtf8('Configure...'), self._configure) 347 self.menu.addAction(self.tr('Configure...'), self._configure)
348 348
349 # create the attribute menu 349 # create the attribute menu
350 self.gotoMenu = QMenu(self.trUtf8("Goto"), self) 350 self.gotoMenu = QMenu(self.tr("Goto"), self)
351 self.gotoMenu.aboutToShow.connect(self._showGotoMenu) 351 self.gotoMenu.aboutToShow.connect(self._showGotoMenu)
352 self.gotoMenu.triggered.connect(self._gotoAttribute) 352 self.gotoMenu.triggered.connect(self._gotoAttribute)
353 353
354 self.attributeMenu = QMenu(self) 354 self.attributeMenu = QMenu(self)
355 self.attributeMenu.addMenu(self.gotoMenu) 355 self.attributeMenu.addMenu(self.gotoMenu)
356 self.attributeMenu.addSeparator() 356 self.attributeMenu.addSeparator()
357 self.attributeMenu.addAction( 357 self.attributeMenu.addAction(
358 self.trUtf8('New package...'), self.__addNewPackage) 358 self.tr('New package...'), self.__addNewPackage)
359 self.attributeMenu.addAction( 359 self.attributeMenu.addAction(
360 self.trUtf8('Add source files...'), self.project.addSourceFiles) 360 self.tr('Add source files...'), self.project.addSourceFiles)
361 self.attributeMenu.addAction( 361 self.attributeMenu.addAction(
362 self.trUtf8('Add source directory...'), self.project.addSourceDir) 362 self.tr('Add source directory...'), self.project.addSourceDir)
363 self.attributeMenu.addSeparator() 363 self.attributeMenu.addSeparator()
364 self.attributeMenu.addAction( 364 self.attributeMenu.addAction(
365 self.trUtf8('Expand all directories'), self._expandAllDirs) 365 self.tr('Expand all directories'), self._expandAllDirs)
366 self.attributeMenu.addAction( 366 self.attributeMenu.addAction(
367 self.trUtf8('Collapse all directories'), self._collapseAllDirs) 367 self.tr('Collapse all directories'), self._collapseAllDirs)
368 self.attributeMenu.addSeparator() 368 self.attributeMenu.addSeparator()
369 self.attributeMenu.addAction( 369 self.attributeMenu.addAction(
370 self.trUtf8('Configure...'), self._configure) 370 self.tr('Configure...'), self._configure)
371 371
372 self.backMenu = QMenu(self) 372 self.backMenu = QMenu(self)
373 self.backMenu.addAction( 373 self.backMenu.addAction(
374 self.trUtf8('Add source files...'), self.project.addSourceFiles) 374 self.tr('Add source files...'), self.project.addSourceFiles)
375 self.backMenu.addAction( 375 self.backMenu.addAction(
376 self.trUtf8('Add source directory...'), self.project.addSourceDir) 376 self.tr('Add source directory...'), self.project.addSourceDir)
377 self.backMenu.addSeparator() 377 self.backMenu.addSeparator()
378 self.backMenu.addAction( 378 self.backMenu.addAction(
379 self.trUtf8('Expand all directories'), self._expandAllDirs) 379 self.tr('Expand all directories'), self._expandAllDirs)
380 self.backMenu.addAction( 380 self.backMenu.addAction(
381 self.trUtf8('Collapse all directories'), self._collapseAllDirs) 381 self.tr('Collapse all directories'), self._collapseAllDirs)
382 self.backMenu.setEnabled(False) 382 self.backMenu.setEnabled(False)
383 self.backMenu.addSeparator() 383 self.backMenu.addSeparator()
384 self.backMenu.addAction(self.trUtf8('Configure...'), self._configure) 384 self.backMenu.addAction(self.tr('Configure...'), self._configure)
385 385
386 self.multiMenu.addSeparator() 386 self.multiMenu.addSeparator()
387 act = self.multiMenu.addAction( 387 act = self.multiMenu.addAction(
388 self.trUtf8('Remove from project'), self._removeFile) 388 self.tr('Remove from project'), self._removeFile)
389 self.multiMenuActions.append(act) 389 self.multiMenuActions.append(act)
390 act = self.multiMenu.addAction( 390 act = self.multiMenu.addAction(
391 self.trUtf8('Delete'), self.__deleteFile) 391 self.tr('Delete'), self.__deleteFile)
392 self.multiMenuActions.append(act) 392 self.multiMenuActions.append(act)
393 self.multiMenu.addSeparator() 393 self.multiMenu.addSeparator()
394 self.multiMenu.addAction( 394 self.multiMenu.addAction(
395 self.trUtf8('Expand all directories'), self._expandAllDirs) 395 self.tr('Expand all directories'), self._expandAllDirs)
396 self.multiMenu.addAction( 396 self.multiMenu.addAction(
397 self.trUtf8('Collapse all directories'), self._collapseAllDirs) 397 self.tr('Collapse all directories'), self._collapseAllDirs)
398 self.multiMenu.addSeparator() 398 self.multiMenu.addSeparator()
399 self.multiMenu.addAction(self.trUtf8('Configure...'), self._configure) 399 self.multiMenu.addAction(self.tr('Configure...'), self._configure)
400 400
401 self.dirMenu = QMenu(self) 401 self.dirMenu = QMenu(self)
402 act = self.dirMenu.addAction( 402 act = self.dirMenu.addAction(
403 self.trUtf8('Remove from project'), self._removeDir) 403 self.tr('Remove from project'), self._removeDir)
404 self.dirMenuActions.append(act) 404 self.dirMenuActions.append(act)
405 self.dirMenu.addSeparator() 405 self.dirMenu.addSeparator()
406 self.dirMenu.addAction( 406 self.dirMenu.addAction(
407 self.trUtf8('Add source files...'), self.__addSourceFiles) 407 self.tr('Add source files...'), self.__addSourceFiles)
408 self.dirMenu.addAction( 408 self.dirMenu.addAction(
409 self.trUtf8('Add source directory...'), self.__addSourceDirectory) 409 self.tr('Add source directory...'), self.__addSourceDirectory)
410 self.dirMenu.addSeparator() 410 self.dirMenu.addSeparator()
411 act = self.dirMenu.addMenu(self.graphicsMenu) 411 act = self.dirMenu.addMenu(self.graphicsMenu)
412 self.dirMenu.addSeparator() 412 self.dirMenu.addSeparator()
413 self.dirMenu.addAction( 413 self.dirMenu.addAction(
414 self.trUtf8('Expand all directories'), self._expandAllDirs) 414 self.tr('Expand all directories'), self._expandAllDirs)
415 self.dirMenu.addAction( 415 self.dirMenu.addAction(
416 self.trUtf8('Collapse all directories'), self._collapseAllDirs) 416 self.tr('Collapse all directories'), self._collapseAllDirs)
417 self.dirMenu.addSeparator() 417 self.dirMenu.addSeparator()
418 self.dirMenu.addAction(self.trUtf8('Configure...'), self._configure) 418 self.dirMenu.addAction(self.tr('Configure...'), self._configure)
419 419
420 self.dirMultiMenu = QMenu(self) 420 self.dirMultiMenu = QMenu(self)
421 self.dirMultiMenu.addAction( 421 self.dirMultiMenu.addAction(
422 self.trUtf8('Expand all directories'), self._expandAllDirs) 422 self.tr('Expand all directories'), self._expandAllDirs)
423 self.dirMultiMenu.addAction( 423 self.dirMultiMenu.addAction(
424 self.trUtf8('Collapse all directories'), self._collapseAllDirs) 424 self.tr('Collapse all directories'), self._collapseAllDirs)
425 self.dirMultiMenu.addSeparator() 425 self.dirMultiMenu.addSeparator()
426 self.dirMultiMenu.addAction( 426 self.dirMultiMenu.addAction(
427 self.trUtf8('Configure...'), self._configure) 427 self.tr('Configure...'), self._configure)
428 428
429 self.sourceMenu.aboutToShow.connect(self.__showContextMenu) 429 self.sourceMenu.aboutToShow.connect(self.__showContextMenu)
430 self.multiMenu.aboutToShow.connect(self.__showContextMenuMulti) 430 self.multiMenu.aboutToShow.connect(self.__showContextMenuMulti)
431 self.dirMenu.aboutToShow.connect(self.__showContextMenuDir) 431 self.dirMenu.aboutToShow.connect(self.__showContextMenuDir)
432 self.dirMultiMenu.aboutToShow.connect(self.__showContextMenuDirMulti) 432 self.dirMultiMenu.aboutToShow.connect(self.__showContextMenuDirMulti)
661 try: 661 try:
662 os.mkdir(packagePath) 662 os.mkdir(packagePath)
663 except OSError as err: 663 except OSError as err:
664 E5MessageBox.critical( 664 E5MessageBox.critical(
665 self, 665 self,
666 self.trUtf8("Add new Python package"), 666 self.tr("Add new Python package"),
667 self.trUtf8( 667 self.tr(
668 """<p>The package directory <b>{0}</b> could""" 668 """<p>The package directory <b>{0}</b> could"""
669 """ not be created. Aborting...</p>""" 669 """ not be created. Aborting...</p>"""
670 """<p>Reason: {1}</p>""") 670 """<p>Reason: {1}</p>""")
671 .format(packagePath, str(err))) 671 .format(packagePath, str(err)))
672 return 672 return
676 f = open(packageFile, "w", encoding="utf-8") 676 f = open(packageFile, "w", encoding="utf-8")
677 f.close() 677 f.close()
678 except IOError as err: 678 except IOError as err:
679 E5MessageBox.critical( 679 E5MessageBox.critical(
680 self, 680 self,
681 self.trUtf8("Add new Python package"), 681 self.tr("Add new Python package"),
682 self.trUtf8( 682 self.tr(
683 """<p>The package file <b>{0}</b> could""" 683 """<p>The package file <b>{0}</b> could"""
684 """ not be created. Aborting...</p>""" 684 """ not be created. Aborting...</p>"""
685 """<p>Reason: {1}</p>""") 685 """<p>Reason: {1}</p>""")
686 .format(packageFile, str(err))) 686 .format(packageFile, str(err)))
687 return 687 return
737 737
738 from UI.DeleteFilesConfirmationDialog import \ 738 from UI.DeleteFilesConfirmationDialog import \
739 DeleteFilesConfirmationDialog 739 DeleteFilesConfirmationDialog
740 dlg = DeleteFilesConfirmationDialog( 740 dlg = DeleteFilesConfirmationDialog(
741 self.parent(), 741 self.parent(),
742 self.trUtf8("Delete files"), 742 self.tr("Delete files"),
743 self.trUtf8( 743 self.tr(
744 "Do you really want to delete these files from the project?"), 744 "Do you really want to delete these files from the project?"),
745 files) 745 files)
746 746
747 if dlg.exec_() == QDialog.Accepted: 747 if dlg.exec_() == QDialog.Accepted:
748 for fn2, fn in zip(fullNames, files): 748 for fn2, fn in zip(fullNames, files):
811 811
812 if files: 812 if files:
813 if len(files) > 1: 813 if len(files) > 1:
814 pfn, ok = QInputDialog.getItem( 814 pfn, ok = QInputDialog.getItem(
815 None, 815 None,
816 self.trUtf8("Code Coverage"), 816 self.tr("Code Coverage"),
817 self.trUtf8("Please select a coverage file"), 817 self.tr("Please select a coverage file"),
818 files, 818 files,
819 0, False) 819 0, False)
820 if not ok: 820 if not ok:
821 return 821 return
822 else: 822 else:
865 865
866 if files: 866 if files:
867 if len(files) > 1: 867 if len(files) > 1:
868 pfn, ok = QInputDialog.getItem( 868 pfn, ok = QInputDialog.getItem(
869 None, 869 None,
870 self.trUtf8("Profile Data"), 870 self.tr("Profile Data"),
871 self.trUtf8("Please select a profile file"), 871 self.tr("Please select a profile file"),
872 files, 872 files,
873 0, False) 873 0, False)
874 if not ok: 874 if not ok:
875 return 875 return
876 else: 876 else:
902 fn = itm.fileName() 902 fn = itm.fileName()
903 except AttributeError: 903 except AttributeError:
904 fn = itm.dirName() 904 fn = itm.dirName()
905 res = E5MessageBox.yesNo( 905 res = E5MessageBox.yesNo(
906 self, 906 self,
907 self.trUtf8("Class Diagram"), 907 self.tr("Class Diagram"),
908 self.trUtf8("""Include class attributes?"""), 908 self.tr("""Include class attributes?"""),
909 yesDefault=True) 909 yesDefault=True)
910 from Graphics.UMLDialog import UMLDialog 910 from Graphics.UMLDialog import UMLDialog
911 self.classDiagram = UMLDialog(UMLDialog.ClassDiagram, self.project, fn, 911 self.classDiagram = UMLDialog(UMLDialog.ClassDiagram, self.project, fn,
912 self, noAttrs=not res) 912 self, noAttrs=not res)
913 self.classDiagram.show() 913 self.classDiagram.show()
922 except AttributeError: 922 except AttributeError:
923 fn = itm.dirName() 923 fn = itm.dirName()
924 package = os.path.isdir(fn) and fn or os.path.dirname(fn) 924 package = os.path.isdir(fn) and fn or os.path.dirname(fn)
925 res = E5MessageBox.yesNo( 925 res = E5MessageBox.yesNo(
926 self, 926 self,
927 self.trUtf8("Imports Diagram"), 927 self.tr("Imports Diagram"),
928 self.trUtf8("""Include imports from external modules?""")) 928 self.tr("""Include imports from external modules?"""))
929 from Graphics.UMLDialog import UMLDialog 929 from Graphics.UMLDialog import UMLDialog
930 self.importsDiagram = UMLDialog( 930 self.importsDiagram = UMLDialog(
931 UMLDialog.ImportsDiagram, self.project, package, 931 UMLDialog.ImportsDiagram, self.project, package,
932 self, showExternalImports=res) 932 self, showExternalImports=res)
933 self.importsDiagram.show() 933 self.importsDiagram.show()
942 except AttributeError: 942 except AttributeError:
943 fn = itm.dirName() 943 fn = itm.dirName()
944 package = os.path.isdir(fn) and fn or os.path.dirname(fn) 944 package = os.path.isdir(fn) and fn or os.path.dirname(fn)
945 res = E5MessageBox.yesNo( 945 res = E5MessageBox.yesNo(
946 self, 946 self,
947 self.trUtf8("Package Diagram"), 947 self.tr("Package Diagram"),
948 self.trUtf8("""Include class attributes?"""), 948 self.tr("""Include class attributes?"""),
949 yesDefault=True) 949 yesDefault=True)
950 from Graphics.UMLDialog import UMLDialog 950 from Graphics.UMLDialog import UMLDialog
951 self.packageDiagram = UMLDialog( 951 self.packageDiagram = UMLDialog(
952 UMLDialog.PackageDiagram, self.project, package, 952 UMLDialog.PackageDiagram, self.project, package,
953 self, noAttrs=not res) 953 self, noAttrs=not res)
957 """ 957 """
958 Private method to handle the application diagram context menu action. 958 Private method to handle the application diagram context menu action.
959 """ 959 """
960 res = E5MessageBox.yesNo( 960 res = E5MessageBox.yesNo(
961 self, 961 self,
962 self.trUtf8("Application Diagram"), 962 self.tr("Application Diagram"),
963 self.trUtf8("""Include module names?"""), 963 self.tr("""Include module names?"""),
964 yesDefault=True) 964 yesDefault=True)
965 from Graphics.UMLDialog import UMLDialog 965 from Graphics.UMLDialog import UMLDialog
966 self.applicationDiagram = UMLDialog( 966 self.applicationDiagram = UMLDialog(
967 UMLDialog.ApplicationDiagram, self.project, 967 UMLDialog.ApplicationDiagram, self.project,
968 self, noModules=not res) 968 self, noModules=not res)

eric ide

mercurial