mirror of
https://github.com/python/cpython.git
synced 2024-12-25 09:44:37 +08:00
bpo-31083: IDLE: Describe the Page classes in configdialog (#2965)
Add template as comment. Update existing classes to match outline. Initial patch by Cheryl Sabella.
This commit is contained in:
parent
e1e60bd95c
commit
6f446bee4f
@ -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()
|
||||
|
||||
|
@ -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.
|
Loading…
Reference in New Issue
Block a user