Commit 0fb8656c authored by Kurt B. Kaiser's avatar Kurt B. Kaiser

Conform to py3k dict.{keys, items, values} with some advice from 2b3

M    idlelib/configHandler.py
M    idlelib/ColorDelegator.py
M    idlelib/Delegator.py
M    idlelib/ObjectBrowser.py
M    idlelib/PyShell.py
M    idlelib/Debugger.py
M    idlelib/configDialog.py
M    idlelib/StackViewer.py
M    idlelib/keybindingDialog.py
M    idlelib/tabpage.py
M    idlelib/EditorWindow.py
M    idlelib/WindowList.py
M    idlelib/RemoteDebugger.py
M    idlelib/dynOptionMenuWidget.py
parent 11fb851e
...@@ -190,7 +190,7 @@ class ColorDelegator(Delegator): ...@@ -190,7 +190,7 @@ class ColorDelegator(Delegator):
##print head, "get", mark, next, "->", repr(line) ##print head, "get", mark, next, "->", repr(line)
if not line: if not line:
return return
for tag in self.tagdefs.keys(): for tag in self.tagdefs:
self.tag_remove(tag, mark, next) self.tag_remove(tag, mark, next)
chars = chars + line chars = chars + line
m = self.prog.search(chars) m = self.prog.search(chars)
...@@ -244,7 +244,7 @@ class ColorDelegator(Delegator): ...@@ -244,7 +244,7 @@ class ColorDelegator(Delegator):
return return
def removecolors(self): def removecolors(self):
for tag in self.tagdefs.keys(): for tag in self.tagdefs:
self.tag_remove(tag, "1.0", "end") self.tag_remove(tag, "1.0", "end")
def main(): def main():
......
...@@ -312,8 +312,7 @@ class Debugger: ...@@ -312,8 +312,7 @@ class Debugger:
def load_breakpoints(self): def load_breakpoints(self):
"Load PyShellEditorWindow breakpoints into subprocess debugger" "Load PyShellEditorWindow breakpoints into subprocess debugger"
pyshell_edit_windows = self.pyshell.flist.inversedict.keys() for editwin in self.pyshell.flist.inversedict:
for editwin in pyshell_edit_windows:
filename = editwin.io.filename filename = editwin.io.filename
try: try:
for lineno in editwin.breakpoints: for lineno in editwin.breakpoints:
......
...@@ -13,7 +13,7 @@ class Delegator: ...@@ -13,7 +13,7 @@ class Delegator:
return attr return attr
def resetcache(self): def resetcache(self):
for key in self.__cache.keys(): for key in self.__cache:
try: try:
delattr(self, key) delattr(self, key)
except AttributeError: except AttributeError:
...@@ -21,7 +21,7 @@ class Delegator: ...@@ -21,7 +21,7 @@ class Delegator:
self.__cache.clear() self.__cache.clear()
def cachereport(self): def cachereport(self):
keys = self.__cache.keys() keys = list(self.__cache.keys())
keys.sort() keys.sort()
print(keys) print(keys)
......
...@@ -654,7 +654,7 @@ class EditorWindow(object): ...@@ -654,7 +654,7 @@ class EditorWindow(object):
for item in menu[1]: for item in menu[1]:
if item: if item:
menuEventDict[menu[0]][prepstr(item[0])[1]] = item[1] menuEventDict[menu[0]][prepstr(item[0])[1]] = item[1]
for menubarItem in self.menudict.keys(): for menubarItem in self.menudict:
menu = self.menudict[menubarItem] menu = self.menudict[menubarItem]
end = menu.index(END) + 1 end = menu.index(END) + 1
for index in range(0, end): for index in range(0, end):
...@@ -733,7 +733,7 @@ class EditorWindow(object): ...@@ -733,7 +733,7 @@ class EditorWindow(object):
finally: finally:
rf_file.close() rf_file.close()
# for each edit window instance, construct the recent files menu # for each edit window instance, construct the recent files menu
for instance in self.top.instance_dict.keys(): for instance in self.top.instance_dict:
menu = instance.recent_files_menu menu = instance.recent_files_menu
menu.delete(1, END) # clear, and rebuild: menu.delete(1, END) # clear, and rebuild:
for i, file in zip(count(), rf_list): for i, file in zip(count(), rf_list):
...@@ -863,7 +863,7 @@ class EditorWindow(object): ...@@ -863,7 +863,7 @@ class EditorWindow(object):
self.load_standard_extensions() self.load_standard_extensions()
def unload_extensions(self): def unload_extensions(self):
for ins in self.extensions.values(): for ins in list(self.extensions.values()):
if hasattr(ins, "close"): if hasattr(ins, "close"):
ins.close() ins.close()
self.extensions = {} self.extensions = {}
...@@ -893,7 +893,7 @@ class EditorWindow(object): ...@@ -893,7 +893,7 @@ class EditorWindow(object):
self.extensions[name] = ins self.extensions[name] = ins
if keydefs: if keydefs:
self.apply_bindings(keydefs) self.apply_bindings(keydefs)
for vevent in keydefs.keys(): for vevent in keydefs:
methodname = vevent.replace("-", "_") methodname = vevent.replace("-", "_")
while methodname[:1] == '<': while methodname[:1] == '<':
methodname = methodname[1:] methodname = methodname[1:]
......
...@@ -94,7 +94,7 @@ class SequenceTreeItem(ObjectTreeItem): ...@@ -94,7 +94,7 @@ class SequenceTreeItem(ObjectTreeItem):
class DictTreeItem(SequenceTreeItem): class DictTreeItem(SequenceTreeItem):
def keys(self): def keys(self):
keys = self.object.keys() keys = list(self.object.keys())
try: try:
keys.sort() keys.sort()
except: except:
......
...@@ -84,7 +84,7 @@ def extended_linecache_checkcache(filename=None, ...@@ -84,7 +84,7 @@ def extended_linecache_checkcache(filename=None,
""" """
cache = linecache.cache cache = linecache.cache
save = {} save = {}
for filename in cache.keys(): for filename in cache:
if filename[:1] + filename[-1:] == '<>': if filename[:1] + filename[-1:] == '<>':
save[filename] = cache[filename] save[filename] = cache[filename]
orig_checkcache() orig_checkcache()
......
...@@ -163,7 +163,7 @@ class IdbAdapter: ...@@ -163,7 +163,7 @@ class IdbAdapter:
def dict_keys(self, did): def dict_keys(self, did):
dict = dicttable[did] dict = dicttable[did]
return dict.keys() return list(dict.keys())
def dict_item(self, did, key): def dict_item(self, did, key):
dict = dicttable[did] dict = dicttable[did]
......
...@@ -106,7 +106,7 @@ class VariablesTreeItem(ObjectTreeItem): ...@@ -106,7 +106,7 @@ class VariablesTreeItem(ObjectTreeItem):
return len(self.object) > 0 return len(self.object) > 0
def keys(self): def keys(self):
return self.object.keys() return list(self.object.keys())
def GetSubList(self): def GetSubList(self):
sublist = [] sublist = []
......
...@@ -20,7 +20,7 @@ class WindowList: ...@@ -20,7 +20,7 @@ class WindowList:
def add_windows_to_menu(self, menu): def add_windows_to_menu(self, menu):
list = [] list = []
for key in self.dict.keys(): for key in self.dict:
window = self.dict[key] window = self.dict[key]
try: try:
title = window.get_title() title = window.get_title()
......
...@@ -182,7 +182,7 @@ class ConfigDialog(Toplevel): ...@@ -182,7 +182,7 @@ class ConfigDialog(Toplevel):
(' ','normal'),('stderr','stderr'),('\n','normal')) (' ','normal'),('stderr','stderr'),('\n','normal'))
for txTa in textAndTags: for txTa in textAndTags:
text.insert(END,txTa[0],txTa[1]) text.insert(END,txTa[0],txTa[1])
for element in self.themeElements.keys(): for element in self.themeElements:
text.tag_bind(self.themeElements[element][0],'<ButtonPress-1>', text.tag_bind(self.themeElements[element][0],'<ButtonPress-1>',
lambda event,elem=element: event.widget.winfo_toplevel() lambda event,elem=element: event.widget.winfo_toplevel()
.highlightTarget.set(elem)) .highlightTarget.set(elem))
...@@ -556,7 +556,7 @@ class ConfigDialog(Toplevel): ...@@ -556,7 +556,7 @@ class ConfigDialog(Toplevel):
def GetDefaultItems(self): def GetDefaultItems(self):
dItems={'main':{},'highlight':{},'keys':{},'extensions':{}} dItems={'main':{},'highlight':{},'keys':{},'extensions':{}}
for configType in dItems.keys(): for configType in dItems:
sections=idleConf.GetSectionList('default',configType) sections=idleConf.GetSectionList('default',configType)
for section in sections: for section in sections:
dItems[configType][section]={} dItems[configType][section]={}
...@@ -597,11 +597,11 @@ class ConfigDialog(Toplevel): ...@@ -597,11 +597,11 @@ class ConfigDialog(Toplevel):
else: else:
currentKeySetName=self.customKeys.get() currentKeySetName=self.customKeys.get()
currentBindings=idleConf.GetCurrentKeySet() currentBindings=idleConf.GetCurrentKeySet()
if currentKeySetName in self.changedItems['keys'].keys(): #unsaved changes if currentKeySetName in self.changedItems['keys']: #unsaved changes
keySetChanges=self.changedItems['keys'][currentKeySetName] keySetChanges=self.changedItems['keys'][currentKeySetName]
for event in keySetChanges.keys(): for event in keySetChanges:
currentBindings[event]=keySetChanges[event].split() currentBindings[event]=keySetChanges[event].split()
currentKeySequences=currentBindings.values() currentKeySequences = list(currentBindings.values())
newKeys=GetKeysDialog(self,'Get New Keys',bindName, newKeys=GetKeysDialog(self,'Get New Keys',bindName,
currentKeySequences).result currentKeySequences).result
if newKeys: #new keys were specified if newKeys: #new keys were specified
...@@ -648,14 +648,14 @@ class ConfigDialog(Toplevel): ...@@ -648,14 +648,14 @@ class ConfigDialog(Toplevel):
prevKeySetName=self.customKeys.get() prevKeySetName=self.customKeys.get()
prevKeys=idleConf.GetCoreKeys(prevKeySetName) prevKeys=idleConf.GetCoreKeys(prevKeySetName)
newKeys={} newKeys={}
for event in prevKeys.keys(): #add key set to changed items for event in prevKeys: #add key set to changed items
eventName=event[2:-2] #trim off the angle brackets eventName=event[2:-2] #trim off the angle brackets
binding=' '.join(prevKeys[event]) binding=' '.join(prevKeys[event])
newKeys[eventName]=binding newKeys[eventName]=binding
#handle any unsaved changes to prev key set #handle any unsaved changes to prev key set
if prevKeySetName in self.changedItems['keys'].keys(): if prevKeySetName in self.changedItems['keys']:
keySetChanges=self.changedItems['keys'][prevKeySetName] keySetChanges=self.changedItems['keys'][prevKeySetName]
for event in keySetChanges.keys(): for event in keySetChanges:
newKeys[event]=keySetChanges[event] newKeys[event]=keySetChanges[event]
#save the new theme #save the new theme
self.SaveNewKeySet(newKeySetName,newKeys) self.SaveNewKeySet(newKeySetName,newKeys)
...@@ -673,15 +673,15 @@ class ConfigDialog(Toplevel): ...@@ -673,15 +673,15 @@ class ConfigDialog(Toplevel):
reselect=1 reselect=1
listIndex=self.listBindings.index(ANCHOR) listIndex=self.listBindings.index(ANCHOR)
keySet=idleConf.GetKeySet(keySetName) keySet=idleConf.GetKeySet(keySetName)
bindNames=keySet.keys() bindNames = list(keySet.keys())
bindNames.sort() bindNames.sort()
self.listBindings.delete(0,END) self.listBindings.delete(0,END)
for bindName in bindNames: for bindName in bindNames:
key=' '.join(keySet[bindName]) #make key(s) into a string key=' '.join(keySet[bindName]) #make key(s) into a string
bindName=bindName[2:-2] #trim off the angle brackets bindName=bindName[2:-2] #trim off the angle brackets
if keySetName in self.changedItems['keys'].keys(): if keySetName in self.changedItems['keys']:
#handle any unsaved changes to this key set #handle any unsaved changes to this key set
if bindName in self.changedItems['keys'][keySetName].keys(): if bindName in self.changedItems['keys'][keySetName]:
key=self.changedItems['keys'][keySetName][bindName] key=self.changedItems['keys'][keySetName][bindName]
self.listBindings.insert(END, bindName+' - '+key) self.listBindings.insert(END, bindName+' - '+key)
if reselect: if reselect:
...@@ -796,9 +796,9 @@ class ConfigDialog(Toplevel): ...@@ -796,9 +796,9 @@ class ConfigDialog(Toplevel):
themeName=self.customTheme.get() themeName=self.customTheme.get()
newTheme=idleConf.GetThemeDict(themeType,themeName) newTheme=idleConf.GetThemeDict(themeType,themeName)
#apply any of the old theme's unsaved changes to the new theme #apply any of the old theme's unsaved changes to the new theme
if themeName in self.changedItems['highlight'].keys(): if themeName in self.changedItems['highlight']:
themeChanges=self.changedItems['highlight'][themeName] themeChanges=self.changedItems['highlight'][themeName]
for element in themeChanges.keys(): for element in themeChanges:
newTheme[element]=themeChanges[element] newTheme[element]=themeChanges[element]
#save the new theme #save the new theme
self.SaveNewTheme(newThemeName,newTheme) self.SaveNewTheme(newThemeName,newTheme)
...@@ -850,14 +850,14 @@ class ConfigDialog(Toplevel): ...@@ -850,14 +850,14 @@ class ConfigDialog(Toplevel):
theme=self.builtinTheme.get() theme=self.builtinTheme.get()
else: #a user theme else: #a user theme
theme=self.customTheme.get() theme=self.customTheme.get()
for elementTitle in self.themeElements.keys(): for elementTitle in self.themeElements:
element=self.themeElements[elementTitle][0] element=self.themeElements[elementTitle][0]
colours=idleConf.GetHighlight(theme,element) colours=idleConf.GetHighlight(theme,element)
if element=='cursor': #cursor sample needs special painting if element=='cursor': #cursor sample needs special painting
colours['background']=idleConf.GetHighlight(theme, colours['background']=idleConf.GetHighlight(theme,
'normal', fgBg='bg') 'normal', fgBg='bg')
#handle any unsaved changes to this theme #handle any unsaved changes to this theme
if theme in self.changedItems['highlight'].keys(): if theme in self.changedItems['highlight']:
themeDict=self.changedItems['highlight'][theme] themeDict=self.changedItems['highlight'][theme]
if element+'-foreground' in themeDict: if element+'-foreground' in themeDict:
colours['foreground']=themeDict[element+'-foreground'] colours['foreground']=themeDict[element+'-foreground']
...@@ -976,7 +976,7 @@ class ConfigDialog(Toplevel): ...@@ -976,7 +976,7 @@ class ConfigDialog(Toplevel):
self.optMenuThemeBuiltin.SetMenu(itemList,itemList[0]) self.optMenuThemeBuiltin.SetMenu(itemList,itemList[0])
self.SetThemeType() self.SetThemeType()
##load theme element option menu ##load theme element option menu
themeNames=self.themeElements.keys() themeNames = list(self.themeElements.keys())
themeNames.sort(self.__ThemeNameIndexCompare) themeNames.sort(self.__ThemeNameIndexCompare)
self.optMenuHighlightTarget.SetMenu(themeNames,themeNames[0]) self.optMenuHighlightTarget.SetMenu(themeNames,themeNames[0])
self.PaintThemeSample() self.PaintThemeSample()
...@@ -1061,7 +1061,7 @@ class ConfigDialog(Toplevel): ...@@ -1061,7 +1061,7 @@ class ConfigDialog(Toplevel):
""" """
if not idleConf.userCfg['keys'].has_section(keySetName): if not idleConf.userCfg['keys'].has_section(keySetName):
idleConf.userCfg['keys'].add_section(keySetName) idleConf.userCfg['keys'].add_section(keySetName)
for event in keySet.keys(): for event in keySet:
value=keySet[event] value=keySet[event]
idleConf.userCfg['keys'].SetOption(keySetName,event,value) idleConf.userCfg['keys'].SetOption(keySetName,event,value)
...@@ -1073,7 +1073,7 @@ class ConfigDialog(Toplevel): ...@@ -1073,7 +1073,7 @@ class ConfigDialog(Toplevel):
""" """
if not idleConf.userCfg['highlight'].has_section(themeName): if not idleConf.userCfg['highlight'].has_section(themeName):
idleConf.userCfg['highlight'].add_section(themeName) idleConf.userCfg['highlight'].add_section(themeName)
for element in theme.keys(): for element in theme:
value=theme[element] value=theme[element]
idleConf.userCfg['highlight'].SetOption(themeName,element,value) idleConf.userCfg['highlight'].SetOption(themeName,element,value)
...@@ -1088,14 +1088,14 @@ class ConfigDialog(Toplevel): ...@@ -1088,14 +1088,14 @@ class ConfigDialog(Toplevel):
def SaveAllChangedConfigs(self): def SaveAllChangedConfigs(self):
"Save configuration changes to the user config file." "Save configuration changes to the user config file."
idleConf.userCfg['main'].Save() idleConf.userCfg['main'].Save()
for configType in self.changedItems.keys(): for configType in self.changedItems:
cfgTypeHasChanges = False cfgTypeHasChanges = False
for section in self.changedItems[configType].keys(): for section in self.changedItems[configType]:
if section == 'HelpFiles': if section == 'HelpFiles':
#this section gets completely replaced #this section gets completely replaced
idleConf.userCfg['main'].remove_section('HelpFiles') idleConf.userCfg['main'].remove_section('HelpFiles')
cfgTypeHasChanges = True cfgTypeHasChanges = True
for item in self.changedItems[configType][section].keys(): for item in self.changedItems[configType][section]:
value = self.changedItems[configType][section][item] value = self.changedItems[configType][section][item]
if self.SetUserValue(configType,section,item,value): if self.SetUserValue(configType,section,item,value):
cfgTypeHasChanges = True cfgTypeHasChanges = True
...@@ -1109,13 +1109,13 @@ class ConfigDialog(Toplevel): ...@@ -1109,13 +1109,13 @@ class ConfigDialog(Toplevel):
def DeactivateCurrentConfig(self): def DeactivateCurrentConfig(self):
#Before a config is saved, some cleanup of current #Before a config is saved, some cleanup of current
#config must be done - remove the previous keybindings #config must be done - remove the previous keybindings
winInstances=self.parent.instance_dict.keys() winInstances = self.parent.instance_dict.keys()
for instance in winInstances: for instance in winInstances:
instance.RemoveKeybindings() instance.RemoveKeybindings()
def ActivateConfigChanges(self): def ActivateConfigChanges(self):
"Dynamically apply configuration changes" "Dynamically apply configuration changes"
winInstances=self.parent.instance_dict.keys() winInstances = self.parent.instance_dict.keys()
for instance in winInstances: for instance in winInstances:
instance.ResetColorizer() instance.ResetColorizer()
instance.ResetFont() instance.ResetFont()
......
...@@ -343,7 +343,7 @@ class IdleConf: ...@@ -343,7 +343,7 @@ class IdleConf:
'stderr-background':'#ffffff', 'stderr-background':'#ffffff',
'console-foreground':'#000000', 'console-foreground':'#000000',
'console-background':'#ffffff' } 'console-background':'#ffffff' }
for element in theme.keys(): for element in theme:
if not cfgParser.has_option(themeName,element): if not cfgParser.has_option(themeName,element):
#we are going to return a default, print warning #we are going to return a default, print warning
warning=('\n Warning: configHandler.py - IdleConf.GetThemeDict' warning=('\n Warning: configHandler.py - IdleConf.GetThemeDict'
...@@ -424,7 +424,7 @@ class IdleConf: ...@@ -424,7 +424,7 @@ class IdleConf:
extName=None extName=None
vEvent='<<'+virtualEvent+'>>' vEvent='<<'+virtualEvent+'>>'
for extn in self.GetExtensions(active_only=0): for extn in self.GetExtensions(active_only=0):
for event in self.GetExtensionKeys(extn).keys(): for event in self.GetExtensionKeys(extn):
if event == vEvent: if event == vEvent:
extName=extn extName=extn
return extName return extName
...@@ -519,7 +519,7 @@ class IdleConf: ...@@ -519,7 +519,7 @@ class IdleConf:
for extn in activeExtns: for extn in activeExtns:
extKeys=self.__GetRawExtensionKeys(extn) extKeys=self.__GetRawExtensionKeys(extn)
if extKeys: #the extension defines keybindings if extKeys: #the extension defines keybindings
for event in extKeys.keys(): for event in extKeys:
if extKeys[event] in keySet.values(): if extKeys[event] in keySet.values():
#the binding is already in use #the binding is already in use
extKeys[event]='' #disable this binding extKeys[event]='' #disable this binding
...@@ -532,7 +532,7 @@ class IdleConf: ...@@ -532,7 +532,7 @@ class IdleConf:
virtualEvent - string, name of the virtual event to test for, without virtualEvent - string, name of the virtual event to test for, without
the enclosing '<< >>' the enclosing '<< >>'
""" """
return ('<<'+virtualEvent+'>>') in self.GetCoreKeys().keys() return ('<<'+virtualEvent+'>>') in self.GetCoreKeys()
def GetCoreKeys(self, keySetName=None): def GetCoreKeys(self, keySetName=None):
""" """
...@@ -595,7 +595,7 @@ class IdleConf: ...@@ -595,7 +595,7 @@ class IdleConf:
'<<del-word-right>>': ['<Control-Key-Delete>'] '<<del-word-right>>': ['<Control-Key-Delete>']
} }
if keySetName: if keySetName:
for event in keyBindings.keys(): for event in keyBindings:
binding=self.GetKeyBinding(keySetName,event) binding=self.GetKeyBinding(keySetName,event)
if binding: if binding:
keyBindings[event]=binding keyBindings[event]=binding
...@@ -662,7 +662,7 @@ class IdleConf: ...@@ -662,7 +662,7 @@ class IdleConf:
""" """
load all configuration files. load all configuration files.
""" """
for key in self.defaultCfg.keys(): for key in self.defaultCfg:
self.defaultCfg[key].Load() self.defaultCfg[key].Load()
self.userCfg[key].Load() #same keys self.userCfg[key].Load() #same keys
...@@ -670,7 +670,7 @@ class IdleConf: ...@@ -670,7 +670,7 @@ class IdleConf:
""" """
write all loaded user configuration files back to disk write all loaded user configuration files back to disk
""" """
for key in self.userCfg.keys(): for key in self.userCfg:
self.userCfg[key].Save() self.userCfg[key].Save()
idleConf=IdleConf() idleConf=IdleConf()
...@@ -679,7 +679,7 @@ idleConf=IdleConf() ...@@ -679,7 +679,7 @@ idleConf=IdleConf()
if __name__ == '__main__': if __name__ == '__main__':
def dumpCfg(cfg): def dumpCfg(cfg):
print('\n',cfg,'\n') print('\n',cfg,'\n')
for key in cfg.keys(): for key in cfg:
sections=cfg[key].sections() sections=cfg[key].sections()
print(key) print(key)
print(sections) print(sections)
......
...@@ -13,7 +13,7 @@ class DynOptionMenu(OptionMenu): ...@@ -13,7 +13,7 @@ class DynOptionMenu(OptionMenu):
def __init__(self, master, variable, value, *values, **kwargs): def __init__(self, master, variable, value, *values, **kwargs):
#get a copy of kwargs before OptionMenu.__init__ munges them #get a copy of kwargs before OptionMenu.__init__ munges them
kwargsCopy=copy.copy(kwargs) kwargsCopy=copy.copy(kwargs)
if 'highlightthickness' in kwargs.keys(): if 'highlightthickness' in list(kwargs.keys()):
del(kwargs['highlightthickness']) del(kwargs['highlightthickness'])
OptionMenu.__init__(self, master, variable, value, *values, **kwargs) OptionMenu.__init__(self, master, variable, value, *values, **kwargs)
self.config(highlightthickness=kwargsCopy.get('highlightthickness')) self.config(highlightthickness=kwargsCopy.get('highlightthickness'))
......
...@@ -203,7 +203,7 @@ class GetKeysDialog(Toplevel): ...@@ -203,7 +203,7 @@ class GetKeysDialog(Toplevel):
'/':'slash','?':'question','Page Up':'Prior','Page Down':'Next', '/':'slash','?':'question','Page Up':'Prior','Page Down':'Next',
'Left Arrow':'Left','Right Arrow':'Right','Up Arrow':'Up', 'Left Arrow':'Left','Right Arrow':'Right','Up Arrow':'Up',
'Down Arrow': 'Down', 'Tab':'Tab'} 'Down Arrow': 'Down', 'Tab':'Tab'}
if key in translateDict.keys(): if key in translateDict:
key = translateDict[key] key = translateDict[key]
if 'Shift' in modifiers and key in string.ascii_lowercase: if 'Shift' in modifiers and key in string.ascii_lowercase:
key = key.upper() key = key.upper()
......
...@@ -43,12 +43,12 @@ class TabPageSet(Frame): ...@@ -43,12 +43,12 @@ class TabPageSet(Frame):
def ChangePage(self,pageName=None): def ChangePage(self,pageName=None):
if pageName: if pageName:
if pageName in self.pages.keys(): if pageName in self.pages:
self.activePage.set(pageName) self.activePage.set(pageName)
else: else:
raise InvalidTabPage('Invalid TabPage Name') raise InvalidTabPage('Invalid TabPage Name')
## pop up the active 'tab' only ## pop up the active 'tab' only
for page in self.pages.keys(): for page in self.pages:
self.pages[page]['tab'].config(relief=RIDGE) self.pages[page]['tab'].config(relief=RIDGE)
self.pages[self.GetActivePage()]['tab'].config(relief=RAISED) self.pages[self.GetActivePage()]['tab'].config(relief=RAISED)
## switch page ## switch page
...@@ -73,7 +73,7 @@ class TabPageSet(Frame): ...@@ -73,7 +73,7 @@ class TabPageSet(Frame):
self.ChangePage() self.ChangePage()
def RemovePage(self,pageName): def RemovePage(self,pageName):
if not pageName in self.pages.keys(): if not pageName in self.pages:
raise InvalidTabPage('Invalid TabPage Name') raise InvalidTabPage('Invalid TabPage Name')
self.pages[pageName]['tab'].pack_forget() self.pages[pageName]['tab'].pack_forget()
self.pages[pageName]['page'].grid_forget() self.pages[pageName]['page'].grid_forget()
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment