1402 if qvtype.startswith("PyQt4"): |
1402 if qvtype.startswith("PyQt4"): |
1403 vlist = self.__formatQt4Variable(qvar, qvtype) |
1403 vlist = self.__formatQt4Variable(qvar, qvtype) |
1404 else: |
1404 else: |
1405 vlist = [] |
1405 vlist = [] |
1406 else: |
1406 else: |
1407 # format the dictionary found |
1407 qtVariable = False |
1408 if dictkeys is None: |
1408 if len(udict) > 0: |
1409 dictkeys = dict.keys() |
1409 if access: |
|
1410 loc = {"udict" : udict} |
|
1411 exec('qvar = udict{0!s}'.format(access), globals(), loc) |
|
1412 qvar = loc["qvar"] |
|
1413 # this has to be in line with VariablesViewer.indicators |
|
1414 elif rvar and rvar[0][-2:] in ["[]", "()", "{}"]: |
|
1415 loc = {"udict" : udict} |
|
1416 exec('qvar = udict["{0!s}"][{1!s}]'.format(rvar[0][:-2], rvar[1]), |
|
1417 globals(), loc) |
|
1418 qvar = loc["qvar"] |
|
1419 else: |
|
1420 qvar = udict[var[-1]] |
|
1421 qvtype = str(type(qvar))[1:-1].split()[1][1:-1] |
|
1422 if qvtype.startswith("PyQt4"): |
|
1423 qtVariable = True |
|
1424 |
|
1425 if qtVariable: |
|
1426 vlist = self.__formatQt4Variable(qvar, qvtype) |
1410 else: |
1427 else: |
1411 # treatment for sequences and dictionaries |
1428 # format the dictionary found |
1412 if access: |
1429 if dictkeys is None: |
1413 loc = {"dict": dict} |
|
1414 exec("dict = dict{0!s}".format(access), globals(), loc) |
|
1415 dict = loc["dict"] |
|
1416 else: |
|
1417 dict = dict[dictkeys[0]] |
|
1418 if isDict: |
|
1419 dictkeys = dict.keys() |
1430 dictkeys = dict.keys() |
1420 else: |
1431 else: |
1421 dictkeys = range(len(dict)) |
1432 # treatment for sequences and dictionaries |
1422 vlist = self.__formatVariablesList(dictkeys, dict, scope, filter, |
1433 if access: |
1423 formatSequences) |
1434 exec "dict = dict%s" % access |
|
1435 else: |
|
1436 dict = dict[dictkeys[0]] |
|
1437 if isDict: |
|
1438 dictkeys = dict.keys() |
|
1439 else: |
|
1440 dictkeys = range(len(dict)) |
|
1441 vlist = self.__formatVariablesList(dictkeys, dict, scope, filter, |
|
1442 formatSequences) |
1424 varlist.extend(vlist) |
1443 varlist.extend(vlist) |
1425 |
1444 |
1426 if obj is not None and not formatSequences: |
1445 if obj is not None and not formatSequences: |
1427 if repr(obj).startswith('{'): |
1446 if repr(obj).startswith('{'): |
1428 varlist.append(('...', 'dict', "{0:d}".format(len(obj.keys())))) |
1447 varlist.append(('...', 'dict', "{0:d}".format(len(obj.keys())))) |
1619 continue |
1638 continue |
1620 except ValueError: |
1639 except ValueError: |
1621 if valtype == "classobj": |
1640 if valtype == "classobj": |
1622 if ConfigVarTypeStrings.index('instance') in filter: |
1641 if ConfigVarTypeStrings.index('instance') in filter: |
1623 continue |
1642 continue |
1624 elif ConfigVarTypeStrings.index('other') in filter: |
1643 elif valtype == "sip.methoddescriptor": |
|
1644 if ConfigVarTypeStrings.index('instance method') in filter: |
|
1645 continue |
|
1646 elif not valtype.startswith("PySide") and \ |
|
1647 ConfigVarTypeStrings.index('other') in filter: |
1625 continue |
1648 continue |
1626 |
1649 |
1627 try: |
1650 try: |
1628 if valtype not in ['list', 'tuple', 'dict']: |
1651 if valtype not in ['list', 'tuple', 'dict']: |
1629 rvalue = repr(value) |
1652 rvalue = repr(value) |