Пример #1
0
 def ApplyKeybindings(self):
     "Update the keybindings after they are changed"
     # Called from configDialog.py
     Bindings.default_keydefs = keydefs = idleConf.GetCurrentKeySet()
     self.apply_bindings()
     for extensionName in self._get_standard_extension_names():
         xkeydefs = idleConf.GetExtensionBindings(extensionName)
         if xkeydefs:
             self.apply_bindings(xkeydefs)
     #update menu accelerators
     menuEventDict = {}
     for menu in Bindings.menudefs:
         menuEventDict[menu[0]] = {}
         for item in menu[1]:
             if item:
                 menuEventDict[menu[0]][prepstr(item[0])[1]] = item[1]
     for menubarItem in self.menudict.keys():
         menu = self.menudict[menubarItem]
         end = menu.index(END) + 1
         for index in range(0, end):
             if menu.type(index) == 'command':
                 accel = menu.entrycget(index, 'accelerator')
                 if accel:
                     itemName = menu.entrycget(index, 'label')
                     event = ''
                     if menuEventDict.has_key(menubarItem):
                         if menuEventDict[menubarItem].has_key(itemName):
                             event = menuEventDict[menubarItem][itemName]
                     if event:
                         accel = get_accelerator(keydefs, event)
                         menu.entryconfig(index, accelerator=accel)
Пример #2
0
    def RemoveKeybindings(self):
        "Remove the keybindings before they are changed."
        # Called from configDialog.py
        Bindings.default_keydefs = keydefs = idleConf.GetCurrentKeySet()

        for page in self.text_notebook.pages.itervalues():
            text = page.editpage.text
            for event, keylist in keydefs.items():
                text.event_delete(event, *keylist)

        for extensionName in self._get_standard_extension_names():
            xkeydefs = idleConf.GetExtensionBindings(extensionName)
            if xkeydefs:
                for page in self.text_notebook.pages.itervalues():
                    text = page.editpage.text
                    for event, keylist in xkeydefs.items():
                        text.event_delete(event, *keylist)
Пример #3
0
        ('New Indent Width', '<<change-indentwidth>>'),
    ]),
    ('run', [
        ('Python Shell', '<<open-python-shell>>'),
    ]),
    ('shell', [
        ('_View Last Restart', '<<view-restart>>'),
        ('_Restart Shell', '<<restart-shell>>'),
    ]),
    ('debug', [
        ('_Go to File/Line', '<<goto-file-line>>'),
        ('!_Debugger', '<<toggle-debugger>>'),
        ('_Stack Viewer', '<<open-stack-viewer>>'),
        ('!_Auto-open Stack Viewer', '<<toggle-jit-stack-viewer>>'),
    ]),
    ('options', [
        ('_Configure IDLE...', '<<open-config-dialog>>'),
        None,
    ]),
    ('help', [
        ('_About IDLE', '<<about-idle>>'),
        None,
        ('_IDLE Help', '<<help>>'),
        ('Python _Docs', '<<python-docs>>'),
    ]),
]

default_keydefs = idleConf.GetCurrentKeySet()

del sys