def __init__(self, datapath, connection): self.__builder = create_builder("LumNewGroupDialog.ui") self.__dialog = self.__builder.get_object("new_group_dialog") gid = connection.next_free_gid() self.__builder.get_object("gid_entry").set_text(str(gid))
def __init__(self, datapath): self.__builder = create_builder("LumAbout.ui") dialog = self.__builder.get_object("about_dialog") dialog.run () dialog.destroy ()
def __init__(self, datapath): self.__builder = create_builder("LumPasswordEntry.ui") self.__dialog = self.__builder.get_object("password_dialog") pe = self.__builder.get_object("password_entry") pe.connect("activate", lambda widget : self.__dialog.response(1))
def __init__(self, datapath, configuration): self.__configuration = configuration self.__builder = create_builder("LumConnectDialog.ui") self.__dialog = self.__builder.get_object("connect_dialog") for renderer in ('uri_cellrenderer', 'bind_dn_cellrenderer', 'base_dn_cellrenderer', 'users_ou_cellrenderer', 'groups_ou_cellrenderer'): self.__builder.get_object(renderer).set_property("editable", True) signals = { 'on_connect_button_activate': self.on_connect_button_cb, 'on_add_button_activate': self.on_add_button_cb, 'on_uri_cellrenderer_edited': self.on_uri_edited, 'on_bind_dn_edited': self.on_bind_dn_edited, 'on_base_dn_edited': self.on_base_dn_edited, 'on_users_ou_edited': self.on_users_ou_edited, 'on_groups_ou_edited': self.on_groups_ou_edited, 'on_uri_cellrenderer_editing_started': self.on_uri_start_editing, 'on_remove_button_clicked': self.on_remove_button_cb, # Activate 'on_treeview_row_activated': self.on_connect_button_cb, } self.__builder.connect_signals(signals) image = gtk.Image() image.set_from_file(os.path.join(datapath, "ui/server.png")) self.__pixbuf = image.get_pixbuf() self.__credentials = (None, None, None, None, None) self.__old_uri = None for uri in self.__configuration.sections(): if not self.__configuration.has_option(uri, "bind_dn"): bind_dn = _("Insert bind dn") else: bind_dn = self.__configuration.get(uri, "bind_dn") if self.__configuration.has_option(uri, "base_dn"): base_dn = self.__configuration.get(uri, "base_dn") else: base_dn = _("Insert base dn") if self.__configuration.has_option(uri, "users_ou"): users_ou = self.__configuration.get(uri, "users_ou") else: users_ou = _("Insert users organizational unit") if self.__configuration.has_option(uri, "groups_ou"): groups_ou = self.__configuration.get(uri, "groups_ou") else: groups_ou = _("Insert groups organizational unit") self.__builder.get_object("server_store").append((self.__pixbuf, uri, bind_dn, base_dn, users_ou, groups_ou)) self.__dialog.set_title(_("Connection to LDAP server"))
def __init__(self, datapath, username, count = 0): # Create the gtk Builder and load interface files self.__builder = create_builder("LumChangeUserPasswordDialog.ui") self.__dialog = self.__builder.get_object("dialog") self.__datapath = datapath self.__username = username self.__count = count + 1
def __init__(self, datapath, connection): signals = { 'on_username_entry_focus_out_event': self.guess_params, } self.__builder = create_builder("LumNewUserDialog.ui") self.__window = self.__builder.get_object("new_user_dialog") self.__connection = connection self.usermodel = None self.__builder.connect_signals(signals)
def __init__(self, datapath, usermodel, group_store): self.__builder = create_builder("LumEditUserDialog.ui") self.__dialog = self.__builder.get_object("dialog") self.__givenname_entry = self.__builder.get_object("givenname_entry") self.__sn_entry = self.__builder.get_object("sn_entry") self.__group_combobox = self.__builder.get_object("group_combobox") # Fill data self.__givenname_entry.set_text(usermodel.get_given_name()) self.__sn_entry.set_text(usermodel.get_surname()) self.__group_model = self.__builder.get_object("group_model") # Copy group data in the model self.__group_iter = None it = group_store.get_iter_first() while it is not None: gid = group_store.get_gid(it) group = group_store.get_group_name(it) new_it = self.__group_model.append((int(gid), group)) if gid == int(usermodel.get_gid()): self.__group_iter = new_it it = group_store.iter_next(it) if (self.__group_iter is not None): self.__group_combobox.set_active_iter(self.__group_iter) # Shell and home self.__shell_entry = self.__builder.get_object("shell_entry") self.__shell_entry.set_text(usermodel.get_shell()) self.__home_entry = self.__builder.get_object("home_entry") self.__home_entry.set_text(usermodel.get_home()) self.__email_entry = self.__builder.get_object("email_entry") self.__email_entry.set_text(usermodel.get_email()) self.__usermodel = usermodel self.__dialog.set_title(_("Editing user %s") % usermodel.get_username())
def __init__(self, connection, group_name): self.__builder = create_builder("LumEditGroupMembers.ui") self.__dialog = self.__builder.get_object("edit_group_members_dialog") self.__connection = connection self.__builder.get_object("new_button").connect("clicked", self.new_user) self.__builder.get_object("remove_button").connect("clicked", self.delete_user) # Get only non structural members self.__original_members = filter(lambda x : not x[1], self.__connection.get_members(group_name, True)) self.__original_members = map(lambda x : x[0], self.__original_members) store = self.__builder.get_object("members_store") for uid in self.__original_members: store.append((uid,)) renderer = self.__builder.get_object("member_cellrenderer") renderer.set_property("editable", True) renderer.connect("edited", self.on_renderer_edited)
def __init__(self): # Get interface file self.__builder = create_builder("LumNewServerDialog.ui")
def __init__(self): # Quite a hack, but working self.__datapath = os.path.realpath(os.path.join(__file__, os.path.pardir)) global lum_application if lum_application is not None: raise LumErorr("Cannot create more that one lum_application!") else: lum_application = self self.__group_store = GroupStore(self.__datapath) self.__user_store = UserStore(self.__datapath, self.__group_store) # Gobject constructor gobject.GObject.__init__ (self) # Load interface file self.__builder = create_builder("LumApp.ui") # Load main window self.__window = self.__builder.get_object("window") # Signal definition signals = { # Quit signals 'on_quit_menu_item_activate': gtk.main_quit, 'window_destroy_event_cb': gtk.main_quit, 'on_window_destroy': gtk.main_quit, # Callbacks 'on_about_menu_item_activate': self.show_about_dialog, 'on_new_user_menu_item_activate': self.create_new_user_dialog, 'on_connect_menu_item_activate': self.connect, 'on_reload_user_list_menu_item_activate': self.reload_user_list, 'on_delete_user_menu_item_activate': self.delete_user, 'on_forget_password_menu_item_activate': self.forget_password, 'on_edit_user_menu_item_activate': self.edit_user, 'on_change_password_menu_item_activate': self.change_password, 'on_disconnect_menu_item_activate': self.disconnect, # Group menu callbacks 'on_new_group_menuitem_activate': self.new_group, 'on_delete_group_menuitem_activate': self.delete_group, 'on_properties_group_menuitem_activate': self.group_properties, } # Autoconnect signals self.__builder.connect_signals (signals) # Create initial configuration self.__configuration = Configuration() # Change the model of the treeview self.__user_treeview = UserTreeView(self.__user_store, self) self.__user_treeview.apply_filter(self.__builder.get_object("filter_user_entry")) self.__builder.get_object("user_scrolled_window").add(self.__user_treeview) self.__group_treeview = GroupTreeView(self.__group_store, self) self.__group_treeview.apply_filter(self.__builder.get_object("filter_group_entry")) self.__builder.get_object("group_scrolled_window").add(self.__group_treeview) # Some initial values self.__uri, self.__bind_dn = None, None # Create popup menu self.__user_popup_menu = lumUserTreeViewMenu(self) self.__group_popup_menu = lumGroupTreeViewMenu(self)