diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c
index a00a755..13a59c1 100644
--- a/source/ubinstall-gtk.c
+++ b/source/ubinstall-gtk.c
@@ -846,6 +846,7 @@ void config_init(){
main_config.progress_thread=0;
main_config.install_complete=0;
main_config.save_done=0;
+ main_config.save_configured=0;
main_config.configure_mode=0;
main_config.load_mode=-1;
main_config.log_progress_buzy=0;
@@ -943,12 +944,12 @@ void *on_config_save(void *data){
main_window *widgets = (main_window*)data;
int size=0;
- config_str parameters = yon_config_get_selection_by_key(&size,
+ config_str parameters = yon_config_get_selection_by_key_no_ignored(&size,
AUTOINSTALL_TYPE_INSTALL,
AUTOINSTALL_DEVICE,
device_format_parameter,
device_label_parameter,
- main_config.install_mode!=1||main_config.install_mode!=2?NULL:part_parameter,
+ main_config.install_mode!=1&&main_config.install_mode!=2?NULL:part_parameter,
part_type_parameter,
device_format_parameter,
main_config.install_mode!=1?NULL:part_size_parameter,
@@ -978,7 +979,7 @@ void *on_config_save(void *data){
g_mutex_lock(&main_config.install_mutex);
main_config.install_complete=1;
g_mutex_unlock(&main_config.install_mutex);
- if (!main_config.save_done){
+ if (!main_config.save_done&&main_config.save_configured){
on_setup_system_configuration(widgets);
}
return 0;
@@ -1112,7 +1113,6 @@ void on_page_changed(GtkWidget *,GtkWidget *,int page, main_window *widgets){
} break;
case YON_PAGE_COMPLETION:{
- yon_debug_output("%s\n","Enter completion");
yon_switch_page_render(widgets,7);
gtk_widget_set_sensitive(widgets->BackButton,0);
gtk_widget_hide(gtk_widget_get_parent(widgets->PackageInstallationProgress));
@@ -1120,19 +1120,18 @@ void on_page_changed(GtkWidget *,GtkWidget *,int page, main_window *widgets){
gtk_widget_hide(widgets->PackageInstallationLabel);
gtk_widget_set_sensitive(widgets->NextButton,1);
gtk_widget_set_sensitive(widgets->CancelInstallButton,1);
- yon_debug_output("%s\n","Done widgets");
g_mutex_lock(&main_config.install_mutex);
main_config.install_complete=0;
g_mutex_unlock(&main_config.install_mutex);
main_config.save_done=0;
- yon_debug_output("%s\n","Done variables");
textdomain(LocaleName);
gtk_button_set_label(GTK_BUTTON(widgets->NextButton),RESTART_LABEL);
gtk_button_set_label(GTK_BUTTON(widgets->CancelInstallButton),EXIT_LABEL);
gtk_image_set_from_icon_name(GTK_IMAGE(gtk_button_get_image(GTK_BUTTON(widgets->NextButton))),
"com.ublinux.ubinstall-gtk.sync-symbolic",GTK_ICON_SIZE_BUTTON);
- yon_debug_output("%s\n","Done labels and button icon");
}
+ gtk_widget_hide(gtk_widget_get_parent(widgets->InstallationProgress));
+ gtk_widget_hide(gtk_widget_get_parent(widgets->PackageInstallationProgress));
break;
case YON_PAGE_COMPLETED:{
@@ -1194,20 +1193,20 @@ void *on_setup_system_configuration(void * data){
main_window *widgets = (main_window*)data;
if (widgets){};
int size;
- config_str all_parameters = yon_char_parsed_new(&size,
- config(user_name_parameter),
- config(user_gecos_parameter),
- config(user_password_parameter),
- config(root_password_parameter),
- config(autologin_parameter),
- config(xkbmodel_parameter),
- config(xkblayout_parameter),
- config(xkbvariant_parameter),
- config(xkboptions_parameter),
- config(hostname_parameter),
- config(zone_parameter),
- config(lang_parameter),
- config(locale_parameter),
+ config_str all_parameters = yon_config_get_selection_by_key(&size,
+ user_name_parameter,
+ user_gecos_parameter,
+ user_password_parameter,
+ root_password_parameter,
+ autologin_parameter,
+ xkbmodel_parameter,
+ xkblayout_parameter,
+ xkbvariant_parameter,
+ xkboptions_parameter,
+ hostname_parameter,
+ zone_parameter,
+ lang_parameter,
+ locale_parameter,
NULL);
if (all_parameters){
char *parameter_string = yon_char_parsed_to_string(all_parameters,size," ");
@@ -1309,29 +1308,29 @@ void yon_install_options_save(GtkWidget *device_tree, GtkWidget *part_tree,char
void yon_install_options_save(GtkWidget *device_tree, GtkWidget *part_tree,char *mode,main_window *widgets){
GtkTreeIter iter,itar;
GtkTreeModel *model,*model2;
- if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(device_tree)),&model,&iter)){
- if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(part_tree)),&model2,&itar)){
- char *cur_device, *cur_section;
- gtk_tree_model_get(model,&iter,0,&cur_device,-1);
- gtk_tree_model_get(model2,&itar,0,&cur_section,-1);
- yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device);
- yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,mode);
- yon_config_register(part_parameter,part_parameter_command,cur_section);
-
- if(cur_section) free(cur_section);
- if(cur_device) free(cur_device);
- if (!main_config.configure_mode)
- gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN);
- else
- gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION);
- } else {
- yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
- yon_ubl_status_highlight_incorrect(part_tree);
- }
- } else {
+ if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(device_tree)),&model,&iter)){
+ yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
+ yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(device_tree));
+ return;
+ }
+ if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(part_tree)),&model2,&itar)){
yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
- yon_ubl_status_highlight_incorrect(device_tree);
+ yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(part_tree));
+ return;
}
+ char *cur_device, *cur_section;
+ gtk_tree_model_get(model,&iter,0,&cur_device,-1);
+ gtk_tree_model_get(model2,&itar,0,&cur_section,-1);
+ yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device);
+ yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,mode);
+ yon_config_register(part_parameter,part_parameter_command,cur_section);
+
+ if(cur_section) free(cur_section);
+ if(cur_device) free(cur_device);
+ if (!main_config.configure_mode)
+ gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN);
+ else
+ gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION);
}
void on_page_navigation_clicked(GtkWidget *self, main_window *widgets);
@@ -1742,6 +1741,7 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){
gtk_widget_set_sensitive(widgets->CancelInstallButton,0);
gtk_widget_set_sensitive(widgets->NextButton,0);
gtk_widget_set_sensitive(widgets->BackButton,0);
+ main_config.save_configured=1;
}
} else {
gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_CONFIGURE_END);
@@ -1763,7 +1763,7 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){
} break;
case YON_PAGE_INSTALL_ERROR:
- case YON_PAGE_COMPLETION:
+ case YON_PAGE_COMPLETION:{
confirmation_window *window = yon_confirmation_window_new();
dictionary *dict = NULL;
yon_dictionary_add_or_create_if_exists_with_data(dict,"widgets",widgets);
@@ -1775,6 +1775,7 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){
gtk_label_set_text(GTK_LABEL(window->TextLabel),WARNING_REBOOT_TEXT_LABEL);
gtk_label_set_text(GTK_LABEL(window->TitleLabel),WARNING_TITLE_LABEL);
gtk_widget_show(window->Window);
+ }
break;
case YON_PAGE_INSTALL_OPTIONS: {
@@ -1807,44 +1808,66 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){
case YON_PAGE_OPTIONS_GRUB_INSTALL:{
GtkTreeIter iter;
GtkTreeModel *model;
- if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubInstallDevicesTree)),&model,&iter)){
- char *cur_device;
- gtk_tree_model_get(model,&iter,0,&cur_device,-1);
- yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device);
- yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_install");
- yon_config_remove_by_key(part_parameter);
- if (!main_config.configure_mode)
- gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN);
- else
- gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION);
- } else {
+ if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubInstallDevicesTree)),&model,&iter)){
+ yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
+ yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->GrubInstallDevicesTree));
+ return;
+ }
+ char *cur_device;
+ gtk_tree_model_get(model,&iter,0,&cur_device,-1);
+ if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubInstallPartitionTree)),&model,&iter)){
yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
- yon_ubl_status_highlight_incorrect(widgets->GrubInstallDevicesTree);
+ yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->GrubInstallPartitionTree));
+ return;
}
+ char *partition;
+ gtk_tree_model_get(model,&iter,0,&partition,-1);
+ yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device);
+ yon_config_register(part_parameter,part_parameter_command,partition);
+ yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_install");
+ yon_config_remove_by_key(part_parameter);
+ if (!main_config.configure_mode)
+ gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN);
+ else
+ gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_CONFIGURE_END);
+
} break;
case YON_PAGE_OPTIONS_GRUB_UPDATE:{
GtkTreeIter iter;
GtkTreeModel *model;
- if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubUpdateDevicesTree)),&model,&iter)){
- char *cur_device;
- gtk_tree_model_get(model,&iter,0,&cur_device,-1);
- yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device);
- yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_update");
- yon_config_remove_by_key(part_parameter);
+ if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubUpdateDevicesTree)),&model,&iter)){
+ yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
+ yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->GrubUpdateDevicesTree));
+ return;
+ }
+ char *cur_device;
+ gtk_tree_model_get(model,&iter,0,&cur_device,-1);
+ if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GrubUpdatePartitionTree)),&model,&iter)){
+ yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
+ yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->GrubUpdatePartitionTree));
+ return;
+ }
+ char *partition;
+ gtk_tree_model_get(model,&iter,0,&partition,-1);
+ yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device);
+ yon_config_register(part_parameter,part_parameter_command,partition);
+ yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_update");
+ yon_config_remove_by_key(part_parameter);
if (!main_config.configure_mode)
gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN);
else
- gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION);
- } else {
- yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
- yon_ubl_status_highlight_incorrect(widgets->GrubUpdateDevicesTree);
- }
- }break;
+ gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_CONFIGURE_END);
+ }break;
case YON_PAGE_OPTIONS_SEPARATE:{
GtkTreeModel *model;
GtkTreeIter iter;
+ if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateDevicesTree)),&model,&iter)){
+ yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
+ yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->SeparateDevicesTree));
+ return;
+ }
if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateSysSectionTree)),&model,&iter)){
yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->SeparateSysSectionTree));
@@ -1856,32 +1879,42 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){
case YON_PAGE_OPTIONS_SEPARATE_USRDATA:{
GtkTreeIter iter,itar;
GtkTreeModel *model,*model2;
- if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateDevicesTree)),&model,&iter)){
- if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateSysSectionTree)),&model2,&itar)){
- char *cur_device, *system_section, *user_section;
- gtk_tree_model_get(model,&iter,0,&cur_device,-1);
- gtk_tree_model_get(model2,&itar,0,&system_section,-1);
- if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateUserSysSectionTree)),&model2,&itar)){
- gtk_tree_model_get(model2,&itar,0,&user_section,-1);
- yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device);
- yon_config_register(part_parameter,part_parameter_command,yon_char_unite(system_section,",",user_section,NULL));
- yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"custom");
- gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN);
- return;
- } else {
-
- }
- } else {
-
- }
- } else {
-
+ if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->OSSysSectionTree)),&model,&iter)){
+ yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
+ yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->OSSysSectionTree));
+ gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_OPTIONS_OS_ONLY);
+ return;
+ }
+ if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateUserDevicesTree)),&model2,&itar)){
+ yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
+ yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->SeparateUserDevicesTree));
+ return;
}
+ if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->SeparateUserSysSectionTree)),&model2,&itar)){
+ yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),NO_DEVICE_CHOSEN_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
+ yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(widgets->SeparateUserSysSectionTree));
+ return;
+ }
+ char *cur_device, *system_section, *user_section;
+ gtk_tree_model_get(model,&iter,0,&cur_device,-1);
+ gtk_tree_model_get(model2,&itar,0,&system_section,-1);
+
+ gtk_tree_model_get(model2,&itar,0,&user_section,-1);
+ yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device);
+ char *installation_parts = yon_char_unite(system_section,",",user_section,NULL);
+ yon_config_register(part_parameter,part_parameter_command,installation_parts);
+ free(installation_parts);
+ yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"custom");
+ if (!main_config.configure_mode)
+ gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION_BEGIN);
+ else
+ gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_REGION);
} break;
case YON_PAGE_OPTIONS_OS_ONLY:{
yon_install_options_save(widgets->OSDevicesTree,widgets->OSSysSectionTree,"system_only",widgets);
+ gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_CONFIGURE_END);
} break;
case YON_PAGE_OPTIONS_USRDATA_ONLY:{
@@ -1921,7 +1954,15 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){
break;
case YON_PAGE_CONFIGURE_END:{
- gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_USERS);
+ if (main_config.install_mode==3&&(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->GrubInstallRadio))||gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->GrubUpdateRadio))||gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->OSRadio)))){
+ gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALL_OPTIONS);
+ gtk_widget_set_sensitive(widgets->BackButton,1);
+ gtk_widget_set_sensitive(widgets->NextButton,1);
+ gtk_widget_set_sensitive(widgets->CancelInstallButton,1);
+
+ } else { //||||gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->UserDataOnlyRadio))
+ gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_USERS);
+ }
} break;
case YON_PAGE_COMPLETED:{
@@ -1935,10 +1976,9 @@ void on_page_navigation_clicked(GtkWidget *self, main_window *widgets){
} break;
case -2: { // Cancel/repeat
- switch (page){
+ switch (page){
case YON_PAGE_COMPLETION:
case YON_PAGE_INSTALL_ERROR:{
- // GtkWidget *dialog = gtk_dialog_new();
gtk_main_quit();
}break;
default:{
@@ -1982,7 +2022,9 @@ void yon_set_max_size_from_partition(GtkTreeView *table, GtkSpinButton *spin_siz
GtkTreeIter iter;
char *selected_size=NULL;
if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(table),&model,&iter)){
- gtk_tree_model_get(model,&iter,1,&selected_size,-1);
+ gtk_tree_model_get(model,&iter,2,&selected_size,-1);
+ if (yon_char_is_empty(selected_size))
+ gtk_tree_model_get(model,&iter,1,&selected_size,-1);
if (!yon_char_is_empty(selected_size)){
int size = gtk_combo_box_get_active(size_type);
double cur_size = atof(selected_size);
@@ -2386,9 +2428,11 @@ main_window *yon_main_window_complete(){
widgets->GpartedGrubInstallButton = yon_gtk_builder_get_widget(builder,"GpartedGrubInstallButton");
widgets->GrubInstallDevicesTree = yon_gtk_builder_get_widget(builder,"GrubInstallDevicesTree");
+ widgets->GrubInstallPartitionTree = yon_gtk_builder_get_widget(builder,"GrubInstallPartitionTree");
widgets->GpartedGrubUpdateButton = yon_gtk_builder_get_widget(builder,"GpartedGrubUpdateButton");
widgets->GrubUpdateDevicesTree = yon_gtk_builder_get_widget(builder,"GrubUpdateDevicesTree");
+ widgets->GrubUpdatePartitionTree = yon_gtk_builder_get_widget(builder,"GrubUpdatePartitionTree");
widgets->GpartedSeparateButton = yon_gtk_builder_get_widget(builder,"GpartedSeparateButton");
widgets->SeparateDevicesTree = yon_gtk_builder_get_widget(builder,"SeparateDevicesTree");
@@ -2477,6 +2521,8 @@ main_window *yon_main_window_complete(){
g_signal_connect(G_OBJECT(widgets->AddButton),"clicked",G_CALLBACK(on_keyboard_clicked),widgets);
g_signal_connect(G_OBJECT(widgets->RemoveButton),"clicked",G_CALLBACK(on_keyboard_removed),widgets);
+ g_signal_connect(G_OBJECT(widgets->GrubInstallDevicesTree),"cursor-changed",G_CALLBACK(on_separate_installation_changed),widgets);
+ g_signal_connect(G_OBJECT(widgets->GrubUpdateDevicesTree),"cursor-changed",G_CALLBACK(on_separate_installation_changed),widgets);
g_signal_connect(G_OBJECT(widgets->InstallationNearSysDevicesTree),"cursor-changed",G_CALLBACK(on_near_installation_device_changed),widgets);
g_signal_connect(G_OBJECT(widgets->SamePlaceDeviceTree),"cursor-changed",G_CALLBACK(on_near_installation_device_changed),widgets);
g_signal_connect(G_OBJECT(widgets->UserdataDevicesTree),"cursor-changed",G_CALLBACK(on_near_installation_device_changed),widgets);
diff --git a/source/ubinstall-gtk.h b/source/ubinstall-gtk.h
index 67706dd..6deb980 100755
--- a/source/ubinstall-gtk.h
+++ b/source/ubinstall-gtk.h
@@ -76,8 +76,13 @@ NULL
#define get_parts_and_devices_command "lsblk --noheadings -Jo TYPE,PATH,SIZE,FSTYPE,LABEL,PARTLABEL,MOUNTPOINT,FSUSED,FSUSE% --exclude 7,253"
#define AUTOINSTALL_TYPE_INSTALL "AUTOINSTALL[install_type]"
+#define AUTOINSTALL_TYPE_INSTALL_command "ubconfig --source global get [autoinstall] AUTOINSTALL[install_type]"
+
#define AUTOINSTALL_DEVICE "AUTOINSTALL[device]"
+#define AUTOINSTALL_DEVICE_command "ubconfig --source global get [autoinstall] AUTOINSTALL[device]"
+
#define part_parameter "AUTOINSTALL[part]"
+#define part_parameter_command "ubconfig --source global get [autoinstall] AUTOINSTALL[part]"
#define user_name_parameter "AUTOINSTALL[user_name]"
#define user_name_parameter_command "ubconfig --source global get [autoinstall] AUTOINSTALL[user_name]"
@@ -121,9 +126,6 @@ NULL
#define open_gparted_command "gparted"
-#define AUTOINSTALL_TYPE_INSTALL_command "ubconfig --source global get [autoinstall] AUTOINSTALL[install_type]"
-#define AUTOINSTALL_DEVICE_command "ubconfig --source global get [autoinstall] AUTOINSTALL[device]"
-#define part_parameter_command "ubconfig --source global get [autoinstall] AUTOINSTALL[part]"
#define PASSWORD_DEFAULT "ublinux"
@@ -196,6 +198,7 @@ typedef struct {
int password_min_length;
int save_done;
+ int save_configured;
int load_mode;
int install_complete;
@@ -334,9 +337,11 @@ typedef struct {
GtkWidget *GpartedGrubInstallButton;
GtkWidget *GrubInstallDevicesTree;
+ GtkWidget *GrubInstallPartitionTree;
GtkWidget *GpartedGrubUpdateButton;
GtkWidget *GrubUpdateDevicesTree;
+ GtkWidget *GrubUpdatePartitionTree;
GtkWidget *GpartedSeparateButton;
GtkWidget *SeparateDevicesTree;
diff --git a/ubinstall-gtk.glade b/ubinstall-gtk.glade
index d0ed9eb..033b9a1 100644
--- a/ubinstall-gtk.glade
+++ b/ubinstall-gtk.glade
@@ -71,6 +71,13 @@
+
False
@@ -4387,7 +4392,6 @@ installed.
True
True
- in
True
@@ -4425,7 +4429,6 @@ installed.
True
False
vertical
- 5
True
@@ -4473,8 +4476,9 @@ installed.
True
False
- Attention! The selected OS UBLinux components will be installed
+ <b>Attention!</b> The selected OS UBLinux components will be installed
separately into the selected partition.
+ True
0
@@ -5157,6 +5161,110 @@ separately into the selected partition.
0
+
+
+ True
+ False
+ vertical
+
+
+ True
+ False
+ Choose a section:
+ 0
+
+
+ False
+ True
+ 0
+
+
+
+
+ True
+ True
+ in
+ 128
+
+
+ True
+ True
+ PartitionsList
+ 0
+
+
+
+
+
+ Section
+
+
+
+ 0
+
+
+
+
+
+
+ Capacity
+
+
+
+ 1
+
+
+
+
+
+
+ Free space
+
+
+
+ 2
+
+
+
+
+
+
+ File system
+
+
+
+ 3
+
+
+
+
+
+
+ Mark
+
+
+
+ 4
+
+
+
+
+
+
+
+
+ False
+ True
+ 1
+
+
+
+
+ False
+ True
+ 1
+
+
@@ -5428,6 +5536,110 @@ separately into the selected partition.
0
+
+
+ True
+ False
+ vertical
+
+
+ True
+ False
+ Choose a section:
+ 0
+
+
+ False
+ True
+ 0
+
+
+
+
+ True
+ True
+ in
+ 128
+
+
+ True
+ True
+ PartitionsList
+ 0
+
+
+
+
+
+ Section
+
+
+
+ 0
+
+
+
+
+
+
+ Capacity
+
+
+
+ 1
+
+
+
+
+
+
+ Free space
+
+
+
+ 2
+
+
+
+
+
+
+ File system
+
+
+
+ 3
+
+
+
+
+
+
+ Mark
+
+
+
+ 4
+
+
+
+
+
+
+
+
+ False
+ True
+ 1
+
+
+
+
+ False
+ True
+ 1
+
+