[Python-checkins] bpo-33987: Use master ttk Frame for IDLE config dialog (GH-22943)

miss-islington webhook-mailer at python.org
Sat Oct 24 21:08:26 EDT 2020


https://github.com/python/cpython/commit/2d493893c7aa9af633c4ebeb56ecce42e3a82e9f
commit: 2d493893c7aa9af633c4ebeb56ecce42e3a82e9f
branch: 3.9
author: Miss Skeleton (bot) <31488909+miss-islington at users.noreply.github.com>
committer: miss-islington <31488909+miss-islington at users.noreply.github.com>
date: 2020-10-24T18:08:17-07:00
summary:

bpo-33987: Use master ttk Frame for IDLE config dialog (GH-22943)

(cherry picked from commit c579ad14d3b5bb9a45d7b9cc708eaf0bf4884c50)

Co-authored-by: Mark Roseman <mark at markroseman.com>

files:
M Lib/idlelib/configdialog.py

diff --git a/Lib/idlelib/configdialog.py b/Lib/idlelib/configdialog.py
index 82596498d3461..a84e1c5668f99 100644
--- a/Lib/idlelib/configdialog.py
+++ b/Lib/idlelib/configdialog.py
@@ -67,7 +67,6 @@ def __init__(self, parent, title='', *, _htest=False, _utest=False):
         if not _utest:
             self.withdraw()
 
-        self.configure(borderwidth=5)
         self.title(title or 'IDLE Preferences')
         x = parent.winfo_rootx() + 20
         y = parent.winfo_rooty() + (30 if not _htest else 150)
@@ -97,6 +96,7 @@ def create_widgets(self):
         """Create and place widgets for tabbed dialog.
 
         Widgets Bound to self:
+            frame: encloses all other widgets
             note: Notebook
             highpage: HighPage
             fontpage: FontPage
@@ -109,7 +109,9 @@ def create_widgets(self):
             load_configs: Load pages except for extensions.
             activate_config_changes: Tell editors to reload.
         """
-        self.note = note = Notebook(self)
+        self.frame = frame = Frame(self, padding="5px")
+        self.frame.grid(sticky="nwes")
+        self.note = note = Notebook(frame)
         self.highpage = HighPage(note)
         self.fontpage = FontPage(note, self.highpage)
         self.keyspage = KeysPage(note)
@@ -148,7 +150,7 @@ def create_action_buttons(self):
             padding_args = {}
         else:
             padding_args = {'padding': (6, 3)}
-        outer = Frame(self, padding=2)
+        outer = Frame(self.frame, padding=2)
         buttons_frame = Frame(outer, padding=2)
         self.buttons = {}
         for txt, cmd in (
@@ -687,7 +689,7 @@ class HighPage(Frame):
 
     def __init__(self, master):
         super().__init__(master)
-        self.cd = master.master
+        self.cd = master.winfo_toplevel()
         self.style = Style(master)
         self.create_page_highlight()
         self.load_theme_cfg()
@@ -1346,7 +1348,7 @@ class KeysPage(Frame):
 
     def __init__(self, master):
         super().__init__(master)
-        self.cd = master.master
+        self.cd = master.winfo_toplevel()
         self.create_page_keys()
         self.load_key_cfg()
 



More information about the Python-checkins mailing list