g.add(rb, 0, 1, (0, 1, 0, 1))
g.add(bb, 0, 2, growx = 1)
-result = g.run()
+result = g.run_once()
screen.finish()
self.title = title
self.form = Form()
self.childList = []
+ self.form_created = 0
args = list(args)
args[:0] = [self]
apply(Grid.__init__, tuple(args))
growx, growy);
self.childList.append(widget)
- def run(self):
- self.place(1,1)
- for child in self.childList:
- self.form.add(child)
- self.screen.gridWrappedWindow(self, self.title)
- result = self.form.run()
+ def run_once(self):
+ result = self.run()
self.screen.popWindow()
return result
+ def run(self):
+ if not self.form_created:
+ self.place(1,1)
+ for child in self.childList:
+ self.form.add(child)
+ self.screen.gridWrappedWindow(self, self.title)
+ self.form_created = 1
+ return self.form.run()
+
+