mirror of
https://github.com/python/cpython.git
synced 2025-08-22 17:55:18 +00:00
Merged revisions 79576-79578 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ........ r79576 | florent.xicluna | 2010-04-02 10:24:52 +0300 (Fri, 02 Apr 2010) | 2 lines #7092: Fix additional "-3" warnings in the idlelib package, and convert to absolute imports. ........ r79577 | florent.xicluna | 2010-04-02 11:15:26 +0300 (Fri, 02 Apr 2010) | 2 lines #7092: Drop the cmp argument. ........ r79578 | florent.xicluna | 2010-04-02 11:30:21 +0300 (Fri, 02 Apr 2010) | 2 lines #7092: silence some py3k warnings ........
This commit is contained in:
parent
b55d368055
commit
4c6daf1037
37 changed files with 173 additions and 166 deletions
|
@ -33,7 +33,7 @@ import sys
|
|||
import string
|
||||
import re
|
||||
import Tkinter
|
||||
import macosxSupport
|
||||
from idlelib import macosxSupport
|
||||
|
||||
# the event type constants, which define the meaning of mc_type
|
||||
MC_KEYPRESS=0; MC_KEYRELEASE=1; MC_BUTTONPRESS=2; MC_BUTTONRELEASE=3;
|
||||
|
@ -111,12 +111,27 @@ _state_names = [''.join(m[0]+'-'
|
|||
for i, m in enumerate(_modifiers)
|
||||
if (1 << i) & s)
|
||||
for s in _states]
|
||||
_state_subsets = map(lambda i: filter(lambda j: not (j & (~i)), _states),
|
||||
_states)
|
||||
for l in _state_subsets:
|
||||
l.sort(lambda a, b, nummod = lambda x: len(filter(lambda i: (1<<i) & x,
|
||||
range(len(_modifiers)))):
|
||||
nummod(b) - nummod(a))
|
||||
|
||||
def expand_substates(states):
|
||||
'''For each item of states return a list containing all combinations of
|
||||
that item with individual bits reset, sorted by the number of set bits.
|
||||
'''
|
||||
def nbits(n):
|
||||
"number of bits set in n base 2"
|
||||
nb = 0
|
||||
while n:
|
||||
n, rem = divmod(n, 2)
|
||||
nb += rem
|
||||
return nb
|
||||
statelist = []
|
||||
for state in states:
|
||||
substates = list(set(state & x for x in states))
|
||||
substates.sort(key=nbits, reverse=True)
|
||||
statelist.append(substates)
|
||||
return statelist
|
||||
|
||||
_state_subsets = expand_substates(_states)
|
||||
|
||||
# _state_codes gives for each state, the portable code to be passed as mc_state
|
||||
_state_codes = []
|
||||
for s in _states:
|
||||
|
@ -297,7 +312,7 @@ def MultiCallCreator(widget):
|
|||
assert issubclass(widget, Tkinter.Misc)
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
apply(widget.__init__, (self,)+args, kwargs)
|
||||
widget.__init__(self, *args, **kwargs)
|
||||
# a dictionary which maps a virtual event to a tuple with:
|
||||
# 0. the function binded
|
||||
# 1. a list of triplets - the sequences it is binded to
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue