]> granicus.if.org Git - python/commitdiff
bpo-31083: IDLE: Describe the Page classes in configdialog (#2965)
authorcsabella <cheryl.sabella@gmail.com>
Tue, 1 Aug 2017 04:24:07 +0000 (00:24 -0400)
committerTerry Jan Reedy <tjreedy@udel.edu>
Tue, 1 Aug 2017 04:24:07 +0000 (00:24 -0400)
Add template as comment. Update existing classes to match outline.
Initial patch by Cheryl Sabella.

Lib/idlelib/configdialog.py
Misc/NEWS.d/next/IDLE/2017-07-31-23-20-51.bpo-31083.991FXm.rst [new file with mode: 0644]

index 28070a51709dd28fce1fadaab1743882a1f17521..6d8a03b1c00befe66fa5fb7862a32e9c2c3fd666 100644 (file)
@@ -1382,11 +1382,27 @@ class ConfigDialog(Toplevel):
             self.ext_userCfg.Save()
 
 
+# class TabPage(Frame):  # A template for Page classes.
+#     def __init__(self, master):
+#         super().__init__(master)
+#         self.create_page_tab()
+#         self.load_tab_cfg()
+#     def create_page_tab(self):
+#         # Define tk vars and register var and callback with tracers.
+#         # Create subframes and widgets.
+#         # Pack widgets.
+#     def load_tab_cfg(self):
+#         # Initialize widgets with data from idleConf.
+#     def var_changed_var_name():
+#         # For each tk var that needs other than default callback.
+#     def other_methods():
+#         # Define tab-specific behavior.
+
+
 class FontPage(Frame):
 
-    def __init__(self, parent, highpage):
-        super().__init__(parent)
-        self.parent = parent
+    def __init__(self, master, highpage):
+        super().__init__(master)
         self.highlight_sample = highpage.highlight_sample
         self.create_page_font_tab()
         self.load_font_cfg()
@@ -1439,19 +1455,17 @@ class FontPage(Frame):
                         indent_title: Label
                         (*)indent_scale: Scale - space_num
         """
-        parent = self.parent
-        self.font_name = tracers.add(StringVar(parent), self.var_changed_font)
-        self.font_size = tracers.add(StringVar(parent), self.var_changed_font)
-        self.font_bold = tracers.add(BooleanVar(parent), self.var_changed_font)
+        self.font_name = tracers.add(StringVar(self), self.var_changed_font)
+        self.font_size = tracers.add(StringVar(self), self.var_changed_font)
+        self.font_bold = tracers.add(BooleanVar(self), self.var_changed_font)
         self.space_num = tracers.add(IntVar(self), ('main', 'Indent', 'num-spaces'))
 
         # Create widgets:
         # body and body section frames.
-        frame = self
         frame_font = LabelFrame(
-                frame, borderwidth=2, relief=GROOVE, text=' Base Editor Font ')
+                self, borderwidth=2, relief=GROOVE, text=' Base Editor Font ')
         frame_indent = LabelFrame(
-                frame, borderwidth=2, relief=GROOVE, text=' Indentation Width ')
+                self, borderwidth=2, relief=GROOVE, text=' Indentation Width ')
         # frame_font.
         frame_font_name = Frame(frame_font)
         frame_font_param = Frame(frame_font)
@@ -1471,7 +1485,7 @@ class FontPage(Frame):
                 frame_font_param, variable=self.font_bold,
                 onvalue=1, offvalue=0, text='Bold')
         frame_font_sample = Frame(frame_font, relief=SOLID, borderwidth=1)
-        temp_font = tkFont.Font(parent, ('courier', 10, 'normal'))
+        temp_font = tkFont.Font(self, ('courier', 10, 'normal'))
         self.font_sample = Label(
                 frame_font_sample, justify=LEFT, font=temp_font,
                 text='AaBbCcDdEe\nFfGgHhIiJj\n1234567890\n#:+=(){}[]')
@@ -1503,8 +1517,6 @@ class FontPage(Frame):
         indent_title.pack(side=TOP, anchor=W, padx=5)
         self.indent_scale.pack(side=TOP, padx=5, fill=X)
 
-        return frame
-
     def load_font_cfg(self):
         """Load current configuration settings for the font options.
 
@@ -1597,8 +1609,8 @@ class FontPage(Frame):
 
 class GenPage(Frame):
 
-    def __init__(self, parent):
-        super().__init__(parent)
+    def __init__(self, master):
+        super().__init__(master)
         self.create_page_general()
         self.load_general_cfg()
 
diff --git a/Misc/NEWS.d/next/IDLE/2017-07-31-23-20-51.bpo-31083.991FXm.rst b/Misc/NEWS.d/next/IDLE/2017-07-31-23-20-51.bpo-31083.991FXm.rst
new file mode 100644 (file)
index 0000000..3bb3375
--- /dev/null
@@ -0,0 +1,3 @@
+IDLE - Add an outline of a TabPage class in configdialog.
+Update existing classes to match outline.
+Initial patch by Cheryl Sabella.