master #351

Merged
asmeron merged 2 commits from YanTheKaller/ubinstall-gtk:master into master 1 month ago

@ -42,8 +42,8 @@ void on_advanced_part_remove_part(GtkWidget *self, main_window *widgets){
for_iter (model, &iter){ for_iter (model, &iter){
char *target; char *target;
gtk_tree_model_get(model,&iter,0,&target,-1); gtk_tree_model_get(model,&iter,0,&target,-1);
if (data->partition&&!strcmp(data->partition,target)){
gtk_widget_destroy(part->MainBox); gtk_widget_destroy(part->MainBox);
if (data->partition&&!strcmp(data->partition,target)){
gtk_list_store_set(widgets->PartitionsList,&iter,7,0,-1); gtk_list_store_set(widgets->PartitionsList,&iter,7,0,-1);
free(part); free(part);
} }
@ -180,6 +180,18 @@ void yon_advanced_part_save_part(advanced_part_data *data){
if (!config(part_crypt_parameter)) yon_config_register(part_crypt_parameter,part_crypt_parameter_command,NULL); if (!config(part_crypt_parameter)) yon_config_register(part_crypt_parameter,part_crypt_parameter_command,NULL);
if (!config(part_format_parameter)) yon_config_register(part_format_parameter,part_format_parameter_command,NULL); if (!config(part_format_parameter)) yon_config_register(part_format_parameter,part_format_parameter_command,NULL);
if (!data){
yon_config_force_append_element(device_parameter,"",",");
yon_config_force_append_element(part_parameter,"",",");
yon_config_force_append_element(part_size_parameter,"",",");
yon_config_force_append_element(part_label_parameter,"",",");
yon_config_force_append_element(part_fs_type_parameter,"",",");
yon_config_force_append_element(part_fs_label_parameter,"",",");
yon_config_force_append_element(part_crypt_parameter,"",",");
yon_config_force_append_element(part_format_parameter,"",",");
return;
}
yon_config_force_append_element(device_parameter,data->device,","); yon_config_force_append_element(device_parameter,data->device,",");
yon_config_force_append_element(part_parameter,data->partition,","); yon_config_force_append_element(part_parameter,data->partition,",");
if (data->size>0){ if (data->size>0){
@ -679,12 +691,12 @@ void yon_advanced_init(main_window *widgets){
yon_char_parsed_free(vmf_file,size); yon_char_parsed_free(vmf_file,size);
g_signal_handlers_unblock_by_func(G_OBJECT(widgets->AdvancedVirtualDeviceCombo),G_CALLBACK(on_advanced_virtual_device_changed),widgets); g_signal_handlers_unblock_by_func(G_OBJECT(widgets->AdvancedVirtualDeviceCombo),G_CALLBACK(on_advanced_virtual_device_changed),widgets);
if (!strcmp(config(AUTOINSTALL_TYPE_INSTALL),"custom")){
advanced_part_data *data1 = yon_advanced_get_config_data(0); advanced_part_data *data1 = yon_advanced_get_config_data(0);
advanced_part_data *data2 = yon_advanced_get_config_data(1); advanced_part_data *data2 = yon_advanced_get_config_data(1);
yon_advanced_part_select_for_data(data1,widgets); yon_advanced_part_select_for_data(data1,widgets);
yon_advanced_part_select_for_data(data2,widgets); yon_advanced_part_select_for_data(data2,widgets);
}
} }
advanced_part_widgets *yon_advanced_part_create(advanced_part_data *part_data){ advanced_part_widgets *yon_advanced_part_create(advanced_part_data *part_data){

@ -12,12 +12,6 @@ int yon_users_save(main_window *widgets){
} else { } else {
yon_config_remove_by_key(root_password_parameter); yon_config_remove_by_key(root_password_parameter);
} }
int autologin = gtk_switch_get_active(GTK_SWITCH(widgets->UserAutologinSwitch));
if (autologin){
yon_config_register(autologin_parameter,autologin_parameter_command,"yes");
} else {
yon_config_register(autologin_parameter,autologin_parameter_command,"no");
}
GList *users = gtk_container_get_children(GTK_CONTAINER(widgets->UserAddBox)); GList *users = gtk_container_get_children(GTK_CONTAINER(widgets->UserAddBox));
GList *iter; GList *iter;
@ -38,7 +32,7 @@ int yon_users_save(main_window *widgets){
} else { } else {
for (iter=users;iter;iter=iter->next){ for (iter=users;iter;iter=iter->next){
yon_user_struct *user = g_object_get_data(G_OBJECT(iter->data),"yon_user_struct"); yon_user_struct *user = g_object_get_data(G_OBJECT(iter->data),"yon_user_struct");
if (user){ if (user&&user->changed){
if (!yon_user_save(user)){ if (!yon_user_save(user)){
yon_ubl_status_box_spawn(GTK_CONTAINER(main_config.status_box),_EMPTY_IMPORTANT_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); yon_ubl_status_box_spawn(GTK_CONTAINER(main_config.status_box),_EMPTY_IMPORTANT_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
@ -57,6 +51,9 @@ int yon_users_save(main_window *widgets){
yon_char_parsed_add_or_create_if_exists(users,&users_size,DEFAULTUSER_parameter); yon_char_parsed_add_or_create_if_exists(users,&users_size,DEFAULTUSER_parameter);
yon_char_parsed_add_or_create_if_exists(users,&users_size,ADDADM_parameter); yon_char_parsed_add_or_create_if_exists(users,&users_size,ADDADM_parameter);
yon_debug_output("%s\n",yon_config_save_list_simple(users,users_size,main_config.config_load_path)); yon_debug_output("%s\n",yon_config_save_list_simple(users,users_size,main_config.config_load_path));
for (int i=0;i<users_size;i++){
yon_config_set_status(users[i],0);
}
} }
return 1; return 1;
} }
@ -104,11 +101,20 @@ int yon_user_save(yon_user_struct *user){
return 1; return 1;
} }
void on_user_autoloin_switch(GtkWidget *, int status, main_window *){
if (status){
yon_config_register(autologin_parameter,autologin_parameter_command,"yes");
} else {
yon_config_register(autologin_parameter,autologin_parameter_command,"no");
}
}
void on_user_add(GtkWidget *,main_window *widgets){ void on_user_add(GtkWidget *,main_window *widgets){
yon_user_struct *user = yon_user_struct_new(); yon_user_struct *user = yon_user_struct_new();
g_signal_connect(G_OBJECT(user->AdminCheck),"clicked",G_CALLBACK(yon_user_admin_check),widgets); g_signal_connect(G_OBJECT(user->AdminCheck),"clicked",G_CALLBACK(yon_user_admin_check),widgets);
g_object_set_data(G_OBJECT(user->MainBox),"widgets",widgets); g_object_set_data(G_OBJECT(user->MainBox),"widgets",widgets);
gtk_box_pack_start(GTK_BOX(widgets->UserAddBox),user->MainBox,0,0,0); gtk_box_pack_start(GTK_BOX(widgets->UserAddBox),user->MainBox,0,0,0);
user->changed=1;
} }
void on_user_remove_clicked(GtkWidget *,yon_user_struct *user){ void on_user_remove_clicked(GtkWidget *,yon_user_struct *user){
@ -131,6 +137,7 @@ void yon_password_new(GtkWidget *, yon_user_struct *user){
void yon_user_admin_check(GtkWidget *self, main_window *widgets){ void yon_user_admin_check(GtkWidget *self, main_window *widgets){
yon_user_struct *user = g_object_get_data(G_OBJECT(self),"yon_user_struct"); yon_user_struct *user = g_object_get_data(G_OBJECT(self),"yon_user_struct");
GList *list = gtk_container_get_children(GTK_CONTAINER(widgets->UserAddBox)); GList *list = gtk_container_get_children(GTK_CONTAINER(widgets->UserAddBox));
user->changed=1;
GList *iter; GList *iter;
for(iter=list;iter;iter=iter->next){ for(iter=list;iter;iter=iter->next){
if (iter->data!=user->MainBox){ if (iter->data!=user->MainBox){
@ -144,6 +151,7 @@ void yon_user_admin_check(GtkWidget *self, main_window *widgets){
yon_user_struct *yon_user_struct_new(){ yon_user_struct *yon_user_struct_new(){
yon_user_struct *user = new(yon_user_struct); yon_user_struct *user = new(yon_user_struct);
memset(user,0,sizeof(yon_user_struct));
GtkBuilder *builder = gtk_builder_new_from_resource(glade_path_user); GtkBuilder *builder = gtk_builder_new_from_resource(glade_path_user);
user->MainBox = yon_gtk_builder_get_widget(builder,"MainBox"); user->MainBox = yon_gtk_builder_get_widget(builder,"MainBox");

@ -761,6 +761,8 @@ void yon_main_window_create(main_window *widgets){
g_signal_connect(G_OBJECT(widgets->OSFormatEncryptionButton),"clicked",G_CALLBACK(yon_os_password_open),widgets); g_signal_connect(G_OBJECT(widgets->OSFormatEncryptionButton),"clicked",G_CALLBACK(yon_os_password_open),widgets);
yon_gtk_revealer_set_from_switch(GTK_REVEALER(widgets->OSRevealer),GTK_SWITCH(widgets->OSFormatSwitch)); yon_gtk_revealer_set_from_switch(GTK_REVEALER(widgets->OSRevealer),GTK_SWITCH(widgets->OSFormatSwitch));
g_signal_connect(G_OBJECT(widgets->UserAutologinSwitch),"state-set",G_CALLBACK(on_user_autoloin_switch),widgets);
g_signal_connect(G_OBJECT(widgets->UserdataFormatEncryptionCombo),"changed",G_CALLBACK(yon_gtk_widget_set_sensitive_from_combo_box),widgets->UserdataFormatEncryptionButton); g_signal_connect(G_OBJECT(widgets->UserdataFormatEncryptionCombo),"changed",G_CALLBACK(yon_gtk_widget_set_sensitive_from_combo_box),widgets->UserdataFormatEncryptionButton);
g_signal_connect(G_OBJECT(widgets->UserdataFormatEncryptionButton),"clicked",G_CALLBACK(yon_userdata_password_open),widgets); g_signal_connect(G_OBJECT(widgets->UserdataFormatEncryptionButton),"clicked",G_CALLBACK(yon_userdata_password_open),widgets);

@ -972,6 +972,7 @@ typedef struct
GtkWidget *PasswordEntry; GtkWidget *PasswordEntry;
GtkWidget *PasswordButton; GtkWidget *PasswordButton;
GtkWidget *AdminCheck; GtkWidget *AdminCheck;
int changed;
} yon_user_struct; } yon_user_struct;
typedef struct typedef struct
@ -1618,3 +1619,4 @@ void on_status_update(GtkWidget *,main_window *widgets);
gboolean on_kernel_addon_menu_block(GObject *self, GdkEventButton *event); gboolean on_kernel_addon_menu_block(GObject *self, GdkEventButton *event);
void on_os_components_uncheck_all(GtkWidget *,main_window *widgets); void on_os_components_uncheck_all(GtkWidget *,main_window *widgets);
gboolean yon_os_components_load(main_window *widgets); gboolean yon_os_components_load(main_window *widgets);
void on_user_autoloin_switch(GtkWidget *, int status, main_window *);
Loading…
Cancel
Save