10 import contextlib |
10 import contextlib |
11 import json |
11 import json |
12 import os |
12 import os |
13 import sys |
13 import sys |
14 import xml.etree.ElementTree # secok |
14 import xml.etree.ElementTree # secok |
|
15 |
|
16 |
|
17 def _printout(dataString): |
|
18 """ |
|
19 Function to print the given string to sys.stdout with a guard string. |
|
20 |
|
21 @param dataString string to be printed |
|
22 @type str |
|
23 """ |
|
24 print("@@eric_start@@{0}@@eric_end@@".format(dataString), file=sys.stderr) |
15 |
25 |
16 try: |
26 try: |
17 from PyQt6 import uic |
27 from PyQt6 import uic |
18 from PyQt6.QtCore import QByteArray, QMetaMethod |
28 from PyQt6.QtCore import QByteArray, QMetaMethod |
19 from PyQt6.QtGui import QAction |
29 from PyQt6.QtGui import QAction |
20 from PyQt6.QtWidgets import QApplication, QWidget |
30 from PyQt6.QtWidgets import QApplication, QWidget |
21 except ModuleNotFoundError: |
31 except ModuleNotFoundError: |
22 print("PyQt6 could not be found.") |
32 _printout("PyQt6 could not be found.") |
23 sys.exit(1) |
33 sys.exit(1) |
24 except ImportError as err: |
34 except ImportError as err: |
25 print("PyQt6 could not be imported. Issue: {0}".format(str(err))) |
35 _printout("PyQt6 could not be imported. Issue: {0}".format(str(err))) |
26 sys.exit(1) |
36 sys.exit(1) |
27 |
37 |
28 with contextlib.suppress(ImportError): |
38 with contextlib.suppress(ImportError): |
29 from PyQt6 import QtWebEngineWidgets # __IGNORE_WARNING__ |
39 from PyQt6 import QtWebEngineWidgets # __IGNORE_WARNING__ |
30 |
40 |
44 sys.path.append(projectPath) |
54 sys.path.append(projectPath) |
45 |
55 |
46 app = QApplication([]) # __IGNORE_WARNING__ |
56 app = QApplication([]) # __IGNORE_WARNING__ |
47 try: |
57 try: |
48 dlg = uic.loadUi(formFile, package=projectPath) |
58 dlg = uic.loadUi(formFile, package=projectPath) |
49 print(dlg.objectName()) |
59 _printout(dlg.objectName()) |
50 sys.exit(0) |
60 sys.exit(0) |
51 except (AttributeError, ImportError, xml.etree.ElementTree.ParseError) as err: |
61 except (AttributeError, ImportError, xml.etree.ElementTree.ParseError) as err: |
52 print(str(err)) |
62 _printout(str(err)) |
53 sys.exit(1) |
63 sys.exit(1) |
54 |
64 |
55 |
65 |
56 def className(formFile, projectPath): |
66 def className(formFile, projectPath): |
57 """ |
67 """ |
65 sys.path.append(projectPath) |
75 sys.path.append(projectPath) |
66 |
76 |
67 app = QApplication([]) # __IGNORE_WARNING__ |
77 app = QApplication([]) # __IGNORE_WARNING__ |
68 try: |
78 try: |
69 dlg = uic.loadUi(formFile, package=projectPath) |
79 dlg = uic.loadUi(formFile, package=projectPath) |
70 print(dlg.metaObject().className()) |
80 _printout(dlg.metaObject().className()) |
71 sys.exit(0) |
81 sys.exit(0) |
72 except (AttributeError, ImportError, xml.etree.ElementTree.ParseError) as err: |
82 except (AttributeError, ImportError, xml.etree.ElementTree.ParseError) as err: |
73 print(str(err)) |
83 _printout(str(err)) |
74 sys.exit(1) |
84 sys.exit(1) |
75 |
85 |
76 |
86 |
77 def __mapType(type_): |
87 def __mapType(type_): |
78 """ |
88 """ |
193 |
203 |
194 objectDict["methods"].append(signatureDict) |
204 objectDict["methods"].append(signatureDict) |
195 |
205 |
196 objectsList.append(objectDict) |
206 objectsList.append(objectDict) |
197 |
207 |
198 print(json.dumps(objectsList)) |
208 _printout(json.dumps(objectsList)) |
199 sys.exit(0) |
209 sys.exit(0) |
200 except (AttributeError, ImportError, xml.etree.ElementTree.ParseError) as err: |
210 except (AttributeError, ImportError, xml.etree.ElementTree.ParseError) as err: |
201 print(str(err)) |
211 _printout(str(err)) |
202 sys.exit(1) |
212 sys.exit(1) |
203 |
213 |
204 |
214 |
205 if __name__ == "__main__": |
215 if __name__ == "__main__": |
206 if len(sys.argv) != 4: |
216 if len(sys.argv) != 4: |
207 print("Wrong number of arguments.") |
217 _printout("Wrong number of arguments.") |
208 sys.exit(1) |
218 sys.exit(1) |
209 |
219 |
210 if sys.argv[1] == "object_name": |
220 if sys.argv[1] == "object_name": |
211 objectName(sys.argv[2], sys.argv[3]) |
221 objectName(sys.argv[2], sys.argv[3]) |
212 elif sys.argv[1] == "class_name": |
222 elif sys.argv[1] == "class_name": |
213 className(sys.argv[2], sys.argv[3]) |
223 className(sys.argv[2], sys.argv[3]) |
214 elif sys.argv[1] == "signatures": |
224 elif sys.argv[1] == "signatures": |
215 signatures(sys.argv[2], sys.argv[3]) |
225 signatures(sys.argv[2], sys.argv[3]) |
216 else: |
226 else: |
217 print("Unknow operation given.") |
227 _printout("Unknow operation given.") |
218 sys.exit(1) |
228 sys.exit(1) |
219 |
229 |
220 # |
230 # |
221 # eflag: noqa = M701, M801 |
231 # eflag: noqa = M701, M801 |