diff --git a/source/ubl-settings-usergroups-user.c b/source/ubl-settings-usergroups-user.c index 8f83cab..f67d26a 100644 --- a/source/ubl-settings-usergroups-user.c +++ b/source/ubl-settings-usergroups-user.c @@ -136,6 +136,19 @@ void on_parameter_changed(GtkWidget *,ubl_settings_usergroups_user_window *windo } } +void on_homedir_changed(GtkComboBox *self, GtkWidget *target){ + int active = gtk_combo_box_get_active(self); + switch(active){ + case 2: + gtk_widget_set_sensitive(target,1); + break; + default: + gtk_widget_set_sensitive(target,0); + break; + } + +} + ubl_settings_usergroups_user_window *yon_ubl_settings_usergroups_user_new(){ ubl_settings_usergroups_user_window *window = malloc(sizeof(ubl_settings_usergroups_user_window)); GtkBuilder *builder = gtk_builder_new_from_resource(glade_path_ubl_settings_usergroups_user); @@ -185,7 +198,7 @@ ubl_settings_usergroups_user_window *yon_ubl_settings_usergroups_user_new(){ window->MainNotebook=yon_gtk_builder_get_widget(builder,"MainNotebook"); window->expiration_unix=NULL; window->last_uid=NULL; - yon_on_entry_set_allowed_symbols(GTK_ENTRY(window->userUserNameEntry),"abcdefghijklmnopqrstuvwxyz1234567890"); + yon_gtk_entry_block_symbols(GTK_ENTRY(window->userUserNameEntry),"\"'[]"); yon_on_entry_set_allowed_symbols(GTK_ENTRY(window->userLoginEntry),"abcdefghijklmnopqrstuvwxyz1234567890"); time_t t = time(NULL); @@ -228,7 +241,7 @@ ubl_settings_usergroups_user_window *yon_ubl_settings_usergroups_user_new(){ g_signal_connect(G_OBJECT(window->userPasswordExpirationButton),"clicked",G_CALLBACK(on_expiration_clicked),window); g_signal_connect(G_OBJECT(window->userUIDAutoCheck),"toggled",G_CALLBACK(yon_gtk_widget_set_sensitive_from_toggle_button_inversed),window->userUIDEntry); g_signal_connect(G_OBJECT(window->userHomeCombo),"changed",G_CALLBACK(on_password_combo_changed),window->userHomeEntry); - g_signal_connect(G_OBJECT(window->userHomeCombo),"changed",G_CALLBACK(on_password_combo_changed),window->userHomeButton); + g_signal_connect(G_OBJECT(window->userHomeCombo),"changed",G_CALLBACK(on_homedir_changed),window->userHomeButton); g_signal_connect(G_OBJECT(window->userPasswordCombo),"changed",G_CALLBACK(on_password_combo_changed),window->userPasswordButton); g_signal_connect(G_OBJECT(window->userGroupsCheck),"toggled",G_CALLBACK(yon_gtk_widget_set_sensitive_from_toggle_button_inversed),window->userGroupsEntry); g_signal_connect(G_OBJECT(window->userGroupsCheck),"toggled",G_CALLBACK(yon_gtk_widget_set_sensitive_from_toggle_button_inversed),window->UserGroupsButton); diff --git a/source/ubl-settings-usergroups.h b/source/ubl-settings-usergroups.h index 0f8aa38..b617b3f 100644 --- a/source/ubl-settings-usergroups.h +++ b/source/ubl-settings-usergroups.h @@ -624,4 +624,5 @@ void on_date_format_changed(GtkWidget *, main_window *widgets); char *yon_user_get_system_groups(char *target_login); int yon_system_group_sync(char *group); int yon_system_user_sync(char *user); +void on_homedir_changed(GtkComboBox *self, GtkWidget *target); #endif \ No newline at end of file