ž ©ÿfEc@sªdZddlZddlZddlTddljZddljZ Gdd„de ƒZ e dkr¦e ƒZdd„Zeed d d eƒjƒejƒndS( uKDialog to specify or edit the parameters for a user configured help source.iN(u*cBst|EeZdZdddd„Zdd„Zdd„Zdd „Zd d „Zdd d „Z ddd„Z dS(uGetHelpSourceDialogucCsCtj||ƒ|jddƒ|jdtdtƒ|j|ƒ|j|ƒ|jƒ|jd|j ƒ||_ d |_ |j ƒ|jj|ƒ|jj|ƒ|jƒ|jƒ|jd|jƒ|jƒd|jƒd|jƒ|jƒd|jƒdfƒ|jƒ|jd|jƒ|jƒd S( uôGet menu entry and url/ local file location for Additional Help User selects a name for the Help resource and provides a web url or a local file as its source. The user can enter a url or browse for the file. u borderwidthiuheightuwidthuWM_DELETE_WINDOWu+%d+%diuN(uToplevelu__init__u configureu resizableuFALSEutitleu transientugrab_setuprotocoluCanceluparentuNoneuresultu CreateWidgetsumenuusetupathuwithdrawuupdate_idletasksugeometryu winfo_rootxu winfo_widthuwinfo_reqwidthu winfo_rootyu winfo_heightuwinfo_reqheightu deiconifyubinduOku wait_window(uselfuparentutitleumenuItemufilePath((uA/opt/alt/python33/lib64/python3.3/idlelib/configHelpSourceEdit.pyu__init__ s,          uGetHelpSourceDialog.__init__c Csmt|ƒ|_t|ƒ|_t|ƒ|_t|dddtƒ|_|jjdtdt dt ƒt |jdt dt d d ƒ}t|jd |jd d ƒ|_|jjƒt |jdt dt d dƒ}t|jd |jd dƒ|_|jjƒ|jdt ddddƒ|jjdt ddddƒ|jdt ddddƒ|jjdt ddddƒt|jd dd dd|jƒ}|jddƒt|ƒ}|jdtdtƒt|d dd ddtd|jƒ|_|jjddddddddƒt|d dd dd|jƒ|_|jjddddddddƒdS(Nu borderwidthiureliefusideuexpandufilluanchorujustifyutextu Menu Item:u textvariableuwidthiu,Help File Path: Enter URL or browse for filei(upadxiupadyiuBrowseiucommanduOKudefaulturowiucolumnuCanceli(u StringVarumenuupathufontSizeuFrameuGROOVEu frameMainupackuTOPuTRUEuBOTHuLabeluWuLEFTuEntryu entryMenuu focus_setu entryPathuButtonu browseFileuBOTTOMuXuACTIVEuOkubuttonOkugriduCancelu buttonCancel(uselfu labelMenuu labelPathu browseButtonu frameButtons((uA/opt/alt/python33/lib64/python3.3/idlelib/configHelpSourceEdit.pyu CreateWidgets,s<        %u!GetHelpSourceDialog.CreateWidgetscCsdddddg}|jjƒ}|rEtjj|ƒ\}}nsd}tjdd …d kr¬tjjtjjtj ƒdƒ}tjj |ƒs¸tj ƒ}q¸n tj ƒ}t j d|d|ƒ}|jd|d|ƒ}|r|jj|ƒndS(Nu HTML Filesu *.htm *.htmluTEXTu PDF Filesu*.pdfuWindows Help Filesu*.chmu Text Filesu*.txtu All Filesu*iuwinuDocuparentu filetypesu initialdiru initialfile(u HTML Filesu *.htm *.htmluTEXT(u PDF Filesu*.pdfuTEXT(uWindows Help Filesu*.chm(u Text Filesu*.txtuTEXT(u All Filesu*(upathugetuosusplituNoneusysuplatformujoinudirnameu executableuisdirugetcwdu tkFileDialoguOpenushowuset(uselfu filetypesupathudirubaseu opendialogufile((uA/opt/alt/python33/lib64/python3.3/idlelib/configHelpSourceEdit.pyu browseFileLs$ $ uGetHelpSourceDialog.browseFilecCsŸd}|jjƒ}|jƒ|sWtjddddd|ƒ|jjƒd }nDt |ƒdkr›tjddddd|ƒ|jjƒd }n|S( u3Simple validity check for a sensible menu item nameutitleuMenu Item ErrorumessageuNo menu item specifieduparentiu(Menu item too long: Limit 30 characters.TF( uTrueumenuugetustripu tkMessageBoxu showerroru entryMenuu focus_setuFalseulen(uselfumenuOkumenu((uA/opt/alt/python33/lib64/python3.3/idlelib/configHelpSourceEdit.pyuMenuOkcs      uGetHelpSourceDialog.MenuOkcCsÚd }|jjƒ}|jƒ|sWtjddddd|ƒ|jjƒd }n|j dƒrinm|dd …d kr’|d d…}nt jj |ƒsÖtjdddd d|ƒ|jjƒd }n|S(u(Simple validity check for menu file pathutitleuFile Path ErrorumessageuNo help file path specified.uparentuwww.uhttpNiufile:uHelp file path does not exist.TF(uwww.uhttp( uTrueupathugetustripu tkMessageBoxu showerroru entryPathu focus_setuFalseu startswithuosuexists(uselfupathOkupath((uA/opt/alt/python33/lib64/python3.3/idlelib/configHelpSourceEdit.pyuPathOkws(     uGetHelpSourceDialog.PathOkcCsª|jƒr¦|jƒr¦|jjƒjƒ|jjƒjƒf|_tjdkr™|jd}|j dƒrsq™t |jƒ|_d||jds   —