frc@s dZddlTddljZddljZddlj Z ddl Z ddl m Z ddlmZddlmZddlmZddlmZdd lmZdd lmZGd d d eZed kreZeedddddj ie_!ej"ndS(uIDLE Configuration Dialog: support user customization of IDLE by GUI Customize font faces, sizes, and colorization attributes. Set indentation defaults. Customize keybindings. Colorization and keybindings can be saved as user defined sets. Select startup options including shell/editor and default window size. Define additional help sources. Note that tab width in IDLE is currently fixed at eight due to Tk issues. Refer to comments in EditorWindow autoindent code for details. i(u*N(uidleConf(u DynOptionMenu(u TabbedPageSet(u GetKeysDialog(uGetCfgSectionNameDialog(uGetHelpSourceDialog(u macosxSupportcBsw|EeZdZddZddZddZddZd d Zd d Zd dZ ddZ ddZ ddZ ddZ ddZddZddZddZdd Zd!d"Zd#d$Zd%d&Zd'd(Zd)d*Zd+d,Zd-d.Zd/d0Zd1d2Zd3d4Zd5d6Zd7d8Zd9d:Zd;d<Z d=d>Z!d?d@Z"dAdBZ#dCdDZ$dEdFZ%dGdHZ&dIdJZ'dKdLZ(dMdNZ)dOdPZ*dQdRZ+dSdTZ,dUdVZ-dWdXZ.dYdZZ/dd[d\Z1d]d^Z2d_d`Z3dadbZ4dcddZ5dedfZ6dgdhZ7didjZ8dkdlZ9dmdnZ:dodpZ;dqdrZ<dsdtZ=dudvZ>dwdxZ?dydzZ@d{d|ZAd}d~ZBddZCddZDddZEddZFddZGddZHddZIddZJddZKdS(u ConfigDialogcCs\tj|||j|jdd|jd|jd|jd|jdfi d1d 6d2d 6d3d6d4d6d5d6d6d6d7d6d8d6d9d!6d:d$6d;d'6d<d*6d=d-6|_|j |j |j d.t d/t |j ||j|jd0|j||_|jj|j|j|j|jdS(>Nu borderwidthiuIDLE Preferencesu+%d+%diiunormalu00u Normal Textukeywordu01uPython Keywordsu definitionu02uPython Definitionsubuiltinu03uPython Builtinsucommentu04uPython Commentsustringu05uPython Stringsuhiliteu06u Selected Textuhitu07u Found Textucursoru08uCursoruerroru09u Error Textuconsoleu10uShell Normal Textustdoutu11uShell Stdout Textustderru12uShell Stderr TextuheightuwidthuWM_DELETE_WINDOW(unormalu00(ukeywordu01(u definitionu02(ubuiltinu03(ucommentu04(ustringu05(uhiliteu06(uhitu07(ucursoru08(uerroru09(uconsoleu10(ustdoutu11(ustderru12(uToplevelu__init__u wm_withdrawu configureutitleugeometryu winfo_rootxu winfo_rootyu themeElementsuResetChangedItemsu CreateWidgetsu resizableuFALSEu transientugrab_setuprotocoluCanceluparentutabPagesu focus_setu LoadConfigsuAttachVarCallbacksu wm_deiconifyu wait_window(uselfuparentutitle((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyu__init__s>             uConfigDialog.__init__c Cst|dddddg|_t|dd}tjrHi}ntdd dd }t|d d d |jdt||_ t|d dd |j dt||_ t|d dd |j dt||_ |j|j|j|j|j jdtdd|j jdtdd|j jdtdd|jdtt|ddddjdt|jjdtdtdtdS(Nu page_namesu Fonts/Tabsu HighlightinguKeysuGeneralupadyiupadxiiutextuOkucommandu takefocusuApplyuCancelusideiuheightu borderwidthiuexpandufill(u TabbedPageSetutabPagesuFrameu macosxSupporturunningAsOSXAppudictuButtonuOkuFALSEubuttonOkuApplyu buttonApplyuCancelu buttonCanceluCreatePageFontTabuCreatePageHighlightuCreatePageKeysuCreatePageGeneralupackuLEFTuBOTTOMuTOPuTRUEuBOTH(uselfuframeActionButtonsu extraKwds((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyu CreateWidgetsGs2             "uConfigDialog.CreateWidgetsc Cst||_t||_t||_t||_tj|d+|_ |j j dj }t |dddtdd }t |dddtdd }t|}t|}t|d tdd }t|d ddtdt|_|jjd|jt|}|jd|jj|jjd|jt|dd}t||jdd|j|_t|d|jddddddd|j} t|dt dd} t| ddd td|j |_!t|} t| d tdd} t"| d|jddd dd!dd"d#|_#|j$d$td%dd&dd't%d(t&|j$d$td%dd&dd(t'|j$d$t(d%dd&dd(t)|j$d$t(d%dd&dd(t)|j$d$t(d)t*|jj$d$td't%d(t)|j$d$td(t'|j$d$td)t*|jj$d$td)t*| j$d$td)t*d%d*| j$d$t(d%dd&dd't%d(t&|j!j$d't%d(t&| j$d$t(d(t)| j$d$t(d)t*d%d|j#j$d$t(d%dd(t)|S(,Nucourieri unormalu Fonts/Tabsu borderwidthiureliefutextu Base Editor Font u Indentation Width ujustifyu Font Face :uheightiu takefocusuexportselectionuucommanduyscrollcommanduSize :uvariableuonvalueiuoffvalueiuBoldu,AaBbCcDdEe FfGgHhIiJjK 1234567890 #:+=(){}[]ufontuPython Standard: 4 Spaces!uorientu horizontalu tickintervalufrom_utoiusideupadxupadyuexpandufilluanchori(ucourieri unormal(+u StringVarufontSizeu BooleanVarufontBoldufontNameuIntVaruspaceNumutkFontuFontueditFontutabPagesupagesuframeu LabelFrameuGROOVEuFrameuLabeluLEFTuListboxuFALSEu listFontNameubinduOnListFontButtonReleaseu Scrollbaruconfiguyviewusetu DynOptionMenuuNoneu SetFontSampleuoptMenuFontSizeu CheckbuttonuSOLIDulabelFontSampleuScaleu scaleSpaceNumupackuTRUEuBOTHuYuTOPuXuW( uselfuframeu frameFontu frameIndentu frameFontNameuframeFontParamulabelFontNameTitleu scrollFontulabelFontSizeTitleu checkFontBolduframeFontSampleuframeIndentSizeulabelSpaceNumTitle((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuCreatePageFontTabnsf          ("""(uConfigDialog.CreatePageFontTabc Cst||_t||_t||_t||_t||_t||_t||_|j j dj }t |dddt dd}t |dddt dd}t|dtddd dXd ddddddtdddt |_|j}|jddd|jddddx}x)|D]!}|jt|d|dq?Wx8|jD]-}|j|j|dd@|dAdqnW|jdBtt|dtdd|_t|}t|jddCdD|jdd} t|j|jddd|_ t!|dE|jdFdddGdD|j"|_#t!|dE|jdFdddHdD|j"|_$|jj%dt|ddIdD|j&} t'|ddJ} t!|dE|jdFddD|j(ddK|_)t!|dE|jdFddD|j(ddL|_*t||jddDd|_+t||jddDd|_,t|ddMdD|j-|_.|j/dNt0dOdPdQdPdRt1dSt2|j/dNt0dOdPdQdPdSt3|jj/dNt4dOdPdQdPdRt1dSt5|j/dNt4dOdPdQd|jj/dNt4dOdPdQdPdRt1dSt2| j/dNt4dRt1dSt5dOdTdQdU|j j/dNt4dRt1dSt5dOdTdQdV|j#j/dNt0dWt6|j$j/dNt7dWt8| j/dNt9dSt5dOdPdQdP| j/dNt4dWt8dOdPdQdP|j)j/dNt4dWt8dOdP|j*j/dNt4dWt8dOdPdQd|j+j/dNt4dSt5dOdPdQdP|j,j/dNt4dSt5dWt8dOdPdQdP|j.j/dNt4dSt5dOdPdQdP|S(yNu Highlightingu borderwidthiureliefutextu Custom Highlighting u Highlighting Theme iufontucourieri uucursoruhand2uwidthiuheighti u takefocusuhighlightthicknessiuwrapucSsdS(Nubreak((ue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyusu2ConfigDialog.CreatePageHighlight..u cSsdS(Nubreak((ue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyusu#you can click hereucommentu unormalu#to choose itemsudefukeywordu ufuncu definitionu(param):u u """string"""ustringu var0 = u'string'u var1 = u 'selected'uhiliteu var2 = u'found'uhitu var3 = ulistubuiltinu(uNoneu) u error uerrorucursor |u ushelluconsoleustdoutustderrucSs|jjjj|S(N(uwidgetuwinfo_topleveluhighlightTargetuset(ueventuelem((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyusustateuChoose Colour for :ucommanduvariableuvalueu Foregroundu BackgrounduSave as New Custom Themeu Select : ua Built-in Themeua Custom ThemeuDelete Custom Themeusideupadxiupadyuexpandufilliiiuanchor(ucourieri u(u#you can click hereucomment(u unormal(u#to choose itemsucomment(u unormal(udefukeyword(u unormal(ufuncu definition(u(param):unormal(u unormal(u """string"""ustring(u var0 = unormal(u'string'ustring(u var1 = unormal(u 'selected'uhilite(u var2 = unormal(u'found'uhit(u var3 = unormal(ulistubuiltin(u(unormal(uNoneukeyword(u) unormal(u error uerror(u unormal(ucursor |ucursor(u unormal(ushelluconsole(u unormal(ustdoutustdout(u unormal(ustderrustderr(u unormal((u#you can click hereucomment(u unormal(u#to choose itemsucomment(u unormal(udefukeyword(u unormal(ufuncu definition(u(param):unormal(u unormal(u """string"""ustring(u var0 = unormal(u'string'ustring(u var1 = unormal(u 'selected'uhilite(u var2 = unormal(u'found'uhit(u var3 = unormal(ulistubuiltin(u(unormal(uNoneukeyword(u) unormal(u error uerror(u unormal(ucursor |ucursor(u unormal(ushelluconsole(u unormal(ustdoutustdout(u unormal(ustderrustderr(u unormal(:u StringVaru builtinThemeu customThemeu BooleanVarufgHiliteucolourufontNameuthemeIsBuiltinuhighlightTargetutabPagesupagesuframeu LabelFrameuGROOVEuTextuSOLIDuFALSEuNONEutextHighlightSampleubinduinsertuENDu themeElementsutag_binduconfiguDISABLEDuFrameuframeColourSetuButtonu GetColouru DynOptionMenuuNoneuoptMenuHighlightTargetu RadiobuttonuSetColourSampleBindinguradioFguradioBgusetuSaveAsNewThemeuLabelu SetThemeTypeuradioThemeBuiltinuradioThemeCustomuoptMenuThemeBuiltinuoptMenuThemeCustomuDeleteCustomThemeubuttonDeleteCustomThemeupackuLEFTuTRUEuBOTHuYuTOPuXuEuRIGHTuWuBOTTOM( uselfuframeu frameCustomu frameThemeutextu textAndTagsutxTauelementu frameFgBgubuttonSetColourubuttonSaveCustomThemeulabelTypeTitle((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuCreatePageHighlights       ("+$(+""%%+%u ConfigDialog.CreatePageHighlightc st||_t||_t||_t||_t||_|jjdj }t |dddt dd}t |dddt ddt |}t |dd}t|}t|d t}t|d td t|_|jjd |j|jd |jj|jd |jj|jjd|j|jjd|jt|ddd |jdt|_fddtdD}t|dd|jddd |jdd|_ t|dd|jddd |jdd|_!t"|d|jdd d|_$t"|d|jdd d|_%t|dddd |j&|_'t|dddd |j(}|j)dt*ddddd t+d!t,j)dt*ddddd!t,|jj)dt*d!t-dddd|j)dt.ddddd t+d!t,|j/dd"d|j0dd"d|j1d#dd$dd%dd&t2|jj1d#dd$dd&t3|j1d#dd$dd&t4|j1d#dd$dd&t5|j j1d#dd$dd&t2t4|j!j1d#dd$dd&t2t4|j$j1d#dd$dd&t3|j%j1d#dd$dd&t3|j'j)dt.d!t-d d'dd|j)dt.d!t-d d'dd|dj)dt7d!t,d d'|dj)dt7d!t-d d'dd|S((NuKeysu borderwidthiureliefutextu Custom Key Bindings u Key Set uAction - Key(s)uorientu takefocusuexportselectionuucommanduyscrollcommanduxscrollcommanduGet New Keys for Selectionustatec s.g|]$}tddddddqS(upadxiupadyu borderwidthi(uFrame(u.0ui(u frameKeySets(u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyu $s u/ConfigDialog.CreatePageKeys..iuvariableuvalueiuUse a Built-in Key SetuUse a Custom Key SetuDelete Custom Key SetuSave as New Custom Key Setusideupadxiupadyuexpandufilluweighturowucolumnu columnspanustickyT(8u StringVaru bindingTargetu builtinKeysu customKeysu BooleanVarukeysAreBuiltinu keyBindingutabPagesupagesuframeu LabelFrameuGROOVEuFrameuLabelu Scrollbaru HORIZONTALuListboxuFALSEu listBindingsubinduKeyBindingSelecteduconfiguyviewuxviewusetuButtonu GetNewKeysuDISABLEDu buttonNewKeysurangeu Radiobuttonu SetKeysTypeuradioKeysBuiltinuradioKeysCustomu DynOptionMenuuNoneuoptMenuKeysBuiltinuoptMenuKeysCustomuDeleteCustomKeysubuttonDeleteCustomKeysuSaveAsNewKeySetupackuBOTTOMuTRUEuBOTHuXuLEFTucolumnconfigureu rowconfigureugriduWuNSEWuNSuEWuTrueuTOP( uselfuframeu frameCustomu frameTargetulabelTargetTitleu scrollTargetYu scrollTargetXuframesubuttonSaveCustomKeys((u frameKeySetsu9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuCreatePageKeyssp        ("%("##%" &uConfigDialog.CreatePageKeysc Cst||_t||_t||_t||_t||_t||_t||_ t||_ |j j dj }t|dddtdd}t|dddtdd}t|dddt}t|dddt}t|dddtdd}t|dd }t|d |jd d d |jdd}t|d |jd dd |jdd} t|dd} t|d |jd dd |jdd} t|d |jd d d |jdd} t|ddd} t|dd}t|d|jdd}t|dd}t|d|jdd}t|ddd}t|d|jdd}t|}t|}t|}t|dddtd t|_|jd |jj|jjd!|j|jjd"|jt|dd#d$tdd%d |j |_!t|dd&dd%d |j"|_#t|dd'd$tdd%d |j$|_%|j&d(t'd)dd*dd+t(|j&d(t'd)dd*dd+t(|j&d(t'd)dd*dd+t(|j&d(t'd)dd*dd+t(|j&d(t'd)dd*dd,t)d+t*|j&d(t+d-t,d)dd*d| j&d(t-d-t,d)dd*d|j&d(t-d-t,d)dd*d| j&d(t+d-t,d)dd*d| j&d(t-d-t,d)dd*d| j&d(t-d-t,d)dd*d| j&d(t+d-t,d)dd*d|j&d(t-d-t.d)d.d*d|j&d(t-d-t.d*d|j&d(t-d-t.d)d.d*d|j&d(t-d-t.d*d|j&d(t+d-t,d)dd*d|j&d(t-d-t.d)d.d*d|j&d(t-d)dd*dd+t/|j&d(t'd)dd*dd,t)d+t*|j&d(t-d-t,d+t/|jj&d(t+d-t.d,t)d+t*|j!j&d(t'd-t,d*d|j#j&d(t'd-t,|j%j&d(t'd-t,d*d|S(/NuGeneralu borderwidthiureliefutextu Startup Preferences u Autosave Preferences u Additional Help Sources u At StartupuvariableuvalueiucommanduOpen Edit WindowiuOpen Shell WindowuAt Start of Run (F5) uPrompt to Saveu No PromptuInitial Window Sizeu (in characters)uWidthu textvariableuwidthiuHeightuParagraph reformatu width (in characters)uheightiu takefocusuexportselectionuyscrollcommanduuEditustateiuAdduRemoveusideupadxupadyufilluexpanduanchori (0u StringVaruwinWidthu winHeightu paraWidthuIntVaru startupEdituautoSaveuencodingu BooleanVaruuserHelpBrowseru helpBrowserutabPagesupagesuframeu LabelFrameuGROOVEuFrameuLabelu Radiobuttonu SetKeysTypeuEntryu ScrollbaruListboxuFALSEulistHelpuconfiguyviewusetubinduHelpSourceSelecteduButtonuDISABLEDuHelpListItemEditubuttonHelpListEdituHelpListItemAddubuttonHelpListAdduHelpListItemRemoveubuttonHelpListRemoveupackuTOPuXuTRUEuBOTHuLEFTuWuRIGHTuEuY(uselfuframeuframeRunu frameSaveu frameWinSizeu frameParaSizeu frameHelpulabelRunChoiceTitleuradioStartupEdituradioStartupShellulabelRunSaveTitleu radioSaveAsku radioSaveAutoulabelWinSizeTitleulabelWinWidthTitleu entryWinWidthulabelWinHeightTitleuentryWinHeightulabelParaWidthTitleuentryParaWidthu frameHelpListuframeHelpListButtonsuscrollHelpList((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuCreatePageGeneralKs              """"(""""""""""""(%uConfigDialog.CreatePageGeneralcCs|jjd|j|jjd|j|jjd|j|jjd|j|j jd|j |j jd|j |j jd|j|jjd|j|jjd|j|jjd|j|jjd|j|jjd|j|jjd|j|jjd|j|jjd|j|jjd|j |j!jd|j"|j#jd|j$|j%jd|j&dS(Nuw('ufontSizeutrace_variableuVarChanged_fontSizeufontNameuVarChanged_fontNameufontBolduVarChanged_fontBolduspaceNumuVarChanged_spaceNumucolouruVarChanged_colouru builtinThemeuVarChanged_builtinThemeu customThemeuVarChanged_customThemeuthemeIsBuiltinuVarChanged_themeIsBuiltinuhighlightTargetuVarChanged_highlightTargetu keyBindinguVarChanged_keyBindingu builtinKeysuVarChanged_builtinKeysu customKeysuVarChanged_customKeysukeysAreBuiltinuVarChanged_keysAreBuiltinuwinWidthuVarChanged_winWidthu winHeightuVarChanged_winHeightu paraWidthuVarChanged_paraWidthu startupEdituVarChanged_startupEdituautoSaveuVarChanged_autoSaveuencodinguVarChanged_encoding(uself((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuAttachVarCallbackss&uConfigDialog.AttachVarCallbackscGs)|jj}|jddd|dS(Numainu EditorWindowu font-size(ufontSizeugetuAddChangedItem(uselfuparamsuvalue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuVarChanged_fontSizesu ConfigDialog.VarChanged_fontSizecGs)|jj}|jddd|dS(Numainu EditorWindowufont(ufontNameugetuAddChangedItem(uselfuparamsuvalue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuVarChanged_fontNamesu ConfigDialog.VarChanged_fontNamecGs)|jj}|jddd|dS(Numainu EditorWindowu font-bold(ufontBoldugetuAddChangedItem(uselfuparamsuvalue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuVarChanged_fontBoldsu ConfigDialog.VarChanged_fontBoldcGs)|jj}|jddd|dS(NumainuIndentu num-spaces(uspaceNumugetuAddChangedItem(uselfuparamsuvalue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuVarChanged_spaceNumsu ConfigDialog.VarChanged_spaceNumcGs|jdS(N(uOnNewColourSet(uselfuparams((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuVarChanged_coloursuConfigDialog.VarChanged_colourcGs3|jj}|jddd||jdS(NumainuThemeuname(u builtinThemeugetuAddChangedItemuPaintThemeSample(uselfuparamsuvalue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuVarChanged_builtinThemesu$ConfigDialog.VarChanged_builtinThemecGsB|jj}|dkr>|jddd||jndS(Nu- no custom themes -umainuThemeuname(u customThemeugetuAddChangedItemuPaintThemeSample(uselfuparamsuvalue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuVarChanged_customThemes u#ConfigDialog.VarChanged_customThemecGsF|jj}|jddd||r8|jn |jdS(NumainuThemeudefault(uthemeIsBuiltinugetuAddChangedItemuVarChanged_builtinThemeuVarChanged_customTheme(uselfuparamsuvalue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuVarChanged_themeIsBuiltins  u&ConfigDialog.VarChanged_themeIsBuiltincGs|jdS(N(uSetHighlightTarget(uselfuparams((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuVarChanged_highlightTargetsu'ConfigDialog.VarChanged_highlightTargetcGs|jj}|jj}|jjtjd}tj|rb|jd|||n/tj |}|d}|jd|||dS(Niukeysu _cfgBindingsu extensions( u keyBindingugetu customKeysu listBindingsuANCHORusplituidleConfu IsCoreBindinguAddChangedItemuGetExtnNameForEvent(uselfuparamsuvalueukeySetueventuextNameuextKeybindSection((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuVarChanged_keyBindings u"ConfigDialog.VarChanged_keyBindingcGs6|jj}|jddd||j|dS(NumainuKeysuname(u builtinKeysugetuAddChangedItemu LoadKeysList(uselfuparamsuvalue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuVarChanged_builtinKeyssu#ConfigDialog.VarChanged_builtinKeyscGsE|jj}|dkrA|jddd||j|ndS(Nu- no custom keys -umainuKeysuname(u customKeysugetuAddChangedItemu LoadKeysList(uselfuparamsuvalue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuVarChanged_customKeyss u"ConfigDialog.VarChanged_customKeyscGsF|jj}|jddd||r8|jn |jdS(NumainuKeysudefault(ukeysAreBuiltinugetuAddChangedItemuVarChanged_builtinKeysuVarChanged_customKeys(uselfuparamsuvalue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuVarChanged_keysAreBuiltins  u&ConfigDialog.VarChanged_keysAreBuiltincGs)|jj}|jddd|dS(Numainu EditorWindowuwidth(uwinWidthugetuAddChangedItem(uselfuparamsuvalue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuVarChanged_winWidth su ConfigDialog.VarChanged_winWidthcGs)|jj}|jddd|dS(Numainu EditorWindowuheight(u winHeightugetuAddChangedItem(uselfuparamsuvalue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuVarChanged_winHeight su!ConfigDialog.VarChanged_winHeightcGs)|jj}|jddd|dS(NumainuFormatParagraphu paragraph(u paraWidthugetuAddChangedItem(uselfuparamsuvalue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuVarChanged_paraWidthsu!ConfigDialog.VarChanged_paraWidthcGs)|jj}|jddd|dS(NumainuGeneralueditor-on-startup(u startupEditugetuAddChangedItem(uselfuparamsuvalue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuVarChanged_startupEditsu#ConfigDialog.VarChanged_startupEditcGs)|jj}|jddd|dS(NumainuGeneraluautosave(uautoSaveugetuAddChangedItem(uselfuparamsuvalue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuVarChanged_autoSavesu ConfigDialog.VarChanged_autoSavecGs)|jj}|jddd|dS(Numainu EditorWindowuencoding(uencodingugetuAddChangedItem(uselfuparamsuvalue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuVarChanged_encodingsu ConfigDialog.VarChanged_encodingcCs)iid6id6id6id6|_dS(Numainu highlightukeysu extensions(u changedItems(uself((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuResetChangedItems!suConfigDialog.ResetChangedItemscCsLt|}||j|kr3i|j|||jj||jj|dS|j| n|jj||jj||d| |jj||jj||jj| n |jj||jj|dS(Niukeysu Get New Keysu4Your changes will be saved as a new Custom Key Set. u/Enter a name for your new Custom Key Set below.u - (u listBindingsuindexuANCHORugetusplitukeysAreBuiltinu builtinKeysu customKeysuidleConfuGetCurrentKeySetu changedItemsulistuvaluesu GetKeysDialoguresultuGetNewKeysNameu select_setu select_anchoruCreateNewKeySetudeleteuinsertu keyBindinguset( uselfu listIndexubindingubindNameucurrentKeySetNameucurrentBindingsu keySetChangesueventucurrentKeySequencesunewKeysumessageu newKeySet((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyu GetNewKeysQs>    uConfigDialog.GetNewKeyscCs>tjddtjdd}t|d||j}|S(NuuserukeysudefaultuNew Custom Key Set(uidleConfuGetSectionListuGetCfgSectionNameDialoguresult(uselfumessageu usedNamesu newKeySet((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuGetNewKeysNameus  uConfigDialog.GetNewKeysNamecCs)|jd}|r%|j|ndS(NuNew Key Set Name:(uGetNewKeysNameuCreateNewKeySet(uselfu newKeysName((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuSaveAsNewKeySet|suConfigDialog.SaveAsNewKeySetcCs|jjdtdS(Nustate(u buttonNewKeysuconfiguNORMAL(uselfuevent((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuKeyBindingSelectedsuConfigDialog.KeyBindingSelectedc Cs&|jjr!|jj}n|jj}tj|}i}x;|D]3}|dd}dj||}|||tjddtjdd}t|d||j}|S(Nuuseru highlightudefaultuNew Custom Theme(uidleConfuGetSectionListuGetCfgSectionNameDialoguresult(uselfumessageu usedNamesunewTheme((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuGetNewThemeName s  uConfigDialog.GetNewThemeNamecCs)|jd}|r%|j|ndS(NuNew Theme Name:(uGetNewThemeNameuCreateNewTheme(uselfu newThemeName((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuSaveAsNewThemesuConfigDialog.SaveAsNewThemecCs|jjr'd}|jj}nd}|jj}tj||}||jdkr|jd|}x|D]}|||||jjdt|jjdtn^|jjrv|jjdt|jjdtn&|jjdt|jjdtdS(Niustate(ulistHelpusizeubuttonHelpListEdituconfiguDISABLEDubuttonHelpListRemoveu curselectionuNORMAL(uself((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuSetHelpListButtonStatesksu$ConfigDialog.SetHelpListButtonStatescCsht|dj}|rZ|jj|d|df|jjt|d|jn|jdS(NuNew Help Sourceii( uGetHelpSourceDialoguresultu userHelpListuappendulistHelpuinsertuENDuUpdateUserHelpChangedItemsuSetHelpListButtonStates(uselfu helpSource((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuHelpListItemAddws  uConfigDialog.HelpListItemAddcCs|jjt}|j|}t|dd|dd|dj}| sX||kr\dS||j|<|jj||jj||d|j|j dS(NuEdit Help SourceumenuItemiufilePathi( ulistHelpuindexuANCHORu userHelpListuGetHelpSourceDialoguresultudeleteuinsertuUpdateUserHelpChangedItemsuSetHelpListButtonStates(uselfu itemIndexu helpSourceu newHelpSource((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuHelpListItemEdits    uConfigDialog.HelpListItemEditcCsD|jjt}|j|=|jj||j|jdS(N(ulistHelpuindexuANCHORu userHelpListudeleteuUpdateUserHelpChangedItemsuSetHelpListButtonStates(uselfu itemIndex((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuHelpListItemRemoves   uConfigDialog.HelpListItemRemovec Csvi|jdds u,ConfigDialog.LoadFontCfg..u font-sizeutypeuintu10u7u8u9u11u12u13u14u16u18u20u22u font-boldiubool( u7u8u9u10u11u12u13u14u16u18u20u22(ulistutkFontufamiliesusortu listFontNameuinsertuENDuidleConfu GetOptionulowerufontNameusetuindexuseeu select_setu select_anchoruoptMenuFontSizeuSetMenuufontBoldu SetFontSample(uselfufontsufontuconfiguredFontulc_configuredFontulc_fontsucurrentFontIndexufontSize((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyu LoadFontCfgs*       uConfigDialog.LoadFontCfgcCs5tjddddddd}|jj|dS(NumainuIndentu num-spacesudefaultiutypeuint(uidleConfu GetOptionuspaceNumuset(uselfuspaceNum((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyu LoadTabCfgsuConfigDialog.LoadTabCfgc sjjtjdddddddtj}jjrtjdd}|jjj ||tjdd}|j|sj j d t j jd q9jj ||d nbtjdd}|jjj ||tjdd}|jjj ||d jtjj}|jd fd djj ||d jjdS(NumainuThemeudefaultutypeubooliu highlightuuserustateu- no custom themes -iukeycsj|dS(Ni(u themeElements(ux(uself(u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyusu+ConfigDialog.LoadThemeCfg..(uthemeIsBuiltinusetuidleConfu GetOptionu CurrentThemeugetuGetSectionListusortuoptMenuThemeBuiltinuSetMenuuradioThemeCustomuconfiguDISABLEDu customThemeuoptMenuThemeCustomu SetThemeTypeulistu themeElementsukeysuoptMenuHighlightTargetuPaintThemeSampleuSetHighlightTarget(uselfu currentOptionuitemListu themeNames((uselfu9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyu LoadThemeCfgs2       uConfigDialog.LoadThemeCfgc Cs`|jjtjdddddddtj}|jjrtjdd}|j|jj ||tjdd}|j|s|j j d t |j jd q9|jj ||d nbtjdd}|j|jj ||tjdd}|j|jj ||d |jtj}|j|dS( NumainuKeysudefaultutypeubooliukeysuuserustateu- no custom keys -i(ukeysAreBuiltinusetuidleConfu GetOptionu CurrentKeysugetuGetSectionListusortuoptMenuKeysBuiltinuSetMenuuradioKeysCustomuconfiguDISABLEDu customKeysuoptMenuKeysCustomu SetKeysTypeu LoadKeysList(uselfu currentOptionuitemListu keySetName((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyu LoadKeyCfgs,       uConfigDialog.LoadKeyCfgc Cs2|jjtjddddddd|jjtjddddd dd|jjtjdd d dd |jjtjdd d dd |jjtjddddd |jjtjdd dddtj |_ x(|j D]}|j j t |d qW|jdS(NumainuGeneralueditor-on-startupudefaultiutypeubooluautosaveiu EditorWindowuwidthuintuheightuFormatParagraphu paragraphuencodingunone(u startupEditusetuidleConfu GetOptionuautoSaveuwinWidthu winHeightu paraWidthuencodinguGetAllExtraHelpSourcesListu userHelpListulistHelpuinsertuENDuSetHelpListButtonStates(uselfuhelpItem((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuLoadGeneralCfgs    uConfigDialog.LoadGeneralCfgcCs6|j|j|j|j|jdS(u load configuration from default and user config files and populate the widgets on the config dialog pages. N(u LoadFontCfgu LoadTabCfgu LoadThemeCfgu LoadKeyCfguLoadGeneralCfg(uself((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyu LoadConfigss     uConfigDialog.LoadConfigscCsftjdj|s-tjdj|nx2|D]*}||}tjdj|||q4WdS(u save a newly created core key set. keySetName - string, the name of the new key set keySet - dictionary containing the new key set ukeysN(uidleConfuuserCfgu has_sectionu add_sectionu SetOption(uselfu keySetNameukeySetueventuvalue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyu SaveNewKeySet!s   uConfigDialog.SaveNewKeySetcCsftjdj|s-tjdj|nx2|D]*}||}tjdj|||q4WdS(u save a newly created theme. themeName - string, the name of the new theme theme - dictionary containing the new theme u highlightN(uidleConfuuserCfgu has_sectionu add_sectionu SetOption(uselfu themeNameuthemeuelementuvalue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyu SaveNewTheme-s   uConfigDialog.SaveNewThemecCsltj|j||rRtj|j|||krRtj|j||Sntj|j|||S(N(uidleConfu defaultCfgu has_optionuGetuuserCfgu RemoveOptionu SetOption(uselfu configTypeusectionuitemuvalue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyu SetUserValue9suConfigDialog.SetUserValuecCstjdjx|jD]}d}x|j|D]}|dkrdtjdjdd}nxO|j||D]<}|j|||}|j||||rvd}qvqvWq5W|rtj|jqqWx%ddgD]}tj|jqW|jdS(u3Save configuration changes to the user config file.umainu HelpFilesukeysu highlightNFT( uidleConfuuserCfguSaveu changedItemsuFalseuremove_sectionuTrueu SetUserValueuResetChangedItems(uselfu configTypeucfgTypeHasChangesusectionuitemuvalue((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuSaveAllChangedConfigsAs   u"ConfigDialog.SaveAllChangedConfigscCs1|jjj}x|D]}|jqWdS(N(uparentu instance_dictukeysuRemoveKeybindings(uselfu winInstancesuinstance((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuDeactivateCurrentConfigVs u$ConfigDialog.DeactivateCurrentConfigcCsY|jjj}x@|D]8}|j|j|j|j|jqWdS(u'Dynamically apply configuration changesN(uparentu instance_dictukeysuResetColorizeru ResetFontuset_notabs_indentwidthuApplyKeybindingsureset_help_menu_entries(uselfu winInstancesuinstance((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuActivateConfigChanges]s     u"ConfigDialog.ActivateConfigChangescCs|jdS(N(udestroy(uself((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuCancelgsuConfigDialog.CancelcCs|j|jdS(N(uApplyudestroy(uself((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuOkjs uConfigDialog.OkcCs"|j|j|jdS(N(uDeactivateCurrentConfiguSaveAllChangedConfigsuActivateConfigChanges(uself((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuApplyns  uConfigDialog.ApplycCsdS(N((uself((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuHelpssuConfigDialog.HelpN(Lu__name__u __module__u __qualname__u__init__u CreateWidgetsuCreatePageFontTabuCreatePageHighlightuCreatePageKeysuCreatePageGeneraluAttachVarCallbacksuVarChanged_fontSizeuVarChanged_fontNameuVarChanged_fontBolduVarChanged_spaceNumuVarChanged_colouruVarChanged_builtinThemeuVarChanged_customThemeuVarChanged_themeIsBuiltinuVarChanged_highlightTargetuVarChanged_keyBindinguVarChanged_builtinKeysuVarChanged_customKeysuVarChanged_keysAreBuiltinuVarChanged_winWidthuVarChanged_winHeightuVarChanged_paraWidthuVarChanged_startupEdituVarChanged_autoSaveuVarChanged_encodinguResetChangedItemsuAddChangedItemuGetDefaultItemsu SetThemeTypeu SetKeysTypeu GetNewKeysuGetNewKeysNameuSaveAsNewKeySetuKeyBindingSelecteduCreateNewKeySetu LoadKeysListuDeleteCustomKeysuDeleteCustomThemeu GetColouruOnNewColourSetuGetNewThemeNameuSaveAsNewThemeuCreateNewThemeuOnListFontButtonReleaseuNoneu SetFontSampleuSetHighlightTargetuSetColourSampleBindinguSetColourSampleuPaintThemeSampleuHelpSourceSelecteduSetHelpListButtonStatesuHelpListItemAdduHelpListItemEdituHelpListItemRemoveuUpdateUserHelpChangedItemsu LoadFontCfgu LoadTabCfgu LoadThemeCfgu LoadKeyCfguLoadGeneralCfgu LoadConfigsu SaveNewKeySetu SaveNewThemeu SetUserValueuSaveAllChangedConfigsuDeactivateCurrentConfiguActivateConfigChangesuCanceluOkuApplyuHelp(u __locals__((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyu ConfigDialogs + ' ? Y E a                      $                      !         u ConfigDialogu__main__utextuDialogucommandcCs ttdS(NuSettings(u ConfigDialoguroot(((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyuzsu(#u__doc__utkinterutkinter.messageboxu messageboxu tkMessageBoxutkinter.colorchooseru colorchooserutkColorChooseru tkinter.fontufontutkFontucopyuidlelib.configHandleruidleConfuidlelib.dynOptionMenuWidgetu DynOptionMenuuidlelib.tabbedpagesu TabbedPageSetuidlelib.keybindingDialogu GetKeysDialoguidlelib.configSectionNameDialoguGetCfgSectionNameDialoguidlelib.configHelpSourceEdituGetHelpSourceDialoguidlelibu macosxSupportuToplevelu ConfigDialogu__name__uTkurootuButtonupacku instance_dictumainloop(((u9/opt/alt/python33/lib64/python3.3/idlelib/configDialog.pyu s.  `