diff options
author | Christian Tismer <tismer@stackless.com> | 2017-09-28 13:10:28 +0200 |
---|---|---|
committer | Christian Tismer <tismer@stackless.com> | 2017-09-29 07:49:27 +0000 |
commit | c7f9793ff660ed608474d0cab3b31054dbebb458 (patch) | |
tree | 3726b859a49071607f950e3f353ce9f086f57ff2 /sources/pyside2/PySide2/support/signature/inspect.py | |
parent | 828c94347125180468838c77b554e0526cd34aa5 (diff) |
Fix the signature of the Q*Application constructor
Q*Application had PySequence as Parameter, although
only QStringList is accepted. That resulted in an implausible error
message when a list of, say, Integers was given.
This patch
- replaces PySequence by QStringList (one more tuple layer),
- fixes QCoreApplication to give the same kind of error messages,
- renames the shiboken function sequenceToArgcArgv to listToArgcArgv
and changes it to only allow list descendents.
We also changed signature.typing in one line to display List[str] correctly.
I think this belongs more to PySide-331, a fixed qApp.
Task-number: PYSIDE-510
Task-number: PYSIDE-331
Change-Id: Ib256c6a2db05a3db826454e1bf1b4729d59a240b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Diffstat (limited to 'sources/pyside2/PySide2/support/signature/inspect.py')
-rw-r--r-- | sources/pyside2/PySide2/support/signature/inspect.py | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sources/pyside2/PySide2/support/signature/inspect.py b/sources/pyside2/PySide2/support/signature/inspect.py index b59368229..cae96bc16 100644 --- a/sources/pyside2/PySide2/support/signature/inspect.py +++ b/sources/pyside2/PySide2/support/signature/inspect.py @@ -1238,9 +1238,10 @@ def getargvalues(frame): args, varargs, varkw = getargs(frame.f_code) return ArgInfo(args, varargs, varkw, frame.f_locals) +# This function is changed because we use a local copy of typing def formatannotation(annotation, base_module=None): - if getattr(annotation, '__module__', None) == 'typing': - return repr(annotation).replace('typing.', '') + if getattr(annotation, '__module__', None) == 'PySide2.support.signature.typing': + return repr(annotation).replace('PySide2.support.signature.typing.', '') if isinstance(annotation, type): if annotation.__module__ in ('builtins', base_module): return annotation.__qualname__ |