B YI~d¾%ã@s¸ddlmZddlZddlmZddlZdadd„Zdd„Zdd „Z d d „Z d d „Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„Zdd„Zdd„Zedkr´ddlmZed d!d"�dS)#é)Ú expanduserN)ÚplatformcCsjtdkrbt ¡}|j dd¡}d|kr,dan,d|kr:dand|j d d d ¡krTd and a| ¡ndadS)NÚdarwinÚtkZwindowingsystemZx11ÚxquartzZaquaÚotherZAppKitZwinfoZserverÚ.ÚcocoaÚcarbon)rÚtkinterZTkrÚcallÚ_tk_typeZdestroy)ÚrootZws©rú3/opt/alt/python37/lib64/python3.7/idlelib/macosx.pyÚ _init_tk_types rcCsts tƒtdkptdkS)Nr r )r rrrrrÚisAquaTk%srcCsts tƒtdkS)Nr )r rrrrrÚ isCarbonTk-srcCsts tƒtdkS)Nr )r rrrrrÚ isCocoaTk6srcCsts tƒtdkS)Nr)r rrrrrÚ isXQuartz>srcCs2tƒr*|j dd¡}|dkr dSd |¡SdSdS)NÚinfoÚ patchlevel)z8.5.7z8.5.9Fz…WARNING: The version of Tcl/Tk ({0}) in use may be unstable. Visit http://www.python.org/download/mac/tcltk/ for current information.)rrr Úformat)rrrrrÚtkVersionWarningGs rc CsNtdkr dStdƒ}y t|dƒ� }t |¡SQRXWntk rHdSXdS)Nrz.~/Library/Preferences/.GlobalPreferences.plistÚrb)rrÚopenÚplistlibÚloadÚOSError)Z plist_pathZ plist_filerrrÚreadSystemPreferences\s rcCs,tdkr dStƒ}|r(| d¡dkr(dSdS)NrZAppleWindowTabbingModeÚalwayszäWARNING: The system preference "Prefer tabs when opening documents" is set to "Always". This will cause various problems with IDLE. For the best experience, change this setting when running IDLE (via System Preferences -> Dock).)rrÚget)ZprefsrrrÚpreferTabsPreferenceWarningks r"cs‡fdd„}| d|¡dS)Ncsx|D]}ˆ |¡qWdS)N)r)ÚargsÚfn)ÚflistrrÚ doOpenFile„s z'addOpenEventSupport..doOpenFilez::tk::mac::OpenDocument)Ú createcommand)rr%r&r)r%rÚaddOpenEventSupports r(cCs.y|j dd¡Wntjk r(YnXdS)NZconsoleZhide)rr r ZTclError)rrrrÚ hideTkConsole�sr)c sÈddlm}ddlm}ddlm‰|jddd}|jdddd…=|jdd d|¡|jd ddd …=|jdddd …=|ˆƒ}ˆj|d �i}||d dd �|d <}|jd|dd�|f‡fdd„ }ˆ  |¡d$‡fdd„ } d%‡‡fdd„ } d&‡fdd„ } ˆ  d| ¡ˆ  d| ¡ˆ  d| ¡ˆ�rRˆ  dˆj ¡ˆ  dˆj ¡t ƒ�r”||ddd �|d<}|jd|d �|j ddd!dgf¡tƒ�rĈ  d"| ¡ˆ  d#| ¡|jd dd=dS)'Nr)ÚMenu)Úmainmenu)Úwindowééþÿÿÿéýÿÿÿééÿÿÿÿé)Úmenur,)ÚnameZtearoffZWindow)Úlabelr3Z underlinecs8| d¡}|dkrd}|dkr*| d|¡ˆ |¡dS)NÚendr1r)ÚindexÚdeleteZadd_windows_to_menu)r3r6)r,rrÚpostwindowsmenu½s   z)overrideRootMenu..postwindowsmenucsddlm}| ˆ¡dS)Nr)Ú help_about)Úidlelibr:Z AboutDialog)Úeventr:)rrrÚ about_dialogÇs z&overrideRootMenu..about_dialogcs$ddlm}ˆjˆ_| ˆd¡dS)Nr)Ú configdialogZSettings)r;r>Z inversedictZ instance_dictZ ConfigDialog)r<r>)r%rrrÚ config_dialogÍs z'overrideRootMenu..config_dialogcsddlm}| ˆ¡dS)Nr)Úhelp)r;r@Z show_idlehelp)r<r@)rrrÚ help_dialogÙs z%overrideRootMenu..help_dialogz<>z<>z::tk::mac::ShowPreferencesz<>ÚexitZappleZ applicationZIDLE)r5r3)z About IDLEz<>Z tkAboutDialogz::tk::mac::ShowHelp)N)N)N)r r*r;r+r,ZmenudefsÚinsertZ configureZ add_cascadeZregister_callbackZbindr'Zclose_all_callbackrr) rr%r*r+Z closeItemZmenubarZmenudictr3r9r=r?rAr)r%rr,rÚoverrideRootMenu”sH            rDcCs(| dd¡| dd¡| dd¡dS)NZTextzz z<>)Z unbind_class)rrrrÚ fixb2contextüs  rEcCs.tƒr*t|ƒt||ƒt||ƒt|ƒdS)N)rr)rDr(rE)rr%rrrÚsetupApps   rFÚ__main__)Úmainzidlelib.idle_test.test_macosxr2)Ú verbosity)Zos.pathrrÚsysrr r rrrrrrrr"r(r)rDrErFÚ__name__ZunittestrHrrrrÚs(    h