Make the Pynche tool work with Python 3.
This commit is contained in:
parent
1800934285
commit
bf76ce168c
|
@ -13,7 +13,7 @@ The ChipViewer class includes the entire lower left quandrant; i.e. both the
|
||||||
selected and nearest ChipWidgets.
|
selected and nearest ChipWidgets.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from Tkinter import *
|
from tkinter import *
|
||||||
import ColorDB
|
import ColorDB
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -52,7 +52,7 @@ Shift + Left == -25
|
||||||
Shift + Right == +25
|
Shift + Right == +25
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from Tkinter import *
|
from tkinter import *
|
||||||
|
|
||||||
STOP = 'Stop'
|
STOP = 'Stop'
|
||||||
WRAP = 'Wrap Around'
|
WRAP = 'Wrap Around'
|
||||||
|
|
|
@ -15,7 +15,7 @@ You can turn off Update On Click if all you want to see is the alias for a
|
||||||
given name, without selecting the color.
|
given name, without selecting the color.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from Tkinter import *
|
from tkinter import *
|
||||||
import ColorDB
|
import ColorDB
|
||||||
|
|
||||||
ADDTOVIEW = 'Color %List Window...'
|
ADDTOVIEW = 'Color %List Window...'
|
||||||
|
|
|
@ -6,9 +6,8 @@ It is used to bring up other windows.
|
||||||
|
|
||||||
import sys
|
import sys
|
||||||
import os
|
import os
|
||||||
from Tkinter import *
|
from tkinter import *
|
||||||
import tkMessageBox
|
from tkinter import messagebox, filedialog
|
||||||
import tkFileDialog
|
|
||||||
import ColorDB
|
import ColorDB
|
||||||
|
|
||||||
# Milliseconds between interrupt checks
|
# Milliseconds between interrupt checks
|
||||||
|
@ -150,7 +149,7 @@ class PyncheWidget:
|
||||||
|
|
||||||
def __popup_about(self, event=None):
|
def __popup_about(self, event=None):
|
||||||
from Main import __version__
|
from Main import __version__
|
||||||
tkMessageBox.showinfo('About Pynche ' + __version__,
|
messagebox.showinfo('About Pynche ' + __version__,
|
||||||
'''\
|
'''\
|
||||||
Pynche %s
|
Pynche %s
|
||||||
The PYthonically Natural
|
The PYthonically Natural
|
||||||
|
@ -168,7 +167,7 @@ email: bwarsaw@python.org''' % __version__)
|
||||||
def __load(self, event=None):
|
def __load(self, event=None):
|
||||||
while 1:
|
while 1:
|
||||||
idir, ifile = os.path.split(self.__sb.colordb().filename())
|
idir, ifile = os.path.split(self.__sb.colordb().filename())
|
||||||
file = tkFileDialog.askopenfilename(
|
file = filedialog.askopenfilename(
|
||||||
filetypes=[('Text files', '*.txt'),
|
filetypes=[('Text files', '*.txt'),
|
||||||
('All files', '*'),
|
('All files', '*'),
|
||||||
],
|
],
|
||||||
|
@ -180,12 +179,12 @@ email: bwarsaw@python.org''' % __version__)
|
||||||
try:
|
try:
|
||||||
colordb = ColorDB.get_colordb(file)
|
colordb = ColorDB.get_colordb(file)
|
||||||
except IOError:
|
except IOError:
|
||||||
tkMessageBox.showerror('Read error', '''\
|
messagebox.showerror('Read error', '''\
|
||||||
Could not open file for reading:
|
Could not open file for reading:
|
||||||
%s''' % file)
|
%s''' % file)
|
||||||
continue
|
continue
|
||||||
if colordb is None:
|
if colordb is None:
|
||||||
tkMessageBox.showerror('Unrecognized color file type', '''\
|
messagebox.showerror('Unrecognized color file type', '''\
|
||||||
Unrecognized color file type in file:
|
Unrecognized color file type in file:
|
||||||
%s''' % file)
|
%s''' % file)
|
||||||
continue
|
continue
|
||||||
|
@ -249,6 +248,8 @@ class Helpwin:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
import functools
|
||||||
|
@functools.total_ordering
|
||||||
class PopupViewer:
|
class PopupViewer:
|
||||||
def __init__(self, module, name, switchboard, root):
|
def __init__(self, module, name, switchboard, root):
|
||||||
self.__m = module
|
self.__m = module
|
||||||
|
@ -279,8 +280,11 @@ class PopupViewer:
|
||||||
self.__sb.add_view(self.__window)
|
self.__sb.add_view(self.__window)
|
||||||
self.__window.deiconify()
|
self.__window.deiconify()
|
||||||
|
|
||||||
def __cmp__(self, other):
|
def __eq__(self, other):
|
||||||
return cmp(self.__menutext, other.__menutext)
|
return self.__menutext == other.__menutext
|
||||||
|
|
||||||
|
def __lt__(self, other):
|
||||||
|
return self.__menutext < other.__menutext
|
||||||
|
|
||||||
|
|
||||||
def make_view_popups(switchboard, root, extrapath):
|
def make_view_popups(switchboard, root, extrapath):
|
||||||
|
|
|
@ -24,7 +24,7 @@ select the color under the cursor while you drag it, but be forewarned that
|
||||||
this can be slow.
|
this can be slow.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from Tkinter import *
|
from tkinter import *
|
||||||
import ColorDB
|
import ColorDB
|
||||||
|
|
||||||
# Load this script into the Tcl interpreter and call it in
|
# Load this script into the Tcl interpreter and call it in
|
||||||
|
@ -62,32 +62,32 @@ def constant(numchips):
|
||||||
# red variations, green+blue = cyan constant
|
# red variations, green+blue = cyan constant
|
||||||
def constant_red_generator(numchips, red, green, blue):
|
def constant_red_generator(numchips, red, green, blue):
|
||||||
seq = constant(numchips)
|
seq = constant(numchips)
|
||||||
return list(map(None, [red] * numchips, seq, seq))
|
return list(zip([red] * numchips, seq, seq))
|
||||||
|
|
||||||
# green variations, red+blue = magenta constant
|
# green variations, red+blue = magenta constant
|
||||||
def constant_green_generator(numchips, red, green, blue):
|
def constant_green_generator(numchips, red, green, blue):
|
||||||
seq = constant(numchips)
|
seq = constant(numchips)
|
||||||
return list(map(None, seq, [green] * numchips, seq))
|
return list(zip(seq, [green] * numchips, seq))
|
||||||
|
|
||||||
# blue variations, red+green = yellow constant
|
# blue variations, red+green = yellow constant
|
||||||
def constant_blue_generator(numchips, red, green, blue):
|
def constant_blue_generator(numchips, red, green, blue):
|
||||||
seq = constant(numchips)
|
seq = constant(numchips)
|
||||||
return list(map(None, seq, seq, [blue] * numchips))
|
return list(zip(seq, seq, [blue] * numchips))
|
||||||
|
|
||||||
# red variations, green+blue = cyan constant
|
# red variations, green+blue = cyan constant
|
||||||
def constant_cyan_generator(numchips, red, green, blue):
|
def constant_cyan_generator(numchips, red, green, blue):
|
||||||
seq = constant(numchips)
|
seq = constant(numchips)
|
||||||
return list(map(None, seq, [green] * numchips, [blue] * numchips))
|
return list(zip(seq, [green] * numchips, [blue] * numchips))
|
||||||
|
|
||||||
# green variations, red+blue = magenta constant
|
# green variations, red+blue = magenta constant
|
||||||
def constant_magenta_generator(numchips, red, green, blue):
|
def constant_magenta_generator(numchips, red, green, blue):
|
||||||
seq = constant(numchips)
|
seq = constant(numchips)
|
||||||
return list(map(None, [red] * numchips, seq, [blue] * numchips))
|
return list(zip([red] * numchips, seq, [blue] * numchips))
|
||||||
|
|
||||||
# blue variations, red+green = yellow constant
|
# blue variations, red+green = yellow constant
|
||||||
def constant_yellow_generator(numchips, red, green, blue):
|
def constant_yellow_generator(numchips, red, green, blue):
|
||||||
seq = constant(numchips)
|
seq = constant(numchips)
|
||||||
return list(map(None, [red] * numchips, [green] * numchips, seq))
|
return list(zip([red] * numchips, [green] * numchips, seq))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -119,7 +119,7 @@ class LeftArrow:
|
||||||
return arrow, text
|
return arrow, text
|
||||||
|
|
||||||
def _x(self):
|
def _x(self):
|
||||||
coords = self._canvas.coords(self._TAG)
|
coords = list(self._canvas.coords(self._TAG))
|
||||||
assert coords
|
assert coords
|
||||||
return coords[0]
|
return coords[0]
|
||||||
|
|
||||||
|
@ -151,7 +151,7 @@ class RightArrow(LeftArrow):
|
||||||
return arrow, text
|
return arrow, text
|
||||||
|
|
||||||
def _x(self):
|
def _x(self):
|
||||||
coords = self._canvas.coords(self._TAG)
|
coords = list(self._canvas.coords(self._TAG))
|
||||||
assert coords
|
assert coords
|
||||||
return coords[0] + self._ARROWWIDTH
|
return coords[0] + self._ARROWWIDTH
|
||||||
|
|
||||||
|
|
|
@ -42,7 +42,6 @@ master window.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
import sys
|
import sys
|
||||||
from types import DictType
|
|
||||||
import marshal
|
import marshal
|
||||||
|
|
||||||
|
|
||||||
|
@ -62,10 +61,11 @@ class Switchboard:
|
||||||
if initfile:
|
if initfile:
|
||||||
try:
|
try:
|
||||||
try:
|
try:
|
||||||
fp = open(initfile)
|
fp = open(initfile, 'rb')
|
||||||
self.__optiondb = marshal.load(fp)
|
self.__optiondb = marshal.load(fp)
|
||||||
if not isinstance(self.__optiondb, DictType):
|
if not isinstance(self.__optiondb, dict):
|
||||||
print('Problem reading options from file:', initfile, file=sys.stderr)
|
print('Problem reading options from file:', initfile,
|
||||||
|
file=sys.stderr)
|
||||||
self.__optiondb = {}
|
self.__optiondb = {}
|
||||||
except (IOError, EOFError, ValueError):
|
except (IOError, EOFError, ValueError):
|
||||||
pass
|
pass
|
||||||
|
@ -116,7 +116,7 @@ class Switchboard:
|
||||||
fp = None
|
fp = None
|
||||||
try:
|
try:
|
||||||
try:
|
try:
|
||||||
fp = open(self.__initfile, 'w')
|
fp = open(self.__initfile, 'wb')
|
||||||
except IOError:
|
except IOError:
|
||||||
print('Cannot write options to file:', \
|
print('Cannot write options to file:', \
|
||||||
self.__initfile, file=sys.stderr)
|
self.__initfile, file=sys.stderr)
|
||||||
|
|
|
@ -15,7 +15,7 @@ button and drag it through some text. The Insertion is the insertion cursor
|
||||||
in the text window (which only has a background).
|
in the text window (which only has a background).
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from Tkinter import *
|
from tkinter import *
|
||||||
import ColorDB
|
import ColorDB
|
||||||
|
|
||||||
ADDTOVIEW = 'Text Window...'
|
ADDTOVIEW = 'Text Window...'
|
||||||
|
|
|
@ -12,7 +12,7 @@ color selection will be made on every change to the text field. Otherwise,
|
||||||
you must hit Return or Tab to select the color.
|
you must hit Return or Tab to select the color.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from Tkinter import *
|
from tkinter import *
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue