summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteven M. Gava <elguavas@python.net>2002-03-05 00:25:58 (GMT)
committerSteven M. Gava <elguavas@python.net>2002-03-05 00:25:58 (GMT)
commitf31eec0e2ee3f27951693e7478c5650f64971b3c (patch)
tree9b86aef6ced7bed5be5b33f8a0a6e8520e5d005c
parenta8e1d81bdc9cb45cc071eff2991a1e96d4b22e7c (diff)
downloadcpython-f31eec0e2ee3f27951693e7478c5650f64971b3c.zip
cpython-f31eec0e2ee3f27951693e7478c5650f64971b3c.tar.gz
cpython-f31eec0e2ee3f27951693e7478c5650f64971b3c.tar.bz2
further work on new config system
-rw-r--r--Lib/idlelib/configDialog.py17
-rw-r--r--Lib/idlelib/keybindingDialog.py15
2 files changed, 23 insertions, 9 deletions
diff --git a/Lib/idlelib/configDialog.py b/Lib/idlelib/configDialog.py
index 6b9a146..753a1fc 100644
--- a/Lib/idlelib/configDialog.py
+++ b/Lib/idlelib/configDialog.py
@@ -463,7 +463,10 @@ class ConfigDialog(Toplevel):
def VarChanged_themeIsBuiltin(self,*params):
value=self.themeIsBuiltin.get()
self.AddChangedItem('main','Theme','default',value)
- self.PaintThemeSample()
+ if value:
+ self.VarChanged_builtinTheme()
+ else:
+ self.VarChanged_customTheme()
def VarChanged_highlightTarget(self,*params):
self.SetHighlightTarget()
@@ -495,9 +498,9 @@ class ConfigDialog(Toplevel):
value=self.keysAreBuiltin.get()
self.AddChangedItem('main','Keys','default',value)
if value:
- self.LoadKeysList(self.builtinKeys.get())
+ self.VarChanged_builtinKeys()
else:
- self.LoadKeysList(self.customKeys.get())
+ self.VarChanged_customKeys()
def VarChanged_winWidth(self,*params):
value=self.winWidth.get()
@@ -936,24 +939,31 @@ class ConfigDialog(Toplevel):
type='bool',default=1))
##currently set theme
currentOption=idleConf.CurrentTheme()
+ print 'current option',currentOption
##load available theme option menus
if self.themeIsBuiltin.get(): #default theme selected
+ print 'builtin theme'
itemList=idleConf.GetSectionList('default','highlight')
itemList.sort()
+ print 'builtin items:',itemList
self.optMenuThemeBuiltin.SetMenu(itemList,currentOption)
itemList=idleConf.GetSectionList('user','highlight')
itemList.sort()
+ print 'user items:',itemList
if not itemList:
self.radioThemeCustom.config(state=DISABLED)
self.customTheme.set('- no custom themes -')
else:
self.optMenuThemeCustom.SetMenu(itemList,itemList[0])
else: #user theme selected
+ print 'user theme'
itemList=idleConf.GetSectionList('user','highlight')
itemList.sort()
+ print 'user items:',itemList
self.optMenuThemeCustom.SetMenu(itemList,currentOption)
itemList=idleConf.GetSectionList('default','highlight')
itemList.sort()
+ print 'builtin items:',itemList
self.optMenuThemeBuiltin.SetMenu(itemList,itemList[0])
self.SetThemeType()
##load theme element option menu
@@ -1112,4 +1122,5 @@ if __name__ == '__main__':
root=Tk()
Button(root,text='Dialog',
command=lambda:ConfigDialog(root,'Settings')).pack()
+ root.instanceDict={}
root.mainloop()
diff --git a/Lib/idlelib/keybindingDialog.py b/Lib/idlelib/keybindingDialog.py
index 3b1ddba..f99e452 100644
--- a/Lib/idlelib/keybindingDialog.py
+++ b/Lib/idlelib/keybindingDialog.py
@@ -142,7 +142,8 @@ class GetKeysDialog(Toplevel):
if modifiers: modifiers[0]='<'+modifiers[0]
keyList=keyList+modifiers
if finalKey:
- if (not modifiers) and (finalKey in self.functionKeys):
+ if (not modifiers) and (finalKey not
+ in self.alphanumKeys+self.punctuationKeys):
finalKey='<'+self.TranslateKey(finalKey)
else:
finalKey=self.TranslateKey(finalKey)
@@ -225,16 +226,18 @@ class GetKeysDialog(Toplevel):
tkMessageBox.showerror(title='Key Sequence Error',
message='No final key specified.')
keysOk=0
- elif (not modifiers) and (finalKey not in self.functionKeys):
- #modifier required if not a function key
+ elif (not modifiers) and (finalKey in
+ self.alphanumKeys+self.punctuationKeys):
+ #modifier required
tkMessageBox.showerror(title='Key Sequence Error',
message='No modifier key(s) specified.')
keysOk=0
- elif (modifiers==['Shift']) and (finalKey not in self.functionKeys):
+ elif (modifiers==['Shift']) and (finalKey not
+ in self.functionKeys+('Tab',)):
#shift alone is only a useful modifier with a function key
tkMessageBox.showerror(title='Key Sequence Error',
- message='Shift alone is only a useful modifier '+
- 'when used with a function key.')
+ message='Shift alone is not a useful modifier '+
+ 'when used with this final key key.')
keysOk=0
elif keySequence in self.currentKeySequences: #keys combo already in use
tkMessageBox.showerror(title='Key Sequence Error',