diff options
Diffstat (limited to 'tools/qtpy2cpp_lib/formatter.py')
| -rw-r--r-- | tools/qtpy2cpp_lib/formatter.py | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/tools/qtpy2cpp_lib/formatter.py b/tools/qtpy2cpp_lib/formatter.py index 07f733424..98ba3f095 100644 --- a/tools/qtpy2cpp_lib/formatter.py +++ b/tools/qtpy2cpp_lib/formatter.py @@ -120,18 +120,21 @@ def format_literal_list(l_node, enclosing='{'): return result -def format_member(attrib_node, qualifier='auto'): +def format_member(attrib_node, qualifier_in='auto'): """Member access foo->member() is expressed as an attribute with further nested Attributes/Names as value""" n = attrib_node result = '' # Black magic: Guess '::' if name appears to be a class name - if qualifier == 'auto': + qualifier = qualifier_in + if qualifier_in == 'auto': qualifier = '::' if n.attr[0:1].isupper() else '->' while isinstance(n, ast.Attribute): result = n.attr if not result else n.attr + qualifier + result n = n.value if isinstance(n, ast.Name) and n.id != 'self': + if qualifier_in == 'auto' and n.id == "Qt": # Qt namespace + qualifier = "::" result = n.id + qualifier + result return result |
