ó C…#Wc@sdZddlZddlZddlZddlmZddlmZddlm Z m Z ddl m Z ddl mZddlmZdd lmZmZdd lmZmZdd lmZdd lmZdd lmZddlmZda defd„ƒYZ!dS(s Locale selection screen iÿÿÿÿN(t namedtuple(t attrgetter(tG11NSvcLocaleOperationstG11NSvcLocalePopulate(t InstallEngine(tINSTALL_LOGGER_NAME(tSystemConfiguration(t_tSCI_HELP(t BaseScreent SkipException(t textwidth(tListItem(t ScrollWindow(t WindowAreat LocaleScreencBs†eZdZedƒZedƒZdZdZdZdZ dZ e e dZ e ded ƒfZ d d „Zd „Zd „ZRS(s Let the user choose the locale sËSelect language support and locale. These selections determine the language support, the default date and time, and other data formats. The language chosen automatically determines the available locales.sNo Default Language Supporttlocalest territoriesiiis/%s/locale.txttLocalec Csütdkr"tjtdƒantt|ƒj|ƒ|dkrStj|_ n ||_ t ddddƒ|_ t j ƒj|_|jjdtdtƒd|_t|jdƒsÉd|j_nt|jdƒsêd|j_nt|jd ƒs d|j_nt|jd ƒs,d|j_nd|_|j tjkrwtd ƒ|_td ƒ|_td ƒ|_n6tdƒ|_tdƒ|_tdƒ|_d|_tƒ|_|jj ƒ}t!d|ƒ|_"t#ddƒ|_$t%ƒ|_&t%ƒ|_'xñ|D]é}|dkr#q q |dks;|dkr“|j'sô|j$j(ddtj)|j"j*d|ƒ|j"j+d|ƒgƒ|j'd|j/|j j7|dƒkr>|}n-|j.|krV|}n|dkrk|}n| d 7} qEW|j8j9ƒ|jj:|j-ƒ|r¸|j-j;|dt,ƒndS(sCreate a list of localestLANGRRtkeyt lang_desct lang_codetlociiiii(tx_locty_loctscrollable_liness&win_area.lines=%s, win_area.columns=%stenable_spelldicttwindowt iso_8859_1s%s (%s)ttexttdata_objt force_to_topN(<R!tlistR'RR&R-Rt TERRITORIESRtostenvirontgetR6t getlocaleR R8titemsR=tappendtsortedRtget_locales_with_language_codeRtinsertR9t center_wint add_paragraphR0tadd_textR1t SCROLL_SIZERLthlinetcursest ACS_HLINERtlent win_size_ytlinest win_size_xtcolumnsR tdebugR R,R/RGREtterritory_descR(RIR R t spell_dicttlowerR?RAt do_updatetactivate_objecttactivate_object_force(R@tcurrent_localet selected_loctloc_listtsorted_loc_listRtseenRDtvaltcodet territoryt lines_offsetRItwin_areatloc_instt list_textt list_item((slocale_select.pyt_show¦s    $                     cCs2tjjdƒd kr-tjjdƒ}nd}|jtjkr˜|jjƒj j dkr˜|jjƒj j |j _ |jjd|j j ƒ}||krî|j|}|j |j _ |j |j _|j|j _|j|j _q.tƒ}x4|D],}||jkrþ|j|j|ƒqþqþWt|dtddƒƒ}|dj |j _|dj |j _ |dj|j _|dj|j _n–|jtjkrþ|jjƒj j |j _|jjƒj j|j _|jjƒj j|j _n0d|j _d|j _ d|j _d|j _dS( s Save the locale on change screenRCRRFRDRiRGiN(NR(RSRTRUR!R'RR&R/tget_active_objectRORGtencodingR-RR6RZR8Rtloc_descRRERRQRXRYRRR(R@RoRRyRqRvRr((slocale_select.pyton_change_screen%sB          N(t__name__t __module__t__doc__Rt PARAGRAPHR;R&RRR_t ITEM_OFFSETtITEM_MAX_WIDTHtITEM_DESC_OFFSETRt HELP_DATAR!R%R|R€(((slocale_select.pyR3s   a ("RƒRaR"RSt collectionsRtoperatorRtg11nsvcRRtsolaris_install.engineRtsolaris_install.loggerRt!solaris_install.sysconfig.sc_specRtsolaris_install.sysconfig.utilRRt&solaris_install.terminalui.base_screenR R tsolaris_install.terminalui.i18nR t$solaris_install.terminalui.list_itemR t(solaris_install.terminalui.scroll_windowR t&solaris_install.terminalui.window_areaRR!R R(((slocale_select.pyts"