class PrivacyListsWindow: def __init__(self, account): self.account = account this_class = self.__class__ self.xml = gtkgui_helpers.get_glade('privacy_lists_main_window.glade') self.window = self.xml.get_widget('privacy_lists_main_window') self.privacy_lists_add_list_button = \ self.xml.get_widget('privacy_lists_add_list_button') self.privacy_lists_refresh_button = \ self.xml.get_widget('privacy_lists_refresh_button') self.privacy_lists_list_combobox = \ self.xml.get_widget('privacy_lists_list_combobox') self.privacy_lists_add_list_button.connect('clicked', self.on_privacy_lists_add_list_button_clicked) self.privacy_lists_refresh_button.connect('clicked', self.on_privacy_lists_refresh_button_clicked, self.account) self.privacy_lists = [] self.privacy_lists_save = [] def create_list_of_privacy_types(arg_value): if arg_value == False: return False else: for privacy_list in arg_value["lists"]: print "DEBUG: List found (%s)" % privacy_list self.privacy_lists += [privacy_list] print "DEBUG: List Added (%s)" % privacy_list self.draw_privacy_lists_in_combobox() gajim.connections[account].get_privacy_lists(create_list_of_privacy_types) self.enabled = False if len(gajim.connections) > 1: title = _('Privacy Lists for %s') % self.account else: title = _('Privacy Lists') self.window.set_title(title) self.window.show_all() self.xml.signal_autoconnect(self) def create_list_of_privacy_types(arg_value): if arg_value == False: return False else: for privacy_list in arg_value["lists"]: print "DEBUG: List found (%s)" % privacy_list self.privacy_lists += [privacy_list] print "DEBUG: List Added (%s)" % privacy_list self.draw_privacy_lists_in_combobox() def on_privacy_lists_add_list_button_clicked(self, widget): return True def on_privacy_lists_refresh_button_clicked(self, widget, account): create_list_of_privacy_types() def draw_privacy_lists_in_combobox(self): print 'DEBUG: %s list(s) in cache' % xrange(len(self.privacy_lists_save)) for remove_item in xrange(len(self.privacy_lists_save)): self.privacy_lists_list_combobox.remove_text(remove_item) self.privacy_lists_save = [] print 'DEBUG: %s new list(s)' % xrange(len(self.privacy_lists)) for add_item in self.privacy_lists: self.privacy_lists_list_combobox.append_text(add_item) self.privacy_lists_save, self.privacy_lists = self.privacy_lists, [] print 'DEBUG: list(s) %s' % self.privacy_lists_save