summaryrefslogtreecommitdiffstats
path: root/Lib/turtledemo
diff options
context:
space:
mode:
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>2021-05-29 07:34:57 (GMT)
committerGitHub <noreply@github.com>2021-05-29 07:34:57 (GMT)
commitaddd32986f703e692463828ac0014023a901010f (patch)
tree6c22ec6631c605f9fb62b43972e2c0ce36a6207e /Lib/turtledemo
parent11049bece15b6fa08fa6d74aea8eb6bc2ebadfe5 (diff)
downloadcpython-addd32986f703e692463828ac0014023a901010f.zip
cpython-addd32986f703e692463828ac0014023a901010f.tar.gz
cpython-addd32986f703e692463828ac0014023a901010f.tar.bz2
bpo-44254: On Mac, remove disfunctional colors from turtledemo buttons (GH-26448)
On macOS, tk defers to system setting for button background when in normal state. Give turtledemo button text a color that works on either light or dark background. (cherry picked from commit af5a324843de395cecc562cb0c757b3768f2077f) Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
Diffstat (limited to 'Lib/turtledemo')
-rwxr-xr-xLib/turtledemo/__main__.py44
1 files changed, 28 insertions, 16 deletions
diff --git a/Lib/turtledemo/__main__.py b/Lib/turtledemo/__main__.py
index 12be509..caea022 100755
--- a/Lib/turtledemo/__main__.py
+++ b/Lib/turtledemo/__main__.py
@@ -124,7 +124,6 @@ help_entries = ( # (help_label, help_doc)
)
-
class DemoWindow(object):
def __init__(self, filename=None):
@@ -171,15 +170,23 @@ class DemoWindow(object):
self.output_lbl = Label(root, height= 1, text=" --- ", bg="#ddf",
font=("Arial", 16, 'normal'), borderwidth=2,
relief=RIDGE)
- self.start_btn = Button(root, text=" START ", font=btnfont,
- fg="white", disabledforeground = "#fed",
- command=self.startDemo)
- self.stop_btn = Button(root, text=" STOP ", font=btnfont,
- fg="white", disabledforeground = "#fed",
- command=self.stopIt)
- self.clear_btn = Button(root, text=" CLEAR ", font=btnfont,
- fg="white", disabledforeground="#fed",
- command = self.clearCanvas)
+ if darwin: # Leave Mac button colors alone - #44254.
+ self.start_btn = Button(root, text=" START ", font=btnfont,
+ fg='#00cc22', command=self.startDemo)
+ self.stop_btn = Button(root, text=" STOP ", font=btnfont,
+ fg='#00cc22', command=self.stopIt)
+ self.clear_btn = Button(root, text=" CLEAR ", font=btnfont,
+ fg='#00cc22', command = self.clearCanvas)
+ else:
+ self.start_btn = Button(root, text=" START ", font=btnfont,
+ fg="white", disabledforeground = "#fed",
+ command=self.startDemo)
+ self.stop_btn = Button(root, text=" STOP ", font=btnfont,
+ fg="white", disabledforeground = "#fed",
+ command=self.stopIt)
+ self.clear_btn = Button(root, text=" CLEAR ", font=btnfont,
+ fg="white", disabledforeground="#fed",
+ command = self.clearCanvas)
self.output_lbl.grid(row=1, column=0, sticky='news', padx=(0,5))
self.start_btn.grid(row=1, column=1, sticky='ew')
self.stop_btn.grid(row=1, column=2, sticky='ew')
@@ -267,12 +274,17 @@ class DemoWindow(object):
return self.increase_size()
def configGUI(self, start, stop, clear, txt="", color="blue"):
- self.start_btn.config(state=start,
- bg="#d00" if start == NORMAL else "#fca")
- self.stop_btn.config(state=stop,
- bg="#d00" if stop == NORMAL else "#fca")
- self.clear_btn.config(state=clear,
- bg="#d00" if clear == NORMAL else "#fca")
+ if darwin: # Leave Mac button colors alone - #44254.
+ self.start_btn.config(state=start)
+ self.stop_btn.config(state=stop)
+ self.clear_btn.config(state=clear)
+ else:
+ self.start_btn.config(state=start,
+ bg="#d00" if start == NORMAL else "#fca")
+ self.stop_btn.config(state=stop,
+ bg="#d00" if stop == NORMAL else "#fca")
+ self.clear_btn.config(state=clear,
+ bg="#d00" if clear == NORMAL else "#fca")
self.output_lbl.config(text=txt, fg=color)
def makeLoadDemoMenu(self, master):