Project/CreateDialogCodeDialog.py

changeset 6544
51996454f89f
parent 6291
94e0e688dcad
child 6547
77c817301ca1
equal deleted inserted replaced
6543:d9f12defd944 6544:51996454f89f
8 """ 8 """
9 9
10 from __future__ import unicode_literals 10 from __future__ import unicode_literals
11 11
12 import os 12 import os
13 import sys
13 import xml.etree.ElementTree 14 import xml.etree.ElementTree
14 15
15 from PyQt5.QtCore import QMetaObject, QByteArray, QRegExp, Qt, pyqtSlot, \ 16 from PyQt5.QtCore import QMetaObject, QByteArray, QRegExp, Qt, pyqtSlot, \
16 QMetaMethod, QSortFilterProxyModel 17 QMetaMethod, QSortFilterProxyModel
17 from PyQt5.QtGui import QStandardItemModel, QBrush, QStandardItem 18 from PyQt5.QtGui import QStandardItemModel, QBrush, QStandardItem
26 from .NewDialogClassDialog import NewDialogClassDialog 27 from .NewDialogClassDialog import NewDialogClassDialog
27 28
28 from eric6config import getConfig 29 from eric6config import getConfig
29 30
30 from Globals import qVersionTuple 31 from Globals import qVersionTuple
32
33 import Utilities
31 34
32 35
33 pyqtSignatureRole = Qt.UserRole + 1 36 pyqtSignatureRole = Qt.UserRole + 1
34 pythonSignatureRole = Qt.UserRole + 2 37 pythonSignatureRole = Qt.UserRole + 2
35 rubySignatureRole = Qt.UserRole + 3 38 rubySignatureRole = Qt.UserRole + 3
140 143
141 @return flag indicating an initialzation error (boolean) 144 @return flag indicating an initialzation error (boolean)
142 """ 145 """
143 return self.__initError 146 return self.__initError
144 147
148 def __loadUi(self, formFile, package=""):
149 """
150 Private method to load a form file and instantiate the defined form.
151
152 @param formFile path of the form file to be loaded
153 @type str
154 @param package base path to be used for relative imports
155 @type str
156 @return instantiated form
157 @rtype QWidget
158 """
159 oldSysPath = []
160 interpreter = self.project.getDebugProperty("INTERPRETER")
161 if interpreter:
162 oldSysPath = sys.path[:]
163 sys.path = oldSysPath + Utilities.getSysPath(interpreter)
164
165 dlg = uic.loadUi(formFile, package=package)
166
167 if oldSysPath:
168 sys.path = oldSysPath
169
170 return dlg
171
145 def __objectName(self): 172 def __objectName(self):
146 """ 173 """
147 Private method to get the object name of the dialog. 174 Private method to get the object name of the dialog.
148 175
149 @return object name (string) 176 @return object name (string)
150 """ 177 """
151 try: 178 try:
152 dlg = uic.loadUi( 179 dlg = self.__loadUi(
153 self.formFile, package=self.project.getProjectPath()) 180 self.formFile, package=self.project.getProjectPath())
154 return dlg.objectName() 181 return dlg.objectName()
155 except (AttributeError, ImportError, 182 except (AttributeError, ImportError,
156 xml.etree.ElementTree.ParseError) as err: 183 xml.etree.ElementTree.ParseError) as err:
157 E5MessageBox.critical( 184 E5MessageBox.critical(
167 Private method to get the class name of the dialog. 194 Private method to get the class name of the dialog.
168 195
169 @return class name (sting) 196 @return class name (sting)
170 """ 197 """
171 try: 198 try:
172 dlg = uic.loadUi( 199 dlg = self.__loadUi(
173 self.formFile, package=self.project.getProjectPath()) 200 self.formFile, package=self.project.getProjectPath())
174 return dlg.metaObject().className() 201 return dlg.metaObject().className()
175 except (AttributeError, ImportError, 202 except (AttributeError, ImportError,
176 xml.etree.ElementTree.ParseError) as err: 203 xml.etree.ElementTree.ParseError) as err:
177 E5MessageBox.critical( 204 E5MessageBox.critical(
238 Private slot to update the slots tree display. 265 Private slot to update the slots tree display.
239 """ 266 """
240 self.filterEdit.clear() 267 self.filterEdit.clear()
241 268
242 try: 269 try:
243 dlg = uic.loadUi( 270 dlg = self.__loadUi(
244 self.formFile, package=self.project.getProjectPath()) 271 self.formFile, package=self.project.getProjectPath())
245 objects = dlg.findChildren(QWidget) + dlg.findChildren(QAction) 272 objects = dlg.findChildren(QWidget) + dlg.findChildren(QAction)
246 273
247 signatureList = self.__signatures() 274 signatureList = self.__signatures()
248 275

eric ide

mercurial