187 self.menu.addAction(self.trUtf8('Collapse all directories'), |
187 self.menu.addAction(self.trUtf8('Collapse all directories'), |
188 self._collapseAllDirs) |
188 self._collapseAllDirs) |
189 self.menu.addSeparator() |
189 self.menu.addSeparator() |
190 self.menu.addAction(self.trUtf8('Configure...'), self._configure) |
190 self.menu.addAction(self.trUtf8('Configure...'), self._configure) |
191 |
191 |
|
192 # create the attribute menu |
|
193 self.gotoMenu = QMenu(self.trUtf8("Goto"), self) |
|
194 self.gotoMenu.aboutToShow.connect(self._showGotoMenu) |
|
195 self.gotoMenu.triggered.connect(self._gotoAttribute) |
|
196 |
|
197 self.attributeMenu = QMenu(self) |
|
198 self.attributeMenu.addMenu(self.gotoMenu) |
|
199 self.attributeMenu.addSeparator() |
|
200 self.attributeMenu.addAction(self.trUtf8('New package...'), |
|
201 self.__addNewPackage) |
|
202 self.attributeMenu.addAction(self.trUtf8('Add source files...'), |
|
203 self.project.addSourceFiles) |
|
204 self.attributeMenu.addAction(self.trUtf8('Add source directory...'), |
|
205 self.project.addSourceDir) |
|
206 self.attributeMenu.addSeparator() |
|
207 self.attributeMenu.addAction(self.trUtf8('Expand all directories'), |
|
208 self._expandAllDirs) |
|
209 self.attributeMenu.addAction(self.trUtf8('Collapse all directories'), |
|
210 self._collapseAllDirs) |
|
211 self.attributeMenu.addSeparator() |
|
212 self.attributeMenu.addAction(self.trUtf8('Configure...'), self._configure) |
|
213 |
192 self.backMenu = QMenu(self) |
214 self.backMenu = QMenu(self) |
193 self.backMenu.addAction(self.trUtf8('New package...'), |
215 self.backMenu.addAction(self.trUtf8('New package...'), |
194 self.__addNewPackage) |
216 self.__addNewPackage) |
195 self.backMenu.addAction(self.trUtf8('Add source files...'), |
217 self.backMenu.addAction(self.trUtf8('Add source files...'), |
196 self.project.addSourceFiles) |
218 self.project.addSourceFiles) |
302 self.menu.addAction(self.trUtf8('Collapse all directories'), |
324 self.menu.addAction(self.trUtf8('Collapse all directories'), |
303 self._collapseAllDirs) |
325 self._collapseAllDirs) |
304 self.menu.addSeparator() |
326 self.menu.addSeparator() |
305 self.menu.addAction(self.trUtf8('Configure...'), self._configure) |
327 self.menu.addAction(self.trUtf8('Configure...'), self._configure) |
306 |
328 |
|
329 # create the attribute menu |
|
330 self.gotoMenu = QMenu(self.trUtf8("Goto"), self) |
|
331 self.gotoMenu.aboutToShow.connect(self._showGotoMenu) |
|
332 self.gotoMenu.triggered.connect(self._gotoAttribute) |
|
333 |
|
334 self.attributeMenu = QMenu(self) |
|
335 self.attributeMenu.addMenu(self.gotoMenu) |
|
336 self.attributeMenu.addSeparator() |
|
337 self.attributeMenu.addAction(self.trUtf8('New package...'), |
|
338 self.__addNewPackage) |
|
339 self.attributeMenu.addAction(self.trUtf8('Add source files...'), |
|
340 self.project.addSourceFiles) |
|
341 self.attributeMenu.addAction(self.trUtf8('Add source directory...'), |
|
342 self.project.addSourceDir) |
|
343 self.attributeMenu.addSeparator() |
|
344 self.attributeMenu.addAction(self.trUtf8('Expand all directories'), |
|
345 self._expandAllDirs) |
|
346 self.attributeMenu.addAction(self.trUtf8('Collapse all directories'), |
|
347 self._collapseAllDirs) |
|
348 self.attributeMenu.addSeparator() |
|
349 self.attributeMenu.addAction(self.trUtf8('Configure...'), self._configure) |
|
350 |
307 self.backMenu = QMenu(self) |
351 self.backMenu = QMenu(self) |
308 self.backMenu.addAction(self.trUtf8('Add source files...'), |
352 self.backMenu.addAction(self.trUtf8('Add source files...'), |
309 self.project.addSourceFiles) |
353 self.project.addSourceFiles) |
310 self.backMenu.addAction(self.trUtf8('Add source directory...'), |
354 self.backMenu.addAction(self.trUtf8('Add source directory...'), |
311 self.project.addSourceDir) |
355 self.project.addSourceDir) |
374 return |
418 return |
375 |
419 |
376 try: |
420 try: |
377 categories = self.getSelectedItemsCountCategorized( |
421 categories = self.getSelectedItemsCountCategorized( |
378 [ProjectBrowserFileItem, BrowserClassItem, |
422 [ProjectBrowserFileItem, BrowserClassItem, |
379 BrowserMethodItem, ProjectBrowserSimpleDirectoryItem]) |
423 BrowserMethodItem, ProjectBrowserSimpleDirectoryItem, |
|
424 BrowserClassAttributeItem]) |
380 cnt = categories["sum"] |
425 cnt = categories["sum"] |
381 if cnt <= 1: |
426 if cnt <= 1: |
382 index = self.indexAt(coord) |
427 index = self.indexAt(coord) |
383 if index.isValid(): |
428 if index.isValid(): |
384 self._selectSingleItem(index) |
429 self._selectSingleItem(index) |
385 categories = self.getSelectedItemsCountCategorized( |
430 categories = self.getSelectedItemsCountCategorized( |
386 [ProjectBrowserFileItem, BrowserClassItem, |
431 [ProjectBrowserFileItem, BrowserClassItem, |
387 BrowserMethodItem, ProjectBrowserSimpleDirectoryItem]) |
432 BrowserMethodItem, ProjectBrowserSimpleDirectoryItem, |
|
433 BrowserClassAttributeItem]) |
388 cnt = categories["sum"] |
434 cnt = categories["sum"] |
389 |
435 |
390 bfcnt = categories[str(ProjectBrowserFileItem)] |
436 bfcnt = categories[str(ProjectBrowserFileItem)] |
391 cmcnt = categories[str(BrowserClassItem)] + \ |
437 cmcnt = categories[str(BrowserClassItem)] + \ |
392 categories[str(BrowserMethodItem)] |
438 categories[str(BrowserMethodItem)] + \ |
|
439 categories[str(BrowserClassAttributeItem)] |
393 sdcnt = categories[str(ProjectBrowserSimpleDirectoryItem)] |
440 sdcnt = categories[str(ProjectBrowserSimpleDirectoryItem)] |
394 if cnt > 1 and cnt == bfcnt: |
441 if cnt > 1 and cnt == bfcnt: |
395 self.multiMenu.popup(self.mapToGlobal(coord)) |
442 self.multiMenu.popup(self.mapToGlobal(coord)) |
396 elif cnt > 1 and cnt == sdcnt: |
443 elif cnt > 1 and cnt == sdcnt: |
397 self.dirMultiMenu.popup(self.mapToGlobal(coord)) |
444 self.dirMultiMenu.popup(self.mapToGlobal(coord)) |
427 self.checksMenu.menuAction().setEnabled(True) |
474 self.checksMenu.menuAction().setEnabled(True) |
428 self.sourceMenu.popup(self.mapToGlobal(coord)) |
475 self.sourceMenu.popup(self.mapToGlobal(coord)) |
429 elif isinstance(itm, BrowserClassItem) or \ |
476 elif isinstance(itm, BrowserClassItem) or \ |
430 isinstance(itm, BrowserMethodItem): |
477 isinstance(itm, BrowserMethodItem): |
431 self.menu.popup(self.mapToGlobal(coord)) |
478 self.menu.popup(self.mapToGlobal(coord)) |
|
479 elif isinstance(itm, BrowserClassAttributeItem): |
|
480 self.attributeMenu.popup(self.mapToGlobal(coord)) |
432 else: |
481 else: |
433 self.backMenu.popup(self.mapToGlobal(coord)) |
482 self.backMenu.popup(self.mapToGlobal(coord)) |
434 elif sdcnt == 1: |
483 elif sdcnt == 1: |
435 self.classDiagramAction.setEnabled(False) |
484 self.classDiagramAction.setEnabled(False) |
436 self.dirMenu.popup(self.mapToGlobal(coord)) |
485 self.dirMenu.popup(self.mapToGlobal(coord)) |