13 import os |
13 import os |
14 |
14 |
15 from PyQt6.QtCore import QProcess, QThread, pyqtSignal |
15 from PyQt6.QtCore import QProcess, QThread, pyqtSignal |
16 from PyQt6.QtWidgets import QApplication, QDialog, QMenu |
16 from PyQt6.QtWidgets import QApplication, QDialog, QMenu |
17 |
17 |
18 from eric7 import Preferences, Utilities |
18 from eric7 import Preferences |
19 from eric7.EricGui import EricPixmapCache |
19 from eric7.EricGui import EricPixmapCache |
20 from eric7.EricWidgets import EricMessageBox |
20 from eric7.EricWidgets import EricMessageBox |
21 from eric7.EricWidgets.EricApplication import ericApp |
21 from eric7.EricWidgets.EricApplication import ericApp |
22 from eric7.EricWidgets.EricProgressDialog import EricProgressDialog |
22 from eric7.EricWidgets.EricProgressDialog import EricProgressDialog |
23 from eric7.Project.FileCategoryRepositoryItem import FileCategoryRepositoryItem |
23 from eric7.Project.FileCategoryRepositoryItem import FileCategoryRepositoryItem |
26 ProjectBrowserDirectoryItem, |
26 ProjectBrowserDirectoryItem, |
27 ProjectBrowserFileItem, |
27 ProjectBrowserFileItem, |
28 ProjectBrowserSimpleDirectoryItem, |
28 ProjectBrowserSimpleDirectoryItem, |
29 ) |
29 ) |
30 from eric7.Project.ProjectBrowserRepositoryItem import ProjectBrowserRepositoryItem |
30 from eric7.Project.ProjectBrowserRepositoryItem import ProjectBrowserRepositoryItem |
|
31 from eric7.SystemUtilities import FileSystemUtilities, OSUtilities |
31 from eric7.UI.BrowserModel import ( |
32 from eric7.UI.BrowserModel import ( |
32 BrowserClassAttributeItem, |
33 BrowserClassAttributeItem, |
33 BrowserClassItem, |
34 BrowserClassItem, |
34 BrowserFileItem, |
35 BrowserFileItem, |
35 BrowserMethodItem, |
36 BrowserMethodItem, |
68 project = ericApp().getObject("Project") |
69 project = ericApp().getObject("Project") |
69 projectBrowser = ericApp().getObject("ProjectBrowser") |
70 projectBrowser = ericApp().getObject("ProjectBrowser") |
70 |
71 |
71 self.omniidl = plugin.getPreferences("omniidl") |
72 self.omniidl = plugin.getPreferences("omniidl") |
72 if self.omniidl == "": |
73 if self.omniidl == "": |
73 self.omniidl = "omniidl.exe" if Utilities.isWindowsPlatform() else "omniidl" |
74 self.omniidl = ( |
74 if not Utilities.isinpath(self.omniidl): |
75 "omniidl.exe" if OSUtilities.isWindowsPlatform() else "omniidl" |
|
76 ) |
|
77 if not FileSystemUtilities.isinpath(self.omniidl): |
75 self.omniidl = None |
78 self.omniidl = None |
76 |
79 |
77 ProjectBaseBrowser.__init__(self, project, self.FileFilter, parent) |
80 ProjectBaseBrowser.__init__(self, project, self.FileFilter, parent) |
78 |
81 |
79 self.selectedItemsFilter = [ |
82 self.selectedItemsFilter = [ |
637 path = os.path.dirname(self.idlFile) |
640 path = os.path.dirname(self.idlFile) |
638 poaList = glob.glob(os.path.join(path, "*__POA")) |
641 poaList = glob.glob(os.path.join(path, "*__POA")) |
639 npoaList = [f.replace("__POA", "") for f in poaList] |
642 npoaList = [f.replace("__POA", "") for f in poaList] |
640 fileList = glob.glob(os.path.join(path, "*_idl.py")) |
643 fileList = glob.glob(os.path.join(path, "*_idl.py")) |
641 for directory in poaList + npoaList: |
644 for directory in poaList + npoaList: |
642 fileList += Utilities.direntries(directory, True, "*.py") |
645 fileList += FileSystemUtilities.direntries(directory, True, "*.py") |
643 for file in fileList: |
646 for file in fileList: |
644 self.project.appendFile(file) |
647 self.project.appendFile(file) |
645 ui.showNotification( |
648 ui.showNotification( |
646 pixmap, |
649 pixmap, |
647 self.tr("Interface Compilation"), |
650 self.tr("Interface Compilation"), |