Buttons minimum size #278

Merged
asmeron merged 8 commits from YanTheKaller/ubl-settings-usergroups:master into master 4 weeks ago

@ -31,6 +31,8 @@ ubl_settings_usergroups_group_creation_window *yon_ubl_settings_usergroups_group
gtk_window_set_title(GTK_WINDOW(window->CreateGroupWindow),GROUPS_TITLE_LABEL);
// yon_on_entry_set_allowed_symbols(GTK_ENTRY(window->userGroupsEntry),"abcdefghijklmnopqrstuvwxyz1234567890");
yon_on_entry_set_allowed_symbols(GTK_ENTRY(window->userLoginEntry),"abcdefghijklmnopqrstuvwxyz1234567890");
on_GID_update(NULL,window);
dictionary *entry_dict=NULL;
yon_dictionary_add_or_create_if_exists_with_data(entry_dict,"combo",window->PasswordCombo);

@ -133,6 +133,8 @@ ubl_settings_usergroups_password_window *yon_ubl_settings_usergroups_password_ne
window->UserCancelButton=yon_gtk_builder_get_widget(builder,"UserCancelButton");
window->UserOkButton=yon_gtk_builder_get_widget(builder,"UserOkButton");
yon_gtk_entry_allow_password_symbols(GTK_ENTRY(window->PasswordEntry));
yon_gtk_entry_allow_password_symbols(GTK_ENTRY(window->RepeatPasswordEntry));
yon_window_config_custom_window_setup(GTK_WINDOW(window->CreateGroupWindow),"PasswordWindow");
g_signal_connect(G_OBJECT(window->UserCancelButton),"clicked",G_CALLBACK(on_subwindow_close),NULL);
g_signal_connect(G_OBJECT(window->PasswordEntry),"icon-press",G_CALLBACK(on_password_show_hide),NULL);

@ -64,7 +64,7 @@ void yon_remove_confirmation_window_accept_clicked(GtkWidget *self,dictionary *d
char *target;
if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SystemTree)),&model,&iter)){
yon_tree_model_sort_filter_get_model_iter(GTK_TREE_MODEL_SORT(model),&iter,&child);
gtk_tree_model_get(model,&child,2,&target,-1);
gtk_tree_model_get(GTK_TREE_MODEL(widgets->liststore1),&child,2,&target,-1);
}
for_iter(GTK_TREE_MODEL(widgets->UsersList),&itar){
char *cur;

@ -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,8 @@ 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_gtk_entry_block_symbols(GTK_ENTRY(window->userUserNameEntry),":");
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);
struct tm tm = *localtime(&t);
@ -226,8 +240,8 @@ ubl_settings_usergroups_user_window *yon_ubl_settings_usergroups_user_new(){
g_signal_connect(G_OBJECT(window->userAdditionalGroupsButton),"clicked",G_CALLBACK(on_groups_multiple_clicked),window->userAdditionalGroupsEntry);
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->userHomeCombo),"changed",G_CALLBACK(on_homedir_changed),window->userHomeEntry);
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);
@ -355,7 +369,7 @@ void on_user_save(GtkWidget *self, dictionary *dict){
config_str final = yon_char_parsed_merge(main_config.users,main_config.users_size,config_users,config_size,&final_size);
uid_string = (char*)gtk_entry_get_text(GTK_ENTRY(window->userUIDEntry));
if (window->last_uid&&strcmp(uid_string,window->last_uid)){
if (!window->last_uid||strcmp(uid_string,window->last_uid)){
if (!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->userCreateUnuniqueCheck))){
int found=0;
for (int i=0;i<final_size;i++){
@ -377,13 +391,13 @@ void on_user_save(GtkWidget *self, dictionary *dict){
return;
}
}
}
if (yon_char_is_empty(uid_string)){
yon_ubl_status_box_spawn(GTK_CONTAINER(window->StatusBox),EMPTY_IMPORTANT_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
yon_ubl_status_highlight_incorrect(window->userUIDEntry);
gtk_notebook_set_current_page(GTK_NOTEBOOK(window->MainNotebook),0);
return;
if (yon_char_is_empty(uid_string)){
yon_ubl_status_box_spawn(GTK_CONTAINER(window->StatusBox),EMPTY_IMPORTANT_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
yon_ubl_status_highlight_incorrect(window->userUIDEntry);
gtk_notebook_set_current_page(GTK_NOTEBOOK(window->MainNotebook),0);
return;
}
}
}
@ -514,17 +528,19 @@ void on_user_save(GtkWidget *self, dictionary *dict){
password_change_interval_maximum = yon_char_from_long(password_change_interval_maximum_active);
} else password_change_interval_maximum = 0;
guint year, month, day;
gtk_calendar_get_date(GTK_CALENDAR(window->ExpirationCalendar),&year,&month,&day);
char *dy = yon_char_from_int(day);
char *mn = yon_char_from_int(month+1);
char *yr = yon_char_from_int(year);
if (month+1<10) mn = yon_char_append("0",mn);
if (day<10) dy = yon_char_append("0",dy);
password_expiration_date = yon_char_unite(yr,"-",mn,"-",dy,NULL);
// password_expiration_date = (char*)gtk_entry_get_text(GTK_ENTRY(window->userPasswordExpirationEntry));
if (yon_char_is_empty(password_expiration_date)){
password_expiration_date="-1";
if (!yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(window->userPasswordExpirationEntry)))){
guint year, month, day;
gtk_calendar_get_date(GTK_CALENDAR(window->ExpirationCalendar),&year,&month,&day);
char *dy = yon_char_from_int(day);
char *mn = yon_char_from_int(month+1);
char *yr = yon_char_from_int(year);
if (month+1<10) mn = yon_char_append("0",mn);
if (day<10) dy = yon_char_append("0",dy);
password_expiration_date = yon_char_unite(yr,"-",mn,"-",dy,NULL);
// password_expiration_date = (char*)gtk_entry_get_text(GTK_ENTRY(window->userPasswordExpirationEntry));
if (yon_char_is_empty(password_expiration_date)){
password_expiration_date="-1";
}
}
long warning_days_active = gtk_spin_button_get_value(GTK_SPIN_BUTTON(window->userWarningSpin));
@ -674,11 +690,13 @@ int yon_system_user_sync(char *target_user){
free(optionals);
if (!yon_char_is_empty(config_user)){
char *user_command = yon_config_parameter_prepare_command(dull_parameter_get_command,NULL,"users",USERADD(target_user));
char *parameter_name = USERADD(target_user);
char *user_command = yon_config_parameter_prepare_command(dull_parameter_get_command,NULL,"users",parameter_name);
yon_config_register(parameter_name,user_command,config_user);
yon_config_remove_ignore(parameter_name);
free(config_user);
free(user_command);
free(parameter_name);
} else return 0;
if (!yon_char_is_empty(config_shadow)){

@ -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

@ -135,3 +135,8 @@ background:transparent;
.marginright image{
margin-right: 2px;
}
button {
min-width: 26px;
min-height: 24px;
}
Loading…
Cancel
Save