Project/ProjectSourcesBrowser.py

changeset 3038
7fe9a53280bd
parent 3034
7ce719013078
child 3060
5883ce99ee12
child 3160
209a07d7e401
equal deleted inserted replaced
3037:a417a0670a36 3038:7fe9a53280bd
102 """ 102 """
103 ProjectBaseBrowser._createPopupMenus(self) 103 ProjectBaseBrowser._createPopupMenus(self)
104 self.sourceMenuActions = {} 104 self.sourceMenuActions = {}
105 105
106 if self.project.pdata["PROGLANGUAGE"][0] in \ 106 if self.project.pdata["PROGLANGUAGE"][0] in \
107 ["Python", "Python2", "Python3"]: 107 ["Python", "Python2", "Python3"]:
108 self.__createPythonPopupMenus() 108 self.__createPythonPopupMenus()
109 elif self.project.pdata["PROGLANGUAGE"][0] == "Ruby": 109 elif self.project.pdata["PROGLANGUAGE"][0] == "Ruby":
110 self.__createRubyPopupMenus() 110 self.__createRubyPopupMenus()
111 111
112 def __createPythonPopupMenus(self): 112 def __createPythonPopupMenus(self):
458 BrowserClassAttributeItem]) 458 BrowserClassAttributeItem])
459 cnt = categories["sum"] 459 cnt = categories["sum"]
460 460
461 bfcnt = categories[str(ProjectBrowserFileItem)] 461 bfcnt = categories[str(ProjectBrowserFileItem)]
462 cmcnt = categories[str(BrowserClassItem)] + \ 462 cmcnt = categories[str(BrowserClassItem)] + \
463 categories[str(BrowserMethodItem)] + \ 463 categories[str(BrowserMethodItem)] + \
464 categories[str(BrowserClassAttributeItem)] 464 categories[str(BrowserClassAttributeItem)]
465 sdcnt = categories[str(ProjectBrowserSimpleDirectoryItem)] 465 sdcnt = categories[str(ProjectBrowserSimpleDirectoryItem)]
466 if cnt > 1 and cnt == bfcnt: 466 if cnt > 1 and cnt == bfcnt:
467 self.multiMenu.popup(self.mapToGlobal(coord)) 467 self.multiMenu.popup(self.mapToGlobal(coord))
468 elif cnt > 1 and cnt == sdcnt: 468 elif cnt > 1 and cnt == sdcnt:
469 self.dirMultiMenu.popup(self.mapToGlobal(coord)) 469 self.dirMultiMenu.popup(self.mapToGlobal(coord))
638 if isinstance(itm, ProjectBrowserFileItem) or \ 638 if isinstance(itm, ProjectBrowserFileItem) or \
639 isinstance(itm, BrowserClassItem) or \ 639 isinstance(itm, BrowserClassItem) or \
640 isinstance(itm, BrowserMethodItem): 640 isinstance(itm, BrowserMethodItem):
641 dn = os.path.dirname(itm.fileName()) 641 dn = os.path.dirname(itm.fileName())
642 elif isinstance(itm, ProjectBrowserSimpleDirectoryItem) or \ 642 elif isinstance(itm, ProjectBrowserSimpleDirectoryItem) or \
643 isinstance(itm, ProjectBrowserDirectoryItem): 643 isinstance(itm, ProjectBrowserDirectoryItem):
644 dn = itm.dirName() 644 dn = itm.dirName()
645 else: 645 else:
646 dn = "" 646 dn = ""
647 647
648 dn = self.project.getRelativePath(dn) 648 dn = self.project.getRelativePath(dn)
666 self.trUtf8("Add new Python package"), 666 self.trUtf8("Add new Python package"),
667 self.trUtf8( 667 self.trUtf8(
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
673 packageFile = os.path.join(packagePath, "__init__.py") 673 packageFile = os.path.join(packagePath, "__init__.py")
674 if not os.path.exists(packageFile): 674 if not os.path.exists(packageFile):
675 try: 675 try:
676 f = open(packageFile, "w", encoding="utf-8") 676 f = open(packageFile, "w", encoding="utf-8")
681 self.trUtf8("Add new Python package"), 681 self.trUtf8("Add new Python package"),
682 self.trUtf8( 682 self.trUtf8(
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
688 self.project.appendFile(packageFile) 688 self.project.appendFile(packageFile)
689 if packageFile: 689 if packageFile:
690 self.sourceFile[str].emit(packageFile) 690 self.sourceFile[str].emit(packageFile)
691 691
697 if isinstance(itm, ProjectBrowserFileItem) or \ 697 if isinstance(itm, ProjectBrowserFileItem) or \
698 isinstance(itm, BrowserClassItem) or \ 698 isinstance(itm, BrowserClassItem) or \
699 isinstance(itm, BrowserMethodItem): 699 isinstance(itm, BrowserMethodItem):
700 dn = os.path.dirname(itm.fileName()) 700 dn = os.path.dirname(itm.fileName())
701 elif isinstance(itm, ProjectBrowserSimpleDirectoryItem) or \ 701 elif isinstance(itm, ProjectBrowserSimpleDirectoryItem) or \
702 isinstance(itm, ProjectBrowserDirectoryItem): 702 isinstance(itm, ProjectBrowserDirectoryItem):
703 dn = itm.dirName() 703 dn = itm.dirName()
704 else: 704 else:
705 dn = None 705 dn = None
706 self.project.addFiles('source', dn) 706 self.project.addFiles('source', dn)
707 707
713 if isinstance(itm, ProjectBrowserFileItem) or \ 713 if isinstance(itm, ProjectBrowserFileItem) or \
714 isinstance(itm, BrowserClassItem) or \ 714 isinstance(itm, BrowserClassItem) or \
715 isinstance(itm, BrowserMethodItem): 715 isinstance(itm, BrowserMethodItem):
716 dn = os.path.dirname(itm.fileName()) 716 dn = os.path.dirname(itm.fileName())
717 elif isinstance(itm, ProjectBrowserSimpleDirectoryItem) or \ 717 elif isinstance(itm, ProjectBrowserSimpleDirectoryItem) or \
718 isinstance(itm, ProjectBrowserDirectoryItem): 718 isinstance(itm, ProjectBrowserDirectoryItem):
719 dn = itm.dirName() 719 dn = itm.dirName()
720 else: 720 else:
721 dn = None 721 dn = None
722 self.project.addDirectory('source', dn) 722 self.project.addDirectory('source', dn)
723 723

eric ide

mercurial