class _GenDialog(gtkDialog): def __init__(self, name='GenDialog'): gtkDialog.__init__(self) self.set_name(name) self.ok_button = Button('ok', 'gtk-ok') self.ok_button.set_name(name) self.cancel_button = Button('cancel', 'gtk-cancel') self.cancel_button.set_name(name) self.action_area.pack_start(self.ok_button, TRUE, TRUE, 0) self.action_area.pack_end(self.cancel_button, TRUE, TRUE, 0) self.ok_button.show() self.cancel_button.show() self.cancel_button.connect('clicked', lambda *x: self.destroy()) self._buttons_ = {} self.show() def set_ok(self, ok_fun): self.ok_button.connect('clicked', ok_fun) def set_cancel(self, cancel_fun): self.cancel_button.connect('clicked', cancel_fun) self.connect('destroy', cancel_fun) def add_button(self, name, func, label='foo'): if name not in self._buttons_.keys(): self._buttons_[name] = Button(label) self._buttons_[name].show() self._buttons_[name].connect('clicked', func) self.action_area.add(self._buttons_[name])
class _GenDialog(gtkDialog): def __init__(self, name='GenDialog'): gtkDialog.__init__(self) self.set_name(name) self.ok_button = Button('ok', 'gtk-ok') self.ok_button.set_name(name) self.cancel_button = Button('cancel', 'gtk-cancel') self.cancel_button.set_name(name) self.action_area.pack_start(self.ok_button, TRUE, TRUE, 0) self.action_area.pack_end(self.cancel_button, TRUE, TRUE, 0) self.ok_button.show() self.cancel_button.show() self.cancel_button.connect('clicked', lambda *x : self.destroy()) self._buttons_ = {} self.show() def set_ok(self, ok_fun): self.ok_button.connect('clicked', ok_fun) def set_cancel(self, cancel_fun): self.cancel_button.connect('clicked', cancel_fun) self.connect('destroy', cancel_fun) def add_button(self, name, func, label='foo'): if name not in self._buttons_.keys(): self._buttons_[name] = Button(label) self._buttons_[name].show() self._buttons_[name].connect('clicked', func) self.action_area.add(self._buttons_[name])