Project/ProjectSourcesBrowser.py

branch
Py2 comp.
changeset 3058
0a02c433f52d
parent 3057
10516539f238
parent 3030
4a0a82ddd9d2
child 3060
5883ce99ee12
equal deleted inserted replaced
3057:10516539f238 3058:0a02c433f52d
136 self.trUtf8("Imports Diagram..."), self.__showImportsDiagram) 136 self.trUtf8("Imports Diagram..."), self.__showImportsDiagram)
137 self.graphicsMenu.addAction( 137 self.graphicsMenu.addAction(
138 self.trUtf8("Application Diagram..."), 138 self.trUtf8("Application Diagram..."),
139 self.__showApplicationDiagram) 139 self.__showApplicationDiagram)
140 self.graphicsMenu.addSeparator() 140 self.graphicsMenu.addSeparator()
141 self.graphicsMenu.addAction(UI.PixmapCache.getIcon("open.png"), 141 self.graphicsMenu.addAction(
142 UI.PixmapCache.getIcon("open.png"),
142 self.trUtf8("Load Diagram..."), self.__loadDiagram) 143 self.trUtf8("Load Diagram..."), self.__loadDiagram)
143 self.graphicsMenu.aboutToShow.connect(self.__showContextMenuGraphics) 144 self.graphicsMenu.aboutToShow.connect(self.__showContextMenuGraphics)
144 145
145 self.unittestAction = self.sourceMenu.addAction( 146 self.unittestAction = self.sourceMenu.addAction(
146 self.trUtf8('Run unittest...'), self.handleUnittest) 147 self.trUtf8('Run unittest...'), self.handleUnittest)
147 self.sourceMenu.addSeparator() 148 self.sourceMenu.addSeparator()
148 act = self.sourceMenu.addAction( 149 act = self.sourceMenu.addAction(
149 self.trUtf8('Rename file'), self._renameFile) 150 self.trUtf8('Rename file'), self._renameFile)
150 self.menuActions.append(act) 151 self.menuActions.append(act)
151 act = self.sourceMenu.addAction(self.trUtf8('Remove from project'), 152 act = self.sourceMenu.addAction(
152 self._removeFile) 153 self.trUtf8('Remove from project'), self._removeFile)
153 self.menuActions.append(act) 154 self.menuActions.append(act)
154 act = self.sourceMenu.addAction( 155 act = self.sourceMenu.addAction(
155 self.trUtf8('Delete'), self.__deleteFile) 156 self.trUtf8('Delete'), self.__deleteFile)
156 self.menuActions.append(act) 157 self.menuActions.append(act)
157 self.sourceMenu.addSeparator() 158 self.sourceMenu.addSeparator()
158 self.sourceMenu.addAction(self.trUtf8('New package...'), 159 self.sourceMenu.addAction(
159 self.__addNewPackage) 160 self.trUtf8('New package...'), self.__addNewPackage)
160 self.sourceMenu.addAction(self.trUtf8('Add source files...'), 161 self.sourceMenu.addAction(
161 self.__addSourceFiles) 162 self.trUtf8('Add source files...'), self.__addSourceFiles)
162 self.sourceMenu.addAction(self.trUtf8('Add source directory...'), 163 self.sourceMenu.addAction(
163 self.__addSourceDirectory) 164 self.trUtf8('Add source directory...'), self.__addSourceDirectory)
164 self.sourceMenu.addSeparator() 165 self.sourceMenu.addSeparator()
165 act = self.sourceMenu.addMenu(self.graphicsMenu) 166 act = self.sourceMenu.addMenu(self.graphicsMenu)
166 self.sourceMenu.addSeparator() 167 self.sourceMenu.addSeparator()
167 self.sourceMenu.addMenu(self.checksMenu) 168 self.sourceMenu.addMenu(self.checksMenu)
168 self.sourceMenu.addSeparator() 169 self.sourceMenu.addSeparator()
169 self.sourceMenuActions["Show"] = \ 170 self.sourceMenuActions["Show"] = self.sourceMenu.addMenu(self.menuShow)
170 self.sourceMenu.addMenu(self.menuShow) 171 self.sourceMenu.addSeparator()
171 self.sourceMenu.addSeparator() 172 self.sourceMenu.addAction(
172 self.sourceMenu.addAction(self.trUtf8('Copy Path to Clipboard'), 173 self.trUtf8('Copy Path to Clipboard'), self._copyToClipboard)
173 self._copyToClipboard) 174 self.sourceMenu.addSeparator()
174 self.sourceMenu.addSeparator() 175 self.sourceMenu.addAction(
175 self.sourceMenu.addAction(self.trUtf8('Expand all directories'), 176 self.trUtf8('Expand all directories'), self._expandAllDirs)
176 self._expandAllDirs) 177 self.sourceMenu.addAction(
177 self.sourceMenu.addAction(self.trUtf8('Collapse all directories'), 178 self.trUtf8('Collapse all directories'), self._collapseAllDirs)
178 self._collapseAllDirs)
179 self.sourceMenu.addSeparator() 179 self.sourceMenu.addSeparator()
180 self.sourceMenu.addAction(self.trUtf8('Configure...'), self._configure) 180 self.sourceMenu.addAction(self.trUtf8('Configure...'), self._configure)
181 181
182 self.menu.addSeparator() 182 self.menu.addSeparator()
183 self.menu.addAction(self.trUtf8('New package...'), 183 self.menu.addAction(
184 self.__addNewPackage) 184 self.trUtf8('New package...'), self.__addNewPackage)
185 self.menu.addAction(self.trUtf8('Add source files...'), 185 self.menu.addAction(
186 self.__addSourceFiles) 186 self.trUtf8('Add source files...'), self.__addSourceFiles)
187 self.menu.addAction(self.trUtf8('Add source directory...'), 187 self.menu.addAction(
188 self.__addSourceDirectory) 188 self.trUtf8('Add source directory...'), self.__addSourceDirectory)
189 self.menu.addSeparator() 189 self.menu.addSeparator()
190 self.menu.addAction(self.trUtf8('Expand all directories'), 190 self.menu.addAction(
191 self._expandAllDirs) 191 self.trUtf8('Expand all directories'), self._expandAllDirs)
192 self.menu.addAction(self.trUtf8('Collapse all directories'), 192 self.menu.addAction(
193 self._collapseAllDirs) 193 self.trUtf8('Collapse all directories'), self._collapseAllDirs)
194 self.menu.addSeparator() 194 self.menu.addSeparator()
195 self.menu.addAction(self.trUtf8('Configure...'), self._configure) 195 self.menu.addAction(self.trUtf8('Configure...'), self._configure)
196 196
197 # create the attribute menu 197 # create the attribute menu
198 self.gotoMenu = QMenu(self.trUtf8("Goto"), self) 198 self.gotoMenu = QMenu(self.trUtf8("Goto"), self)
200 self.gotoMenu.triggered.connect(self._gotoAttribute) 200 self.gotoMenu.triggered.connect(self._gotoAttribute)
201 201
202 self.attributeMenu = QMenu(self) 202 self.attributeMenu = QMenu(self)
203 self.attributeMenu.addMenu(self.gotoMenu) 203 self.attributeMenu.addMenu(self.gotoMenu)
204 self.attributeMenu.addSeparator() 204 self.attributeMenu.addSeparator()
205 self.attributeMenu.addAction(self.trUtf8('New package...'), 205 self.attributeMenu.addAction(
206 self.__addNewPackage) 206 self.trUtf8('New package...'), self.__addNewPackage)
207 self.attributeMenu.addAction(self.trUtf8('Add source files...'), 207 self.attributeMenu.addAction(
208 self.project.addSourceFiles) 208 self.trUtf8('Add source files...'), self.project.addSourceFiles)
209 self.attributeMenu.addAction(self.trUtf8('Add source directory...'), 209 self.attributeMenu.addAction(
210 self.project.addSourceDir) 210 self.trUtf8('Add source directory...'), self.project.addSourceDir)
211 self.attributeMenu.addSeparator() 211 self.attributeMenu.addSeparator()
212 self.attributeMenu.addAction(self.trUtf8('Expand all directories'), 212 self.attributeMenu.addAction(
213 self._expandAllDirs) 213 self.trUtf8('Expand all directories'), self._expandAllDirs)
214 self.attributeMenu.addAction(self.trUtf8('Collapse all directories'), 214 self.attributeMenu.addAction(
215 self._collapseAllDirs) 215 self.trUtf8('Collapse all directories'), self._collapseAllDirs)
216 self.attributeMenu.addSeparator() 216 self.attributeMenu.addSeparator()
217 self.attributeMenu.addAction( 217 self.attributeMenu.addAction(
218 self.trUtf8('Configure...'), self._configure) 218 self.trUtf8('Configure...'), self._configure)
219 219
220 self.backMenu = QMenu(self) 220 self.backMenu = QMenu(self)
221 self.backMenu.addAction(self.trUtf8('New package...'), 221 self.backMenu.addAction(
222 self.__addNewPackage) 222 self.trUtf8('New package...'), self.__addNewPackage)
223 self.backMenu.addAction(self.trUtf8('Add source files...'), 223 self.backMenu.addAction(
224 self.project.addSourceFiles) 224 self.trUtf8('Add source files...'), self.project.addSourceFiles)
225 self.backMenu.addAction(self.trUtf8('Add source directory...'), 225 self.backMenu.addAction(
226 self.project.addSourceDir) 226 self.trUtf8('Add source directory...'), self.project.addSourceDir)
227 self.backMenu.addSeparator() 227 self.backMenu.addSeparator()
228 self.backMenu.addAction(self.trUtf8('Expand all directories'), 228 self.backMenu.addAction(
229 self._expandAllDirs) 229 self.trUtf8('Expand all directories'), self._expandAllDirs)
230 self.backMenu.addAction(self.trUtf8('Collapse all directories'), 230 self.backMenu.addAction(
231 self._collapseAllDirs) 231 self.trUtf8('Collapse all directories'), self._collapseAllDirs)
232 self.backMenu.addSeparator() 232 self.backMenu.addSeparator()
233 self.backMenu.addAction(self.trUtf8('Configure...'), self._configure) 233 self.backMenu.addAction(self.trUtf8('Configure...'), self._configure)
234 self.backMenu.setEnabled(False) 234 self.backMenu.setEnabled(False)
235 235
236 self.multiMenu.addSeparator() 236 self.multiMenu.addSeparator()
237 act = self.multiMenu.addAction(self.trUtf8('Remove from project'), 237 act = self.multiMenu.addAction(
238 self._removeFile) 238 self.trUtf8('Remove from project'), self._removeFile)
239 self.multiMenuActions.append(act) 239 self.multiMenuActions.append(act)
240 act = self.multiMenu.addAction( 240 act = self.multiMenu.addAction(
241 self.trUtf8('Delete'), self.__deleteFile) 241 self.trUtf8('Delete'), self.__deleteFile)
242 self.multiMenuActions.append(act) 242 self.multiMenuActions.append(act)
243 self.multiMenu.addSeparator() 243 self.multiMenu.addSeparator()
244 self.multiMenu.addAction(self.trUtf8('Expand all directories'), 244 self.multiMenu.addAction(
245 self._expandAllDirs) 245 self.trUtf8('Expand all directories'), self._expandAllDirs)
246 self.multiMenu.addAction(self.trUtf8('Collapse all directories'), 246 self.multiMenu.addAction(
247 self._collapseAllDirs) 247 self.trUtf8('Collapse all directories'), self._collapseAllDirs)
248 self.multiMenu.addSeparator() 248 self.multiMenu.addSeparator()
249 self.multiMenu.addAction(self.trUtf8('Configure...'), self._configure) 249 self.multiMenu.addAction(self.trUtf8('Configure...'), self._configure)
250 250
251 self.dirMenu = QMenu(self) 251 self.dirMenu = QMenu(self)
252 act = self.dirMenu.addAction( 252 act = self.dirMenu.addAction(
258 self.dirMenu.addSeparator() 258 self.dirMenu.addSeparator()
259 self.dirMenu.addAction( 259 self.dirMenu.addAction(
260 self.trUtf8('New package...'), self.__addNewPackage) 260 self.trUtf8('New package...'), self.__addNewPackage)
261 self.dirMenu.addAction( 261 self.dirMenu.addAction(
262 self.trUtf8('Add source files...'), self.__addSourceFiles) 262 self.trUtf8('Add source files...'), self.__addSourceFiles)
263 self.dirMenu.addAction(self.trUtf8('Add source directory...'), 263 self.dirMenu.addAction(
264 self.__addSourceDirectory) 264 self.trUtf8('Add source directory...'), self.__addSourceDirectory)
265 self.dirMenu.addSeparator() 265 self.dirMenu.addSeparator()
266 act = self.dirMenu.addMenu(self.graphicsMenu) 266 act = self.dirMenu.addMenu(self.graphicsMenu)
267 self.dirMenu.addSeparator() 267 self.dirMenu.addSeparator()
268 self.dirMenu.addMenu(self.checksMenu) 268 self.dirMenu.addMenu(self.checksMenu)
269 self.dirMenu.addSeparator() 269 self.dirMenu.addSeparator()
270 self.dirMenu.addAction(self.trUtf8('Copy Path to Clipboard'), 270 self.dirMenu.addAction(
271 self._copyToClipboard) 271 self.trUtf8('Copy Path to Clipboard'), self._copyToClipboard)
272 self.dirMenu.addSeparator() 272 self.dirMenu.addSeparator()
273 self.dirMenu.addAction(self.trUtf8('Expand all directories'), 273 self.dirMenu.addAction(
274 self._expandAllDirs) 274 self.trUtf8('Expand all directories'), self._expandAllDirs)
275 self.dirMenu.addAction(self.trUtf8('Collapse all directories'), 275 self.dirMenu.addAction(
276 self._collapseAllDirs) 276 self.trUtf8('Collapse all directories'), self._collapseAllDirs)
277 self.dirMenu.addSeparator() 277 self.dirMenu.addSeparator()
278 self.dirMenu.addAction(self.trUtf8('Configure...'), self._configure) 278 self.dirMenu.addAction(self.trUtf8('Configure...'), self._configure)
279 279
280 self.dirMultiMenu = QMenu(self) 280 self.dirMultiMenu = QMenu(self)
281 self.dirMultiMenu.addAction(self.trUtf8('Expand all directories'), 281 self.dirMultiMenu.addAction(
282 self._expandAllDirs) 282 self.trUtf8('Expand all directories'), self._expandAllDirs)
283 self.dirMultiMenu.addAction(self.trUtf8('Collapse all directories'), 283 self.dirMultiMenu.addAction(
284 self._collapseAllDirs) 284 self.trUtf8('Collapse all directories'), self._collapseAllDirs)
285 self.dirMultiMenu.addSeparator() 285 self.dirMultiMenu.addSeparator()
286 self.dirMultiMenu.addAction( 286 self.dirMultiMenu.addAction(
287 self.trUtf8('Configure...'), self._configure) 287 self.trUtf8('Configure...'), self._configure)
288 288
289 self.sourceMenu.aboutToShow.connect(self.__showContextMenu) 289 self.sourceMenu.aboutToShow.connect(self.__showContextMenu)
298 Privat method to generate the popup menus for a Ruby project. 298 Privat method to generate the popup menus for a Ruby project.
299 """ 299 """
300 self.graphicsMenu = QMenu(self.trUtf8('Diagrams')) 300 self.graphicsMenu = QMenu(self.trUtf8('Diagrams'))
301 self.classDiagramAction = self.graphicsMenu.addAction( 301 self.classDiagramAction = self.graphicsMenu.addAction(
302 self.trUtf8("Class Diagram..."), self.__showClassDiagram) 302 self.trUtf8("Class Diagram..."), self.__showClassDiagram)
303 self.graphicsMenu.addAction(self.trUtf8("Package Diagram..."), 303 self.graphicsMenu.addAction(
304 self.__showPackageDiagram) 304 self.trUtf8("Package Diagram..."), self.__showPackageDiagram)
305 self.graphicsMenu.addAction(self.trUtf8("Application Diagram..."), 305 self.graphicsMenu.addAction(
306 self.trUtf8("Application Diagram..."),
306 self.__showApplicationDiagram) 307 self.__showApplicationDiagram)
307 self.graphicsMenu.addSeparator() 308 self.graphicsMenu.addSeparator()
308 self.graphicsMenu.addAction(UI.PixmapCache.getIcon("fileOpen.png"), 309 self.graphicsMenu.addAction(
310 UI.PixmapCache.getIcon("fileOpen.png"),
309 self.trUtf8("Load Diagram..."), self.__loadDiagram) 311 self.trUtf8("Load Diagram..."), self.__loadDiagram)
310 312
311 self.sourceMenu.addSeparator() 313 self.sourceMenu.addSeparator()
312 act = self.sourceMenu.addAction( 314 act = self.sourceMenu.addAction(
313 self.trUtf8('Rename file'), self._renameFile) 315 self.trUtf8('Rename file'), self._renameFile)
314 self.menuActions.append(act) 316 self.menuActions.append(act)
315 act = self.sourceMenu.addAction(self.trUtf8('Remove from project'), 317 act = self.sourceMenu.addAction(
316 self._removeFile) 318 self.trUtf8('Remove from project'), self._removeFile)
317 self.menuActions.append(act) 319 self.menuActions.append(act)
318 act = self.sourceMenu.addAction( 320 act = self.sourceMenu.addAction(
319 self.trUtf8('Delete'), self.__deleteFile) 321 self.trUtf8('Delete'), self.__deleteFile)
320 self.menuActions.append(act) 322 self.menuActions.append(act)
321 self.sourceMenu.addSeparator() 323 self.sourceMenu.addSeparator()
322 self.sourceMenu.addAction(self.trUtf8('Add source files...'), 324 self.sourceMenu.addAction(
323 self.__addSourceFiles) 325 self.trUtf8('Add source files...'), self.__addSourceFiles)
324 self.sourceMenu.addAction(self.trUtf8('Add source directory...'), 326 self.sourceMenu.addAction(
325 self.__addSourceDirectory) 327 self.trUtf8('Add source directory...'), self.__addSourceDirectory)
326 self.sourceMenu.addSeparator() 328 self.sourceMenu.addSeparator()
327 act = self.sourceMenu.addMenu(self.graphicsMenu) 329 act = self.sourceMenu.addMenu(self.graphicsMenu)
328 self.sourceMenu.addSeparator() 330 self.sourceMenu.addSeparator()
329 self.sourceMenu.addAction(self.trUtf8('Expand all directories'), 331 self.sourceMenu.addAction(
330 self._expandAllDirs) 332 self.trUtf8('Expand all directories'), self._expandAllDirs)
331 self.sourceMenu.addAction(self.trUtf8('Collapse all directories'), 333 self.sourceMenu.addAction(
332 self._collapseAllDirs) 334 self.trUtf8('Collapse all directories'), self._collapseAllDirs)
333 self.sourceMenu.addSeparator() 335 self.sourceMenu.addSeparator()
334 self.sourceMenu.addAction(self.trUtf8('Configure...'), self._configure) 336 self.sourceMenu.addAction(self.trUtf8('Configure...'), self._configure)
335 337
336 self.menu.addSeparator() 338 self.menu.addSeparator()
337 self.menu.addAction( 339 self.menu.addAction(
338 self.trUtf8('Add source files...'), self.__addSourceFiles) 340 self.trUtf8('Add source files...'), self.__addSourceFiles)
339 self.menu.addAction(self.trUtf8('Add source directory...'), 341 self.menu.addAction(
340 self.__addSourceDirectory) 342 self.trUtf8('Add source directory...'), self.__addSourceDirectory)
341 self.menu.addSeparator() 343 self.menu.addSeparator()
342 self.menu.addAction(self.trUtf8('Expand all directories'), 344 self.menu.addAction(
343 self._expandAllDirs) 345 self.trUtf8('Expand all directories'), self._expandAllDirs)
344 self.menu.addAction(self.trUtf8('Collapse all directories'), 346 self.menu.addAction(
345 self._collapseAllDirs) 347 self.trUtf8('Collapse all directories'), self._collapseAllDirs)
346 self.menu.addSeparator() 348 self.menu.addSeparator()
347 self.menu.addAction(self.trUtf8('Configure...'), self._configure) 349 self.menu.addAction(self.trUtf8('Configure...'), self._configure)
348 350
349 # create the attribute menu 351 # create the attribute menu
350 self.gotoMenu = QMenu(self.trUtf8("Goto"), self) 352 self.gotoMenu = QMenu(self.trUtf8("Goto"), self)
352 self.gotoMenu.triggered.connect(self._gotoAttribute) 354 self.gotoMenu.triggered.connect(self._gotoAttribute)
353 355
354 self.attributeMenu = QMenu(self) 356 self.attributeMenu = QMenu(self)
355 self.attributeMenu.addMenu(self.gotoMenu) 357 self.attributeMenu.addMenu(self.gotoMenu)
356 self.attributeMenu.addSeparator() 358 self.attributeMenu.addSeparator()
357 self.attributeMenu.addAction(self.trUtf8('New package...'), 359 self.attributeMenu.addAction(
358 self.__addNewPackage) 360 self.trUtf8('New package...'), self.__addNewPackage)
359 self.attributeMenu.addAction(self.trUtf8('Add source files...'), 361 self.attributeMenu.addAction(
360 self.project.addSourceFiles) 362 self.trUtf8('Add source files...'), self.project.addSourceFiles)
361 self.attributeMenu.addAction(self.trUtf8('Add source directory...'), 363 self.attributeMenu.addAction(
362 self.project.addSourceDir) 364 self.trUtf8('Add source directory...'), self.project.addSourceDir)
363 self.attributeMenu.addSeparator() 365 self.attributeMenu.addSeparator()
364 self.attributeMenu.addAction(self.trUtf8('Expand all directories'), 366 self.attributeMenu.addAction(
365 self._expandAllDirs) 367 self.trUtf8('Expand all directories'), self._expandAllDirs)
366 self.attributeMenu.addAction(self.trUtf8('Collapse all directories'), 368 self.attributeMenu.addAction(
367 self._collapseAllDirs) 369 self.trUtf8('Collapse all directories'), self._collapseAllDirs)
368 self.attributeMenu.addSeparator() 370 self.attributeMenu.addSeparator()
369 self.attributeMenu.addAction( 371 self.attributeMenu.addAction(
370 self.trUtf8('Configure...'), self._configure) 372 self.trUtf8('Configure...'), self._configure)
371 373
372 self.backMenu = QMenu(self) 374 self.backMenu = QMenu(self)
373 self.backMenu.addAction(self.trUtf8('Add source files...'), 375 self.backMenu.addAction(
374 self.project.addSourceFiles) 376 self.trUtf8('Add source files...'), self.project.addSourceFiles)
375 self.backMenu.addAction(self.trUtf8('Add source directory...'), 377 self.backMenu.addAction(
376 self.project.addSourceDir) 378 self.trUtf8('Add source directory...'), self.project.addSourceDir)
377 self.backMenu.addSeparator() 379 self.backMenu.addSeparator()
378 self.backMenu.addAction(self.trUtf8('Expand all directories'), 380 self.backMenu.addAction(
379 self._expandAllDirs) 381 self.trUtf8('Expand all directories'), self._expandAllDirs)
380 self.backMenu.addAction(self.trUtf8('Collapse all directories'), 382 self.backMenu.addAction(
381 self._collapseAllDirs) 383 self.trUtf8('Collapse all directories'), self._collapseAllDirs)
382 self.backMenu.setEnabled(False) 384 self.backMenu.setEnabled(False)
383 self.backMenu.addSeparator() 385 self.backMenu.addSeparator()
384 self.backMenu.addAction(self.trUtf8('Configure...'), self._configure) 386 self.backMenu.addAction(self.trUtf8('Configure...'), self._configure)
385 387
386 self.multiMenu.addSeparator() 388 self.multiMenu.addSeparator()
387 act = self.multiMenu.addAction(self.trUtf8('Remove from project'), 389 act = self.multiMenu.addAction(
388 self._removeFile) 390 self.trUtf8('Remove from project'), self._removeFile)
389 self.multiMenuActions.append(act) 391 self.multiMenuActions.append(act)
390 act = self.multiMenu.addAction( 392 act = self.multiMenu.addAction(
391 self.trUtf8('Delete'), self.__deleteFile) 393 self.trUtf8('Delete'), self.__deleteFile)
392 self.multiMenuActions.append(act) 394 self.multiMenuActions.append(act)
393 self.multiMenu.addSeparator() 395 self.multiMenu.addSeparator()
394 self.multiMenu.addAction(self.trUtf8('Expand all directories'), 396 self.multiMenu.addAction(
395 self._expandAllDirs) 397 self.trUtf8('Expand all directories'), self._expandAllDirs)
396 self.multiMenu.addAction(self.trUtf8('Collapse all directories'), 398 self.multiMenu.addAction(
397 self._collapseAllDirs) 399 self.trUtf8('Collapse all directories'), self._collapseAllDirs)
398 self.multiMenu.addSeparator() 400 self.multiMenu.addSeparator()
399 self.multiMenu.addAction(self.trUtf8('Configure...'), self._configure) 401 self.multiMenu.addAction(self.trUtf8('Configure...'), self._configure)
400 402
401 self.dirMenu = QMenu(self) 403 self.dirMenu = QMenu(self)
402 act = self.dirMenu.addAction( 404 act = self.dirMenu.addAction(
403 self.trUtf8('Remove from project'), self._removeDir) 405 self.trUtf8('Remove from project'), self._removeDir)
404 self.dirMenuActions.append(act) 406 self.dirMenuActions.append(act)
405 self.dirMenu.addSeparator() 407 self.dirMenu.addSeparator()
406 self.dirMenu.addAction( 408 self.dirMenu.addAction(
407 self.trUtf8('Add source files...'), self.__addSourceFiles) 409 self.trUtf8('Add source files...'), self.__addSourceFiles)
408 self.dirMenu.addAction(self.trUtf8('Add source directory...'), 410 self.dirMenu.addAction(
409 self.__addSourceDirectory) 411 self.trUtf8('Add source directory...'), self.__addSourceDirectory)
410 self.dirMenu.addSeparator() 412 self.dirMenu.addSeparator()
411 act = self.dirMenu.addMenu(self.graphicsMenu) 413 act = self.dirMenu.addMenu(self.graphicsMenu)
412 self.dirMenu.addSeparator() 414 self.dirMenu.addSeparator()
413 self.dirMenu.addAction(self.trUtf8('Expand all directories'), 415 self.dirMenu.addAction(
414 self._expandAllDirs) 416 self.trUtf8('Expand all directories'), self._expandAllDirs)
415 self.dirMenu.addAction(self.trUtf8('Collapse all directories'), 417 self.dirMenu.addAction(
416 self._collapseAllDirs) 418 self.trUtf8('Collapse all directories'), self._collapseAllDirs)
417 self.dirMenu.addSeparator() 419 self.dirMenu.addSeparator()
418 self.dirMenu.addAction(self.trUtf8('Configure...'), self._configure) 420 self.dirMenu.addAction(self.trUtf8('Configure...'), self._configure)
419 421
420 self.dirMultiMenu = QMenu(self) 422 self.dirMultiMenu = QMenu(self)
421 self.dirMultiMenu.addAction(self.trUtf8('Expand all directories'), 423 self.dirMultiMenu.addAction(
422 self._expandAllDirs) 424 self.trUtf8('Expand all directories'), self._expandAllDirs)
423 self.dirMultiMenu.addAction(self.trUtf8('Collapse all directories'), 425 self.dirMultiMenu.addAction(
424 self._collapseAllDirs) 426 self.trUtf8('Collapse all directories'), self._collapseAllDirs)
425 self.dirMultiMenu.addSeparator() 427 self.dirMultiMenu.addSeparator()
426 self.dirMultiMenu.addAction( 428 self.dirMultiMenu.addAction(
427 self.trUtf8('Configure...'), self._configure) 429 self.trUtf8('Configure...'), self._configure)
428 430
429 self.sourceMenu.aboutToShow.connect(self.__showContextMenu) 431 self.sourceMenu.aboutToShow.connect(self.__showContextMenu)
576 tbasename = os.path.splitext(tfn)[0] 578 tbasename = os.path.splitext(tfn)[0]
577 prEnable = prEnable or \ 579 prEnable = prEnable or \
578 os.path.isfile("{0}.profile".format(basename)) or \ 580 os.path.isfile("{0}.profile".format(basename)) or \
579 os.path.isfile("{0}.profile".format(tbasename)) 581 os.path.isfile("{0}.profile".format(tbasename))
580 coEnable = (coEnable or \ 582 coEnable = (coEnable or \
581 os.path.isfile("{0}.coverage".format(basename)) or \ 583 os.path.isfile("{0}.coverage".format(basename)) or \
582 os.path.isfile("{0}.coverage".format(tbasename))) and \ 584 os.path.isfile("{0}.coverage".format(tbasename))) and \
583 self.project.isPy3Project() 585 self.project.isPy3Project()
584 586
585 # now check the selected item 587 # now check the selected item
586 itm = self.model().item(self.currentIndex()) 588 itm = self.model().item(self.currentIndex())
587 fn = itm.fileName() 589 fn = itm.fileName()
588 if fn is not None: 590 if fn is not None:
589 basename = os.path.splitext(fn)[0] 591 basename = os.path.splitext(fn)[0]
590 prEnable = prEnable or \ 592 prEnable = prEnable or \
591 os.path.isfile("{0}.profile".format(basename)) 593 os.path.isfile("{0}.profile".format(basename))
592 coEnable = (coEnable or \ 594 coEnable = (coEnable or \
593 os.path.isfile("{0}.coverage".format(basename))) and \ 595 os.path.isfile("{0}.coverage".format(basename))) and \
594 itm.isPython3File() 596 itm.isPython3File()
595 597
596 self.profileMenuAction.setEnabled(prEnable) 598 self.profileMenuAction.setEnabled(prEnable)
597 self.coverageMenuAction.setEnabled(coEnable) 599 self.coverageMenuAction.setEnabled(coEnable)
598 600
659 packagePath = os.path.join(packagePath, name) 661 packagePath = os.path.join(packagePath, name)
660 if not os.path.exists(packagePath): 662 if not os.path.exists(packagePath):
661 try: 663 try:
662 os.mkdir(packagePath) 664 os.mkdir(packagePath)
663 except OSError as err: 665 except OSError as err:
664 E5MessageBox.critical(self, 666 E5MessageBox.critical(
667 self,
665 self.trUtf8("Add new Python package"), 668 self.trUtf8("Add new Python package"),
666 self.trUtf8( 669 self.trUtf8(
667 """<p>The package directory <b>{0}</b> could""" 670 """<p>The package directory <b>{0}</b> could"""
668 """ not be created. Aborting...</p>""" 671 """ not be created. Aborting...</p>"""
669 """<p>Reason: {1}</p>""")\ 672 """<p>Reason: {1}</p>""")\
673 if not os.path.exists(packageFile): 676 if not os.path.exists(packageFile):
674 try: 677 try:
675 f = open(packageFile, "w", encoding="utf-8") 678 f = open(packageFile, "w", encoding="utf-8")
676 f.close() 679 f.close()
677 except IOError as err: 680 except IOError as err:
678 E5MessageBox.critical(self, 681 E5MessageBox.critical(
682 self,
679 self.trUtf8("Add new Python package"), 683 self.trUtf8("Add new Python package"),
680 self.trUtf8( 684 self.trUtf8(
681 """<p>The package file <b>{0}</b> could""" 685 """<p>The package file <b>{0}</b> could"""
682 """ not be created. Aborting...</p>""" 686 """ not be created. Aborting...</p>"""
683 """<p>Reason: {1}</p>""")\ 687 """<p>Reason: {1}</p>""")\
733 fn = self.project.getRelativePath(fn2) 737 fn = self.project.getRelativePath(fn2)
734 files.append(fn) 738 files.append(fn)
735 739
736 from UI.DeleteFilesConfirmationDialog import \ 740 from UI.DeleteFilesConfirmationDialog import \
737 DeleteFilesConfirmationDialog 741 DeleteFilesConfirmationDialog
738 dlg = DeleteFilesConfirmationDialog(self.parent(), 742 dlg = DeleteFilesConfirmationDialog(
743 self.parent(),
739 self.trUtf8("Delete files"), 744 self.trUtf8("Delete files"),
740 self.trUtf8( 745 self.trUtf8(
741 "Do you really want to delete these files from the project?"), 746 "Do you really want to delete these files from the project?"),
742 files) 747 files)
743 748
897 itm = self.model().item(self.currentIndex()) 902 itm = self.model().item(self.currentIndex())
898 try: 903 try:
899 fn = itm.fileName() 904 fn = itm.fileName()
900 except AttributeError: 905 except AttributeError:
901 fn = itm.dirName() 906 fn = itm.dirName()
902 res = E5MessageBox.yesNo(self, 907 res = E5MessageBox.yesNo(
908 self,
903 self.trUtf8("Class Diagram"), 909 self.trUtf8("Class Diagram"),
904 self.trUtf8("""Include class attributes?"""), 910 self.trUtf8("""Include class attributes?"""),
905 yesDefault=True) 911 yesDefault=True)
906 from Graphics.UMLDialog import UMLDialog 912 from Graphics.UMLDialog import UMLDialog
907 self.classDiagram = UMLDialog(UMLDialog.ClassDiagram, self.project, fn, 913 self.classDiagram = UMLDialog(UMLDialog.ClassDiagram, self.project, fn,
916 try: 922 try:
917 fn = itm.fileName() 923 fn = itm.fileName()
918 except AttributeError: 924 except AttributeError:
919 fn = itm.dirName() 925 fn = itm.dirName()
920 package = os.path.isdir(fn) and fn or os.path.dirname(fn) 926 package = os.path.isdir(fn) and fn or os.path.dirname(fn)
921 res = E5MessageBox.yesNo(self, 927 res = E5MessageBox.yesNo(
928 self,
922 self.trUtf8("Imports Diagram"), 929 self.trUtf8("Imports Diagram"),
923 self.trUtf8("""Include imports from external modules?""")) 930 self.trUtf8("""Include imports from external modules?"""))
924 from Graphics.UMLDialog import UMLDialog 931 from Graphics.UMLDialog import UMLDialog
925 self.importsDiagram = UMLDialog( 932 self.importsDiagram = UMLDialog(
926 UMLDialog.ImportsDiagram, self.project, package, 933 UMLDialog.ImportsDiagram, self.project, package,
935 try: 942 try:
936 fn = itm.fileName() 943 fn = itm.fileName()
937 except AttributeError: 944 except AttributeError:
938 fn = itm.dirName() 945 fn = itm.dirName()
939 package = os.path.isdir(fn) and fn or os.path.dirname(fn) 946 package = os.path.isdir(fn) and fn or os.path.dirname(fn)
940 res = E5MessageBox.yesNo(self, 947 res = E5MessageBox.yesNo(
948 self,
941 self.trUtf8("Package Diagram"), 949 self.trUtf8("Package Diagram"),
942 self.trUtf8("""Include class attributes?"""), 950 self.trUtf8("""Include class attributes?"""),
943 yesDefault=True) 951 yesDefault=True)
944 from Graphics.UMLDialog import UMLDialog 952 from Graphics.UMLDialog import UMLDialog
945 self.packageDiagram = UMLDialog( 953 self.packageDiagram = UMLDialog(
949 957
950 def __showApplicationDiagram(self): 958 def __showApplicationDiagram(self):
951 """ 959 """
952 Private method to handle the application diagram context menu action. 960 Private method to handle the application diagram context menu action.
953 """ 961 """
954 res = E5MessageBox.yesNo(self, 962 res = E5MessageBox.yesNo(
963 self,
955 self.trUtf8("Application Diagram"), 964 self.trUtf8("Application Diagram"),
956 self.trUtf8("""Include module names?"""), 965 self.trUtf8("""Include module names?"""),
957 yesDefault=True) 966 yesDefault=True)
958 from Graphics.UMLDialog import UMLDialog 967 from Graphics.UMLDialog import UMLDialog
959 self.applicationDiagram = UMLDialog( 968 self.applicationDiagram = UMLDialog(

eric ide

mercurial