#E"bndZddlmZddlmZmZmZeZde_de_ GddeZ Gdde Z Gd d e Z Gd d e Z Gd de Zee ee ee ee ee eeee iZddZdZedkr'ddlmZedddddlmZeedSdS)z=Define tree items for debug stackviewer, which is only user. )Repr)TreeItemTreeNodeScrolledCanvasdc@eZdZd dZdZdZdZdZdZdZ d Z dS) ObjectTreeItemNc0||_||_||_dSN) labeltextobject setfunction)selfr object_rs 7/opt/alt/python311/lib64/python3.11/idlelib/debugobj.py__init__zObjectTreeItem.__init__s" &c|jSr )r rs r GetLabelTextzObjectTreeItem.GetLabelTexts ~rc@t|jSr )myreprreprr rs rGetTextzObjectTreeItem.GetTexts{{4;'''rc2|sdSdS)Npython) IsExpandablers r GetIconNamezObjectTreeItem.GetIconNames%  "" 8  rc|jduSr )rrs r IsEditablezObjectTreeItem.IsEditable!st++rcn t|}||||_dS#YdSxYwr )evalrr )rtextvalues rSetTextzObjectTreeItem.SetText#sC JJE   U # # # DKKK  DDs$/4c.t|j Sr )dirr rs rrzObjectTreeItem.IsExpandable+s4;'''''rct|j}g}|D]h} t|j|}n#t$rY%wxYwt t |dz|||jfd}||i|S)Nz =c$t|||Sr )setattrr$keyrs rz+ObjectTreeItem.GetSubList..8sGS%00r)r'r getattrAttributeErrormake_objecttreeitemstrappend)rkeyssublistr,r$items r GetSubListzObjectTreeItem.GetSubList-s4; ! !C  S11!    &C4"%t{11122D NN4 s 2 ??r ) __name__ __module__ __qualname__rrrrr r%rr6rrr r s''''(((,,,   (((rr ceZdZdZdZdS) ClassTreeItemcdS)NTr:rs rrzClassTreeItem.IsExpandable>strct|}t|jjdkr!t d|jjd}nt d|jj}|d||S)Nz__bases__[0] =rz __bases__ =)r r6lenr __bases__r0insert)rr4r5s rr6zClassTreeItem.GetSubList@s} ++D11 t{$ % % * *&'7 %a(**DD'}dk6KLLDq$rN)r7r8r9rr6r:rrr<r<=s2rr<ceZdZdZdS)AtomicObjectTreeItemcdS)NFr:rs rrz!AtomicObjectTreeItem.IsExpandableKsurN)r7r8r9rr:rrrDrDJs#rrDc eZdZdZdZdZdS)SequenceTreeItemc2t|jdkS)Nr)r@r rs rrzSequenceTreeItem.IsExpandableOs4;!##rcDtt|jSr )ranger@r rs rr3zSequenceTreeItem.keysQsS%%&&&rcg}|D]U} |j|}n#t$rYwxYw||jfd}t|d||}||V|S)Nc|||<dSr r:r+s rrz0SequenceTreeItem.GetSubList..setfunctionZs$ r:)r3r KeyErrorr0r2)rr4r,r$rr5s rr6zSequenceTreeItem.GetSubListSs99;; ! !C  C(    '*DK % % % %&#{{{E;GGD NN4 s ( 55N)r7r8r9rr3r6r:rrrGrGNsA$$$'''     rrGceZdZdZdS) DictTreeItemcht|j} |n#YnxYw|Sr )listr sort)rr3s rr3zDictTreeItem.keysas8DK    IIKKKK  D s+/N)r7r8r9r3r:rrrPrP`s#rrPNcvt|}|tvrt|}nt}||||Sr )typedispatchr )r rrtcs rr0r0ts: W AH}} QK  1Y - --rcLddl}ddlm}||}|dt t |ddd\}}|d|dz|dzfz|dd | t|d dd }|j dd td|}t|jd|}|dS)Nr)ToplevelzTest debug object browser+r?z+%d+%dryellow)bdbgwhite)r_highlightthickness takefocusboth)expandfillsys)rftkinterrZtitlemapintgeometrysplit configure focus_setrframepackr0rcanvasupdate) parentrfrZtopxyscr5nodes r_debug_object_browserry}sJJJ      (6  CII)*** sFOO%%++C004 5 5DAqLLQWa#g..///MMQ8M$$$MMOOO A K K KBHMMM((( uc * *D BItT * *DKKMMMMMr__main__)mainzidlelib.idle_test.test_debugobjF) verbosityexit)runr )__doc__reprlibr idlelib.treerrrr maxstringmaxotherr r<rDrGrPrjfloatr1tuplerRdictrUrVr0ryr7unittestr{idlelib.idle_test.htestrr:rrrs;;;;;;;;;; &&&&&X&&&P     N   >~$#     ,- ....     zD *aeDDDD++++++C r