Обновление данных об уничтожении с помощью pygtk

Я использую Glade и pygtk, и у меня есть окно с древовидным представлением с кнопкой, которая открывает диалоговое окно, создающее новую запись для древовидного представления. Я хочу обновить древовидную структуру в главном окне, когда диалоговое окно уничтожено, но я не вижу простого способа сделать это.

--Редактировать--

Нашел ответ, мне просто нужно было подключить сигнал уничтожения окон

(dialog).window.connect('destroy', self.foo)

person LockeeDeck    schedule 13.01.2011    source источник


Ответы (1)


Правильный подход заключается в обработке ответа диалога в главном окне:

def on_menu_item_activated(self, widget, data=None):
    dialog = FunkyDialog()
    response = dialog.run()

    if response == gtk.RESPONSE_OK:
        // update treeview

Возможно, лучшим способом сделать это будет использование шаблона проектирования Observer. Когда пользователь нажимает «ОК», вы сохраняете свои данные. Это уведомляет древовидную структуру о внесении изменений, что приводит к ее перезагрузке.

person Jon    schedule 22.01.2011