@@ -33,6 +33,7 @@ def __init__(self, root, engine):
3333 '''Initialize root, engine, and top attributes.
3434
3535 top (level widget): set in create_widgets() called from open().
36+ frame: container for all widgets in dialog.
3637 text (Text searched): set in open(), only used in subclasses().
3738 ent (ry): created in make_entry() called from create_entry().
3839 row (of grid): 0 in create_widgets(), +1 in make_entry/frame().
@@ -83,10 +84,14 @@ def create_widgets(self):
8384 top .wm_title (self .title )
8485 top .wm_iconname (self .icon )
8586 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 )
8691
8792 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 )
9095
9196 self .create_entries () # row 0 (and maybe 1), cols 0, 1
9297 self .create_option_buttons () # next row, cols 0, 1
@@ -99,9 +104,9 @@ def make_entry(self, label_text, var):
99104 entry - gridded labeled Entry for text entry.
100105 label - Label widget, returned for testing.
101106 '''
102- label = Label (self .top , text = label_text )
107+ label = Label (self .frame , text = label_text )
103108 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 )
105110 entry .grid (row = self .row , column = 1 , sticky = "nwe" )
106111 self .row = self .row + 1
107112 return entry , label
@@ -117,11 +122,11 @@ def make_frame(self,labeltext=None):
117122 label - Label widget, returned for testing.
118123 '''
119124 if labeltext :
120- label = Label (self .top , text = labeltext )
125+ label = Label (self .frame , text = labeltext )
121126 label .grid (row = self .row , column = 0 , sticky = "nw" )
122127 else :
123128 label = ''
124- frame = Frame (self .top )
129+ frame = Frame (self .frame )
125130 frame .grid (row = self .row , column = 1 , columnspan = 1 , sticky = "nwe" )
126131 self .row = self .row + 1
127132 return frame , label
@@ -171,7 +176,7 @@ def make_button(self, label, command, isdef=0):
171176
172177 def create_command_buttons (self ):
173178 "Place buttons in vertical command frame gridded on right."
174- f = self .buttonframe = Frame (self .top )
179+ f = self .buttonframe = Frame (self .frame )
175180 f .grid (row = 0 ,column = 2 ,padx = 2 ,pady = 2 ,ipadx = 2 ,ipady = 2 )
176181
177182 b = self .make_button ("Close" , self .close )
0 commit comments