;ò
�ü?c           @   s‹   d  Z  d k Td k Z d k Z d k Z d e f d „  ƒ  YZ e d j o< e ƒ  Z	 d „  Z
 e e	 d d d	 e
 ƒi ƒ  e	 i ƒ  n d S(
   s6   
dialog for building tkinter accelerator key bindings
(   s   *Ns   GetKeysDialogc           B   sƒ   t  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d	 „  Z
 d
 „  Z e d „ Z e d „ Z d „  Z RS(   Nc         C   s›  t  i |  | ƒ |  i d d ƒ |  i d t d t ƒ |  i | ƒ |  i | ƒ |  i	 ƒ  |  i
 d |  i ƒ | |  _ | |  _ | |  _ d |  _ t |  ƒ |  _ |  i i d ƒ |  i ƒ  g  |  _ x: |  i D]/ } t |  ƒ } | i d ƒ |  i i | ƒ qÍ W|  i ƒ  |  i ƒ  |  i ƒ  |  i ƒ  |  i d | i ƒ  | i ƒ  d |  i ƒ  d | i  ƒ  | i! ƒ  d |  i" ƒ  d f ƒ |  i# ƒ  |  i$ ƒ  d	 S(
   sõ   
        action - string, the name of the virtual event these keys will be
                 mapped to
        currentKeys - list, a list of all key sequence lists currently mapped
                 to virtual events, for overlap checking
        s   borderwidthi   s   heights   widths   WM_DELETE_WINDOWs    s   +%d+%di   N(%   s   Toplevels   __init__s   selfs   parents	   configures	   resizables   FALSEs   titles	   transients   grab_sets   protocols   Cancels   actions   currentKeySequencess   results	   StringVars	   keyStrings   sets   SetModifiersForPlatforms   modifier_varss	   modifierss   modifiers   variables   appends   CreateWidgetss   LoadFinalKeyLists   withdraws   update_idletaskss   geometrys   winfo_rootxs   winfo_widths   winfo_reqwidths   winfo_rootys   winfo_heights   winfo_reqheights	   deiconifys   wait_window(   s   selfs   parents   titles   actions   currentKeySequencess   variables   modifier(    (    s5   /mit/python/lib/python2.3/idlelib/keybindingDialog.pys   __init__	   s8     
				
	
 



[
c         C   sJ  t  |  d d d t ƒ} | i d t d t d t ƒ t  |  ƒ } | i d t	 d t
 ƒ t | d d d	 d
 d |  i ƒ|  _ |  i i d d d d d d d d ƒ t | d d d	 d
 d |  i ƒ|  _ |  i i d d d d d d d d ƒ t  | ƒ |  _ t  | ƒ |  _ t  | ƒ |  _ t  | ƒ |  _ |  i i d d d d d t d d d d ƒ |  i i d d d d d t d d d d ƒ |  i i ƒ  |  i i d d d d d t d d ƒ |  i i d d d d d t d d ƒ |  i i ƒ  t | d |  i d d ƒ|  _ |  i i d d d d d t d d d d ƒ t |  i d d |  i d ƒ}	 |	 i d t ƒ t |  i d t d |  i d t  d d ƒ} | i d d d d d t
 ƒ h  |  _" d }
 x¡ t$ |  i% |  i& ƒ D]Š \ } } |  i) i* | | ƒ } t, |  i d |  i- d | d | d | d  d! ƒ} | i d d d |
 d d d t ƒ | |  i" | <|
 d 7}
 qÂWt |  i d t d d" d# d$ ƒ} | i d d d d d% d& d d d t ƒ t0 |  i d	 d' d( d) d* t1 ƒ|  _2 |  i2 i3 d+ |  i4 ƒ |  i2 i d d d d& d, d& d t5 ƒ t6 |  i d- t7 d |  i2 i8 ƒ} |  i2 i: d. | i; ƒ | i d d d d d, d& d t5 ƒ t |  i d d/ d |  i< ƒ|  _= |  i= i d d d d d% d& ƒ t |  i d t d d0 |  i d1 d2 ƒ} | i d t ƒ t? |  i d |  i ƒ|  _@ |  i@ i d t
 ƒ t |  i d t d d3 d4 d5 d6 d7 d8 ƒ} | i d d d d d t ƒ d  S(9   Ns   borderwidthi   s   reliefs   sides   expands   fills   texts   Oks   widthi   s   commands   rowi    s   columns   padxi   s   padys   Canceli   s   stickys   Advanced Key Binding Entry >>s   sticks   New keys for  's   ' :s   anchors   justifys   textvariables   ipadxs   ipadys   variables   onvalues   offvalues    s   Select the desired modifier
s   keys above, and final key
s   from the list on the right.s
   columnspani   i   s   heighti
   s
   selectmodes   <ButtonRelease-1>s   rowspans   orients   yscrollcommands
   Clear Keyss   Enter new binding(s) for  's   ' :
s"   (will not be checked for validity)s5   Key bindings are specified using tkinter key id's as
sh   in these samples: <Control-f>, <Shift-F2>, <F12>,
<Control-space>, <Meta-less>, <Control-Alt-Shift-x>.

s8   'Emacs style' multi-keystroke bindings are specified as
s6   follows: <Control-x><Control-y> or <Meta-f><Meta-g>.

s4   Multiple separate bindings for one action should be
s,   separated by a space, eg., <Alt-v> <Meta-v>.(B   s   Frames   selfs   SUNKENs	   frameMains   packs   TOPs   TRUEs   BOTHs   frameButtonss   BOTTOMs   Xs   Buttons   Oks   buttonOks   grids   Cancels   buttonCancels   frameKeySeqBasics   frameKeySeqAdvanceds   frameControlsBasics   frameHelpAdvanceds   NSEWs   lifts   ToggleLevels   buttonLevels   EWs   Labels   actions   labelTitleBasics   Ws   LEFTs	   keyStrings   GROOVEs   labelKeysBasics   modifier_checkbuttonss   columns   zips	   modifierss   modifier_varss   modifiers   variables   modifier_labels   gets   labels   Checkbuttons   BuildKeyStrings   checks   labelFnAdvices   Listboxs   SINGLEs   listKeysFinals   binds   FinalKeySelecteds   NSs	   Scrollbars   VERTICALs   yviews   scrollKeysFinals   configs   sets   ClearKeySeqs   buttonClears   labelTitleAdvanceds   Entrys   entryKeysAdvanceds   labelHelpAdvanced(   s   selfs   labelKeysBasics	   frameMains   checks   scrollKeysFinals   labelTitleAdvanceds   labels   variables   labelFnAdvices   labelTitleBasics   columns   labelHelpAdvanceds   frameButtonss   modifier(    (    s5   /mit/python/lib/python2.3/idlelib/keybindingDialog.pys   CreateWidgets/   s~    %%++%%+		 		"(%"		 c         C   sm   d k  } | i d j o | i i d ƒ o d d d d g |  _ n d d d g |  _ h  d d	 <|  _ d S(
   sU  Determine list of names of key modifiers for this platform.

        The names are used to build Tk bindings -- it doesn't matter if the
        keyboard has these keys, it matters if Tk understands them. The
        order is also important: key binding equality depends on it, so
        config-keys.def must use the same ordering.
        Ns   darwins   .apps   Shifts   Controls   Options   Commands   Alts   Ctrl(   s   syss   platforms
   executables   counts   selfs	   modifierss   modifier_label(   s   selfs   sys(    (    s5   /mit/python/lib/python2.3/idlelib/keybindingDialog.pys   SetModifiersForPlatformx   s     	#c         C   s    |  i i d ƒ d  d j oH |  i ƒ  |  i i d d ƒ |  i i ƒ  |  i i ƒ  |  i i	 ƒ  n8 |  i ƒ  |  i i d d ƒ |  i
 i ƒ  |  i i ƒ  d  S(   Ns   texti   s   Advanceds   << Basic Key Binding Entrys   Advanced Key Binding Entry >>(   s   selfs   buttonLevels   cgets   ClearKeySeqs   configs   frameKeySeqAdvanceds   lifts   frameHelpAdvanceds   entryKeysAdvanceds	   focus_sets   frameKeySeqBasics   frameControlsBasic(   s   self(    (    s5   /mit/python/lib/python2.3/idlelib/keybindingDialog.pys   ToggleLevel‡   s    

c         C   s   |  i ƒ  d  S(   N(   s   selfs   BuildKeyString(   s   selfs   event(    (    s5   /mit/python/lib/python2.3/idlelib/keybindingDialog.pys   FinalKeySelected”   s    c         C   sÒ   g  } |  i ƒ  } |  i i t ƒ } | o d | d | d <n | | } | oZ | o | |  i |  i	 j o d |  i
 | ƒ } n |  i
 | ƒ } | i | d ƒ n t i | d ƒ } |  i i | ƒ d  S(   Ns   <i    s   >s   -(   s   keyLists   selfs   GetModifierss	   modifierss   listKeysFinals   gets   ANCHORs   finalKeys   alphanumKeyss   punctuationKeyss   TranslateKeys   appends   strings   joins   keyStrs	   keyStrings   set(   s   selfs	   modifierss   keyStrs   finalKeys   keyList(    (    s5   /mit/python/lib/python2.3/idlelib/keybindingDialog.pys   BuildKeyString—   s     
c         C   sA   g  i  } |  i D] } | | i ƒ  ƒ q ~ } t t | ƒ Sd  S(   N(	   s   appends   _[1]s   selfs   modifier_varss   variables   gets   modLists   filters   None(   s   selfs   modLists   _[1]s   variable(    (    s5   /mit/python/lib/python2.3/idlelib/keybindingDialog.pys   GetModifiers§   s    0c         C   s[   |  i i d t ƒ |  i i t d ƒ x |  i D] } | i d ƒ q0 W|  i	 i d ƒ d  S(   Ni    s   0.0s    (
   s   selfs   listKeysFinals   select_clears   ENDs   yviews   MOVETOs   modifier_varss   variables   sets	   keyString(   s   selfs   variable(    (    s5   /mit/python/lib/python2.3/idlelib/keybindingDialog.pys   ClearKeySeq«   s    
 c         C   sÝ   d d d d d d d d d d	 d
 d f |  _ t t i t i ƒ |  _ t d ƒ |  _ d d d f |  _ d d d f |  _	 d d d d d d d d f |  _
 |  i |  i |  i |  i |  i	 |  i
 } |  i i t | Œ d  S(   Ns   F1s   F2s   F4s   F5s   F6s   F7s   F8s   F9s   F10s   F11s   F12s   ~!@#%^&*()_-+={}[]|;:,.<>/?s   Tabs   Spaces   Returns	   BackSpaces   Deletes   Inserts   Homes   Ends   Page Ups	   Page Downs
   Left Arrows   Right Arrows   Up Arrows
   Down Arrow(   s   selfs   functionKeyss   tuples   strings   ascii_lowercases   digitss   alphanumKeyss   punctuationKeyss   whitespaceKeyss   editKeyss   moveKeyss   keyss   listKeysFinals   inserts   END(   s   selfs   keys(    (    s5   /mit/python/lib/python2.3/idlelib/keybindingDialog.pys   LoadFinalKeyList²   s    -!,c         C   sb  h  d d <d d <d d <d d <d	 d
 <d d <d d <d d <d d <d d <d d <d d <d d <d d <d d <d d  <d! d" <d# d$ <d% d& <d' d( <d) d* <d+ d, <d- d. <d/ d0 <d1 d2 <d3 d4 <d5 d6 <d7 d8 <d9 d: <d; d< <d= d> <d? d@ <dA dB <} | | i ƒ  j o | | } n dC | } | Sd  S(D   Ns   ~s
   asciitildes   !s   exclams   @s   ats   #s
   numbersigns   %s   percents   ^s   asciicircums   &s	   ampersands   *s   asterisks   (s	   parenlefts   )s
   parenrights   _s
   underscores   -s   minuss   +s   pluss   =s   equals   {s	   bracelefts   }s
   bracerights   [s   bracketlefts   ]s   bracketrights   |s   bars   ;s	   semicolons   :s   colons   ,s   commas   .s   periods   <s   lesss   >s   greaters   /s   slashs   ?s   questions   Page Ups   Priors	   Page Downs   Nexts
   Left Arrows   Lefts   Right Arrows   Rights   Up Arrows   Ups
   Down Arrows   Downs   Key-(   s   translateDicts   keys   keys(   s   selfs   keys   translateDict(    (    s5   /mit/python/lib/python2.3/idlelib/keybindingDialog.pys   TranslateKeyÁ   s    ÿ 0	
c         C   s1   |  i ƒ  o  |  i i ƒ  |  _ |  i ƒ  n d  S(   N(   s   selfs   KeysOks	   keyStrings   gets   results   destroy(   s   selfs   event(    (    s5   /mit/python/lib/python2.3/idlelib/keybindingDialog.pys   OkÑ   s    c         C   s   d |  _ |  i ƒ  d  S(   Ns    (   s   selfs   results   destroy(   s   selfs   event(    (    s5   /mit/python/lib/python2.3/idlelib/keybindingDialog.pys   CancelÖ   s    	c         C   sd  d } |  i i ƒ  } | i ƒ  |  i i t ƒ } |  i	 ƒ  } | i ƒ  } | o  t i d d d d ƒ d } nì | i d ƒ o  t i d d d d ƒ d } n» | o | |  i |  i j o  t i d d d d	 ƒ d } n| | d
 g j o | |  i d f j o$ t i d d d d d ƒ d } n1 | |  i j o  t i d d d d ƒ d } n | Sd  S(   Ni   s   titles   Key Sequence Errors   messages   No keys specified.i    s   >s   No final key specified.s   No modifier key(s) specified.s   Shifts   Tabs%   Shift alone is not a useful modifier s"   when used with this final key key.s'   This key combination is already in use.(   s   keysOks   selfs	   keyStrings   gets   keyss   strips   listKeysFinals   ANCHORs   finalKeys   GetModifierss	   modifierss   splits   keySequences   tkMessageBoxs	   showerrors   endswiths   alphanumKeyss   punctuationKeyss   functionKeyss   currentKeySequences(   s   selfs	   modifierss   keyss   keysOks   finalKeys   keySequence(    (    s5   /mit/python/lib/python2.3/idlelib/keybindingDialog.pys   KeysOkÚ   s6    






'


(   s   __name__s
   __module__s   __init__s   CreateWidgetss   SetModifiersForPlatforms   ToggleLevels   FinalKeySelecteds   BuildKeyStrings   GetModifierss   ClearKeySeqs   LoadFinalKeyLists   TranslateKeys   Nones   Oks   Cancels   KeysOk(    (    (    s5   /mit/python/lib/python2.3/idlelib/keybindingDialog.pys   GetKeysDialog   s   	&	I								s   __main__c          C   s'   d } t t d d g  ƒ }  |  i GHd  S(   Ns    s   Get Keyss
   find-again(   s   keySeqs   GetKeysDialogs   roots   dlgs   result(   s   dlgs   keySeq(    (    s5   /mit/python/lib/python2.3/idlelib/keybindingDialog.pys   run   s    s   texts   Dialogs   command(   s   __doc__s   Tkinters   tkMessageBoxs   strings   oss   Toplevels   GetKeysDialogs   __name__s   Tks   roots   runs   Buttons   packs   mainloop(   s   runs   strings   roots   tkMessageBoxs   oss   GetKeysDialog(    (    s5   /mit/python/lib/python2.3/idlelib/keybindingDialog.pys   ?   s   	õ		