bpo-33987: Add master ttk Frame to IDLE search dialogs (GH-22942) · python/cpython@5df6c99 (original) (raw)

`@@ -33,6 +33,7 @@ def init(self, root, engine):

`

33

33

`'''Initialize root, engine, and top attributes.

`

34

34

``

35

35

` top (level widget): set in create_widgets() called from open().

`

``

36

`+

frame: container for all widgets in dialog.

`

36

37

` text (Text searched): set in open(), only used in subclasses().

`

37

38

` ent (ry): created in make_entry() called from create_entry().

`

38

39

` row (of grid): 0 in create_widgets(), +1 in make_entry/frame().

`

`@@ -83,10 +84,14 @@ def create_widgets(self):

`

83

84

`top.wm_title(self.title)

`

84

85

`top.wm_iconname(self.icon)

`

85

86

`self.top = top

`

``

87

`+

self.frame = Frame(top, padding="5px")

`

``

88

`+

self.frame.grid(sticky="nwes")

`

``

89

`+

top.grid_columnconfigure(0, weight=100)

`

``

90

`+

top.grid_rowconfigure(0, weight=100)

`

86

91

``

87

92

`self.row = 0

`

88

``

`-

self.top.grid_columnconfigure(0, pad=2, weight=0)

`

89

``

`-

self.top.grid_columnconfigure(1, pad=2, minsize=100, weight=100)

`

``

93

`+

self.frame.grid_columnconfigure(0, pad=2, weight=0)

`

``

94

`+

self.frame.grid_columnconfigure(1, pad=2, minsize=100, weight=100)

`

90

95

``

91

96

`self.create_entries() # row 0 (and maybe 1), cols 0, 1

`

92

97

`self.create_option_buttons() # next row, cols 0, 1

`

`@@ -99,9 +104,9 @@ def make_entry(self, label_text, var):

`

99

104

` entry - gridded labeled Entry for text entry.

`

100

105

` label - Label widget, returned for testing.

`

101

106

` '''

`

102

``

`-

label = Label(self.top, text=label_text)

`

``

107

`+

label = Label(self.frame, text=label_text)

`

103

108

`label.grid(row=self.row, column=0, sticky="nw")

`

104

``

`-

entry = Entry(self.top, textvariable=var, exportselection=0)

`

``

109

`+

entry = Entry(self.frame, textvariable=var, exportselection=0)

`

105

110

`entry.grid(row=self.row, column=1, sticky="nwe")

`

106

111

`self.row = self.row + 1

`

107

112

`return entry, label

`

`@@ -117,11 +122,11 @@ def make_frame(self,labeltext=None):

`

117

122

` label - Label widget, returned for testing.

`

118

123

` '''

`

119

124

`if labeltext:

`

120

``

`-

label = Label(self.top, text=labeltext)

`

``

125

`+

label = Label(self.frame, text=labeltext)

`

121

126

`label.grid(row=self.row, column=0, sticky="nw")

`

122

127

`else:

`

123

128

`label = ''

`

124

``

`-

frame = Frame(self.top)

`

``

129

`+

frame = Frame(self.frame)

`

125

130

`frame.grid(row=self.row, column=1, columnspan=1, sticky="nwe")

`

126

131

`self.row = self.row + 1

`

127

132

`return frame, label

`

`@@ -171,7 +176,7 @@ def make_button(self, label, command, isdef=0):

`

171

176

``

172

177

`def create_command_buttons(self):

`

173

178

`"Place buttons in vertical command frame gridded on right."

`

174

``

`-

f = self.buttonframe = Frame(self.top)

`

``

179

`+

f = self.buttonframe = Frame(self.frame)

`

175

180

`f.grid(row=0,column=2,padx=2,pady=2,ipadx=2,ipady=2)

`

176

181

``

177

182

`b = self.make_button("Close", self.close)

`