35 ProjectBrowserDirectoryItem, |
35 ProjectBrowserDirectoryItem, |
36 ProjectBrowserFileItem, |
36 ProjectBrowserFileItem, |
37 ProjectBrowserProtocolsType, |
37 ProjectBrowserProtocolsType, |
38 ProjectBrowserSimpleDirectoryItem, |
38 ProjectBrowserSimpleDirectoryItem, |
39 ) |
39 ) |
|
40 from .ProjectBrowserRepositoryItem import ProjectBrowserRepositoryItem |
40 |
41 |
41 |
42 |
42 class ProjectProtocolsBrowser(ProjectBaseBrowser): |
43 class ProjectProtocolsBrowser(ProjectBaseBrowser): |
43 """ |
44 """ |
44 A class used to display the protocols (protobuf) part of the project. |
45 A class used to display the protocols (protobuf) part of the project. |
93 fileCategoryTyeString=self.tr("Protocols"), |
94 fileCategoryTyeString=self.tr("Protocols"), |
94 fileCategoryExtensions=["*.proto"], |
95 fileCategoryExtensions=["*.proto"], |
95 ), |
96 ), |
96 ) |
97 ) |
97 |
98 |
|
99 # Add the project browser type to the browser type repository. |
|
100 projectBrowser.addTypedProjectBrowser( |
|
101 "protocols", |
|
102 ProjectBrowserRepositoryItem( |
|
103 projectBrowser=self, |
|
104 projectBrowserUserString=self.tr("Protocols (protobuf) Browser"), |
|
105 fileCategory="PROTOCOLS", |
|
106 getIcon=self.getIcon, |
|
107 ), |
|
108 ) |
|
109 |
98 # Connect signals of Project. |
110 # Connect signals of Project. |
99 project.prepareRepopulateItem.connect(self._prepareRepopulateItem) |
111 project.prepareRepopulateItem.connect(self._prepareRepopulateItem) |
100 project.completeRepopulateItem.connect(self._completeRepopulateItem) |
112 project.completeRepopulateItem.connect(self._completeRepopulateItem) |
101 project.projectClosed.connect(self._projectClosed) |
113 project.projectClosed.connect(self._projectClosed) |
102 project.projectOpened.connect(self._projectOpened) |
114 project.projectOpened.connect(self._projectOpened) |
111 self.appendStderr.connect(projectBrowser.appendStderr) |
123 self.appendStderr.connect(projectBrowser.appendStderr) |
112 self.appendStdout.connect(projectBrowser.appendStdout) |
124 self.appendStdout.connect(projectBrowser.appendStdout) |
113 self.closeSourceWindow.connect(projectBrowser.closeSourceWindow) |
125 self.closeSourceWindow.connect(projectBrowser.closeSourceWindow) |
114 self.sourceFile[str].connect(projectBrowser.sourceFile[str]) |
126 self.sourceFile[str].connect(projectBrowser.sourceFile[str]) |
115 self.sourceFile[str, int].connect(projectBrowser.sourceFile[str, int]) |
127 self.sourceFile[str, int].connect(projectBrowser.sourceFile[str, int]) |
|
128 |
|
129 def getIcon(self): |
|
130 """ |
|
131 Public method to get an icon for the project browser. |
|
132 |
|
133 @return icon for the browser |
|
134 @rtype QIcon |
|
135 """ |
|
136 return EricPixmapCache.getIcon("protobuf") |
116 |
137 |
117 def _createPopupMenus(self): |
138 def _createPopupMenus(self): |
118 """ |
139 """ |
119 Protected overloaded method to generate the popup menu. |
140 Protected overloaded method to generate the popup menu. |
120 """ |
141 """ |