diff --git a/gresource.xml b/gresource.xml
index 0d5be4f..68eaf28 100644
--- a/gresource.xml
+++ b/gresource.xml
@@ -41,11 +41,16 @@
slide-10.png
slide-11.png
slide-12.png
- near_install_disk.png
language.png
- in_part_install_disk.png
- clear_install_disk.png
- manual_install_disk.png
+ install_type_custom_normal.png
+ install_type_data_only_normal.png
+ install_type_fast_normal.png
+ install_type_grub_install_normal.png
+ install_type_grub_update_normal.png
+ install_type_next_normal.png
+ install_type_part_normal.png
+ install_type_recovery_normal.png
+ install_type_system_only_normal.png
modules.csv
diff --git a/icons-builtin/install_type_custom_normal.png b/icons-builtin/install_type_custom_normal.png
new file mode 100644
index 0000000..af0218a
Binary files /dev/null and b/icons-builtin/install_type_custom_normal.png differ
diff --git a/icons-builtin/install_type_data_only_normal.png b/icons-builtin/install_type_data_only_normal.png
new file mode 100644
index 0000000..5cef2dd
Binary files /dev/null and b/icons-builtin/install_type_data_only_normal.png differ
diff --git a/icons-builtin/install_type_fast_normal.png b/icons-builtin/install_type_fast_normal.png
new file mode 100644
index 0000000..11758b8
Binary files /dev/null and b/icons-builtin/install_type_fast_normal.png differ
diff --git a/icons-builtin/install_type_grub_install_normal.png b/icons-builtin/install_type_grub_install_normal.png
new file mode 100644
index 0000000..0e07dd2
Binary files /dev/null and b/icons-builtin/install_type_grub_install_normal.png differ
diff --git a/icons-builtin/install_type_grub_update_normal.png b/icons-builtin/install_type_grub_update_normal.png
new file mode 100644
index 0000000..0e07dd2
Binary files /dev/null and b/icons-builtin/install_type_grub_update_normal.png differ
diff --git a/icons-builtin/install_type_next_normal.png b/icons-builtin/install_type_next_normal.png
new file mode 100644
index 0000000..69a1da8
Binary files /dev/null and b/icons-builtin/install_type_next_normal.png differ
diff --git a/icons-builtin/install_type_part_normal.png b/icons-builtin/install_type_part_normal.png
new file mode 100644
index 0000000..d09ed22
Binary files /dev/null and b/icons-builtin/install_type_part_normal.png differ
diff --git a/icons-builtin/install_type_recovery_normal.png b/icons-builtin/install_type_recovery_normal.png
new file mode 100644
index 0000000..a8efa2e
Binary files /dev/null and b/icons-builtin/install_type_recovery_normal.png differ
diff --git a/icons-builtin/install_type_system_only_normal.png b/icons-builtin/install_type_system_only_normal.png
new file mode 100644
index 0000000..751a0de
Binary files /dev/null and b/icons-builtin/install_type_system_only_normal.png differ
diff --git a/source/CMakeLists.txt b/source/CMakeLists.txt
index 5273271..9a2e1aa 100644
--- a/source/CMakeLists.txt
+++ b/source/CMakeLists.txt
@@ -53,10 +53,6 @@ set(DEPENDFILES
../images/slide-11.png
../images/slide-12.png
../images/slide-12.png
- ../images/near_install_disk.png
- ../images/in_part_install_disk.png
- ../images/clear_install_disk.png
- ../images/manual_install_disk.png
../images/language.png
../ubinstall-gtk.glade
../ubinstall-gtk-language.glade
@@ -84,6 +80,15 @@ set(DEPENDFILES
../kernel-list-addon.csv
../services-list.csv
../network-list.csv
+ ../icons-builtin/install_type_custom_normal.png
+ ../icons-builtin/install_type_data_only_normal.png
+ ../icons-builtin/install_type_fast_normal.png
+ ../icons-builtin/install_type_grub_install_normal.png
+ ../icons-builtin/install_type_grub_update_normal.png
+ ../icons-builtin/install_type_next_normal.png
+ ../icons-builtin/install_type_part_normal.png
+ ../icons-builtin/install_type_recovery_normal.png
+ ../icons-builtin/install_type_system_only_normal.png
)
file(COPY ${DEPENDFILES} DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
diff --git a/source/ubinstall-gtk-decorations.c b/source/ubinstall-gtk-decorations.c
index e69de29..9545480 100644
--- a/source/ubinstall-gtk-decorations.c
+++ b/source/ubinstall-gtk-decorations.c
@@ -0,0 +1,131 @@
+#include "ubinstall-gtk.h"
+
+void yon_resize_images_update(main_window *widgets){
+ enum YON_PAGES page = gtk_notebook_get_current_page(GTK_NOTEBOOK(widgets->Notebook));
+ gtk_widget_hide(widgets->BootloaderImage);
+ gtk_widget_hide(widgets->RegionImage);
+ gtk_widget_hide(widgets->KeyboardImage);
+ gtk_widget_hide(widgets->UserImage);
+ gtk_widget_hide(widgets->StartupImage);
+ gtk_widget_hide(widgets->NetworkImage);
+
+ switch(page){
+ case YON_PAGE_BOOTLOADER:
+ gtk_widget_show(widgets->BootloaderImage);
+ break;
+ case YON_PAGE_REGION:
+ gtk_widget_show(widgets->RegionImage);
+ break;
+ case YON_PAGE_KEYBOARD:
+ gtk_widget_show(widgets->KeyboardImage);
+ break;
+ case YON_PAGE_USERS:
+ gtk_widget_show(widgets->UserImage);
+ break;
+ case YON_PAGE_STARTUP:
+ gtk_widget_show(widgets->StartupImage);
+ break;
+ case YON_PAGE_NETWORK:
+ gtk_widget_show(widgets->NetworkImage);
+ break;
+ case YON_PAGE_INSTALLATION:
+ gtk_widget_show(widgets->SlidesImage);
+ g_timeout_add(7000,on_image_slide,widgets);
+
+ break;
+ default:
+ break;
+ }
+}
+
+void on_region_resized(GtkWidget *,main_window *widgets){
+ enum YON_PAGES page = gtk_notebook_get_current_page(GTK_NOTEBOOK(widgets->Notebook));
+ GtkImage *target = NULL;
+ GdkPixbuf *pixbuf = NULL;
+ switch (page){
+ case YON_PAGE_BOOTLOADER:
+ target = GTK_IMAGE(widgets->BootloaderImage);
+ pixbuf = widgets->bootloader_original;
+ break;
+ case YON_PAGE_REGION:
+ target = GTK_IMAGE(widgets->RegionImage);
+ pixbuf = widgets->region_original;
+
+ break;
+ case YON_PAGE_KEYBOARD:
+ target = GTK_IMAGE(widgets->KeyboardImage);
+ pixbuf = widgets->keyboard_original;
+
+ break;
+ case YON_PAGE_USERS:
+ target = GTK_IMAGE(widgets->UserImage);
+ pixbuf = widgets->user_original;
+
+ break;
+ case YON_PAGE_STARTUP:
+ target = GTK_IMAGE(widgets->StartupImage);
+ pixbuf = widgets->startup_original;
+
+ break;
+ case YON_PAGE_NETWORK:
+ target = GTK_IMAGE(widgets->NetworkImage);
+ pixbuf = widgets->network_original;
+
+ break;
+ case YON_PAGE_INSTALLATION:
+ target = GTK_IMAGE(widgets->SlidesImage);
+ pixbuf = g_list_nth_data(widgets->slides_original,main_config.cur_slide);
+
+
+ break;
+ default:
+ break;
+ }
+ if (target){
+ yon_image_resize_from_container(target,pixbuf);
+ }
+}
+
+int yon_image_resize_from_container(GtkImage *target, GdkPixbuf *pixbuf_unscaled){
+ int width = gtk_widget_get_allocated_width((gtk_widget_get_parent(GTK_WIDGET(target))));
+ int height = gtk_widget_get_allocated_height((gtk_widget_get_parent(GTK_WIDGET(target))));
+
+ int newImgWidthDef = (width <= 217) ? width : width - 30;
+ int newImgHeightDef = (height <= 120) ? height : height - 80;
+
+ int originalWidth = gdk_pixbuf_get_width(pixbuf_unscaled);
+ int originalHeight = gdk_pixbuf_get_height(pixbuf_unscaled);
+ int newImgHeight = (int)(originalHeight / ((double) originalWidth / newImgWidthDef));
+
+ if (newImgHeight > newImgHeightDef) {
+ newImgHeight = newImgHeightDef;
+ newImgWidthDef = (int)(originalWidth / ((double) originalHeight / newImgHeight));
+ }
+ int newImageWidth = (int)(originalWidth / ((double) originalHeight / newImgHeight));
+
+ GdkPixbuf *scaledPixBuf = gdk_pixbuf_scale_simple(pixbuf_unscaled, newImageWidth, newImgHeight, GDK_INTERP_BILINEAR);
+ gtk_image_set_from_pixbuf(target, scaledPixBuf);
+
+ g_object_unref(scaledPixBuf);
+
+ return 1;
+}
+
+gboolean on_image_slide(void *data){
+ main_window *widgets = (main_window*)data;
+ int size;
+ config_str target = yon_char_parsed_new(&size,slide_repeat_path);
+ if (size)
+ yon_char_parsed_free(target,size);
+ gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->SlidesImage),(GdkPixbuf*)g_list_nth_data(widgets->slides_original,main_config.cur_slide));
+ // gtk_widget_queue_draw(widgets->SlidesImage);
+ if ((int)main_config.cur_slideNotebook));
+ gtk_widget_hide(widgets->SourceButton);
+ gtk_widget_hide(widgets->StartScenarioButton);
switch(page){
case YON_PAGE_WELCOME:
yon_load_proceed(YON_CONFIG_LOCAL);
@@ -100,6 +102,7 @@ void yon_navigation_buttons_set_sensetiveness(main_window *widgets){
case YON_PAGE_INSTALLATION:
gtk_widget_set_sensitive(widgets->NextButton,0);
gtk_widget_set_sensitive(widgets->BackButton,0);
+ gtk_widget_hide(widgets->SkipInstallationButton);
break;
case YON_PAGE_KERNEL:
gtk_widget_set_sensitive(widgets->BackButton,0);
@@ -116,12 +119,31 @@ void yon_navigation_buttons_set_sensetiveness(main_window *widgets){
gtk_button_set_label(GTK_BUTTON(widgets->NextButton),RESTART_LABEL);
gtk_widget_set_sensitive(widgets->BackButton,0);
break;
+ case YON_PAGE_SECTIONS:
+ gtk_widget_show(widgets->SourceButton);
+ break;
default:
gtk_widget_set_sensitive(widgets->BackButton,1);
gtk_widget_set_sensitive(widgets->NextButton,1);
gtk_widget_set_sensitive(widgets->CancelInstallButton,1);
break;
+
}
+ switch(page){
+ case YON_PAGE_KERNEL:
+ case YON_PAGE_KERNEL_ADDON:
+ case YON_PAGE_PACMAN_SOFTWARE:
+ case YON_PAGE_REGION:
+ case YON_PAGE_KEYBOARD:
+ case YON_PAGE_USERS:
+ case YON_PAGE_STARTUP:
+ case YON_PAGE_BOOTLOADER:
+ case YON_PAGE_NETWORK:
+ gtk_widget_show(widgets->SkipInstallationButton);
+ break;
+ default:
+ gtk_widget_hide(widgets->SkipInstallationButton);
+ }
}
int yon_page_save(main_window *widgets, enum YON_PAGES page){
@@ -276,6 +298,7 @@ void yon_configuration_mode_check(main_window *widgets){
}
void yon_page_update(main_window *widgets){
+ yon_resize_images_update(widgets);
yon_navigation_buttons_set_sensetiveness(widgets);
yon_switch_page_render(widgets);
yon_configuration_mode_check(widgets);
@@ -403,4 +426,13 @@ void on_page_cancel_clicked(GtkWidget *, main_window *widgets){
gtk_widget_set_sensitive(widgets->ConfigurationModeMenuItem,1);
yon_page_update(widgets);
+}
+
+void on_system_setup_pass(GtkWidget *, main_window *widgets){
+ if (main_config.configure_mode){
+ gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_CONFIGURE_END);
+ } else {
+ gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALLATION);
+ }
+ yon_page_update(widgets);
}
\ No newline at end of file
diff --git a/source/ubinstall-gtk-region.c b/source/ubinstall-gtk-region.c
index a59aff6..e6e6d9e 100644
--- a/source/ubinstall-gtk-region.c
+++ b/source/ubinstall-gtk-region.c
@@ -1,11 +1,5 @@
#include "ubinstall-gtk.h"
-// void on_region_resized(GtkWidget *,main_window *widgets){
-// yon_image_resize_from_container(GTK_IMAGE(widgets->SlidesImage), (GdkPixbuf*)g_list_nth_data(widgets->slides_original,cur_slide));
-// yon_image_resize_from_container(GTK_IMAGE(widgets->RegionImage), widgets->regions_original);
-// yon_image_resize_from_container(GTK_IMAGE(widgets->KeyboardImage), widgets->keyboard_original);
-// }
-
int yon_region_save(main_window *widgets){
if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->RegionCombo))==-1){
yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),REGION_EMPTY_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
diff --git a/source/ubinstall-gtk-saving.c b/source/ubinstall-gtk-saving.c
index 9c02163..e4bc045 100644
--- a/source/ubinstall-gtk-saving.c
+++ b/source/ubinstall-gtk-saving.c
@@ -789,16 +789,19 @@ int yon_config_save(main_window *widgets){
}
char *parameter_string = yon_char_parsed_to_string(all_parameters,size," ");
- char *command = ubconfig_set_command_full(main_config.config_save_path,"",parameter_string);
- if (!system(command)){
- return 1;
+ if (!yon_char_is_empty(parameter_string)){
+ char *command = ubconfig_set_command_full(main_config.config_save_path,"",parameter_string);
+ if (!system(command)){
+ return 1;
+ } else return 0;
+
}
}
- return 0;
+ return 1;
}
void yon_config_restore(main_window *widgets){
on_config_global_load(NULL,widgets);
- system("ubconfig --source system remove [autoinstall] /");
+ system("ubconfig --source system remove [autoinstall]");
yon_config_save_simple(YON_CONFIG_LOCAL,"system");
}
\ No newline at end of file
diff --git a/source/ubinstall-gtk.c b/source/ubinstall-gtk.c
index d133411..ca9e521 100644
--- a/source/ubinstall-gtk.c
+++ b/source/ubinstall-gtk.c
@@ -2,8 +2,6 @@
config main_config;
-int cur_slide=0;
-
// //functions
void on_pacman_software_all_toggled(GtkWidget *, char *path, main_window *widgets){
@@ -147,7 +145,7 @@ void on_source_choose(GtkWidget *self){
GtkWidget *target_mode = g_object_get_data(G_OBJECT(self),"combo");
switch (gtk_combo_box_get_active(GTK_COMBO_BOX(target_mode))){
case 0: {
-
+
} break;
case 1:{
filechooser_window *dialog = yon_file_chooser_window_new(GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER);
@@ -214,6 +212,7 @@ source_window *yon_source_window_new(){
g_signal_connect(G_OBJECT(window->AddButton),"clicked",G_CALLBACK(on_source_add),window);
g_signal_connect(G_OBJECT(window->PathButton),"clicked",G_CALLBACK(on_source_choose),window);
g_signal_connect(G_OBJECT(window->AutoSwitch),"state-set",G_CALLBACK(yon_gtk_widget_set_sensitive_from_switch_inversed),window->AddBox);
+ g_signal_connect(G_OBJECT(window->AutoSwitch),"state-set",G_CALLBACK(yon_gtk_widget_set_sensitive_from_switch_inversed),window->TypeCombo);
g_signal_connect(G_OBJECT(window->AutoSwitch),"state-set",G_CALLBACK(yon_gtk_widget_set_sensitive_from_switch_inversed),window->AddButton);
g_signal_connect(G_OBJECT(window->AutoSwitch),"state-set",G_CALLBACK(yon_gtk_widget_set_sensitive_from_switch_inversed),window->PathButton);
g_signal_connect(G_OBJECT(window->AutoSwitch),"state-set",G_CALLBACK(yon_gtk_widget_set_sensitive_from_switch_inversed),window->PathEntry);
@@ -284,56 +283,13 @@ void config_init(){
main_config.config_save_path = NULL;
yon_packages_init();
main_config.network_types = g_hash_table_new(g_str_hash,g_str_equal);
+ main_config.cur_slide=0;
}
// void on_root_get_root(char *argline){
// yon_launch(argline);
// }
-// int yon_image_resize_from_container(GtkImage *target, GdkPixbuf *pixbuf_unscaled){
-// int width = gtk_widget_get_allocated_width((gtk_widget_get_parent(GTK_WIDGET(target))));
-// int height = gtk_widget_get_allocated_height((gtk_widget_get_parent(GTK_WIDGET(target))));
-//
-// int newImgWidthDef = (width <= 217) ? width : width - 30;
-// int newImgHeightDef = (height <= 120) ? height : height - 80;
-//
-// int originalWidth = gdk_pixbuf_get_width(pixbuf_unscaled);
-// int originalHeight = gdk_pixbuf_get_height(pixbuf_unscaled);
-// int newImgHeight = (int)(originalHeight / ((double) originalWidth / newImgWidthDef));
-//
-// if (newImgHeight > newImgHeightDef) {
-// newImgHeight = newImgHeightDef;
-// newImgWidthDef = (int)(originalWidth / ((double) originalHeight / newImgHeight));
-// }
-// int newImageWidth = (int)(originalWidth / ((double) originalHeight / newImgHeight));
-//
-// GdkPixbuf *scaledPixBuf = gdk_pixbuf_scale_simple(pixbuf_unscaled, newImageWidth, newImgHeight, GDK_INTERP_BILINEAR);
-// gtk_image_set_from_pixbuf(target, scaledPixBuf);
-//
-// g_object_unref(scaledPixBuf);
-//
-// return 1;
-// }
-
-// gboolean on_image_slide(void *data){
-// main_window *widgets = (main_window*)data;
-// int size;
-// config_str target = yon_char_parsed_new(&size,slide_repeat_path);
-// if (size)
-// yon_char_parsed_free(target,size);
-// gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->SlidesImage),(GdkPixbuf*)g_list_nth_data(widgets->slides_original,cur_slide));
-// // gtk_widget_queue_draw(widgets->SlidesImage);
-// if (cur_slideRemoveButton=yon_gtk_builder_get_widget(builder,"RemoveButton");
widgets->RegionSensitiveSwitch = yon_gtk_builder_get_widget(builder,"RegionSensitiveSwitch");
+ widgets->UserImage=yon_gtk_builder_get_widget(builder,"UserImage");
widgets->UserRootNameEntry=yon_gtk_builder_get_widget(builder,"UserRootNameEntry");
widgets->UserRootLoginEntry=yon_gtk_builder_get_widget(builder,"UserRootLoginEntry");
widgets->UserRootPasswordCombo=yon_gtk_builder_get_widget(builder,"UserRootPasswordCombo");
@@ -631,6 +588,7 @@ main_window *yon_main_window_complete(){
widgets->PacmanSoftwareChosenList = GTK_LIST_STORE(gtk_builder_get_object(builder,"PacmanSoftwareChosenList"));
widgets->PacmanSoftwareChosenCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"PacmanSoftwareChosenCell"));
+ widgets->StartupImage = yon_gtk_builder_get_widget(builder,"StartupImage");
widgets->StartupServicesTree = yon_gtk_builder_get_widget(builder,"StartupServicesTree");
widgets->StartupServicesAddButton = yon_gtk_builder_get_widget(builder,"StartupServicesAddButton");
widgets->StartupServicesEditButton = yon_gtk_builder_get_widget(builder,"StartupServicesEditButton");
@@ -638,6 +596,7 @@ main_window *yon_main_window_complete(){
widgets->StartupChosenCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"StartupChosenCell"));
widgets->StartupList = GTK_LIST_STORE(gtk_builder_get_object(builder,"StartupList"));
+ widgets->BootloaderImage = yon_gtk_builder_get_widget(builder,"BootloaderImage");
widgets->BootloadTimerSwitch = yon_gtk_builder_get_widget(builder,"BootloadTimerSwitch");
widgets->BootloadTimerSpin = yon_gtk_builder_get_widget(builder,"BootloadTimerSpin");
widgets->BootloadDefaultOSEntry = yon_gtk_builder_get_widget(builder,"BootloadDefaultOSEntry");
@@ -648,6 +607,7 @@ main_window *yon_main_window_complete(){
widgets->BootloadUserRemoveButton = yon_gtk_builder_get_widget(builder,"BootloadUserRemoveButton");
widgets->BootloadUsersList = GTK_LIST_STORE(gtk_builder_get_object(builder,"BootloadUsersList"));
+ widgets->NetworkImage = yon_gtk_builder_get_widget(builder,"NetworkImage");
widgets->NetworkDomainSwitch = yon_gtk_builder_get_widget(builder,"NetworkDomainSwitch");
widgets->NetworkDomainNameEntry = yon_gtk_builder_get_widget(builder,"NetworkDomainNameEntry");
widgets->NetworkDomainAdminEntry = yon_gtk_builder_get_widget(builder,"NetworkDomainAdminEntry");
@@ -687,7 +647,7 @@ main_window *yon_main_window_complete(){
g_signal_connect(G_OBJECT(widgets->GpartedSameButton),"clicked",G_CALLBACK(on_gparted_open),NULL);
g_signal_connect(G_OBJECT(widgets->GpartedNextInstallationButton),"clicked",G_CALLBACK(on_gparted_open),NULL);
- // g_signal_connect(G_OBJECT(widgets->MainWindow),"check-resize",G_CALLBACK(on_region_resized),widgets);
+ g_signal_connect(G_OBJECT(widgets->MainWindow),"check-resize",G_CALLBACK(on_region_resized),widgets);
g_signal_connect(G_OBJECT(widgets->NextButton),"clicked",G_CALLBACK(on_page_next_clicked),widgets);
g_signal_connect(G_OBJECT(widgets->BackButton),"clicked",G_CALLBACK(on_page_prev_clicked),widgets);
g_signal_connect(G_OBJECT(widgets->CancelInstallButton),"clicked",G_CALLBACK(on_page_cancel_clicked),widgets);
@@ -766,6 +726,7 @@ main_window *yon_main_window_complete(){
// g_signal_connect(G_OBJECT(widgets->AdvancedPartitionAddBox),"remove",G_CALLBACK(on_advanced_parts_removed),widgets);
g_signal_connect(G_OBJECT(widgets->StartScenarioButton),"clicked",G_CALLBACK(yon_quick_install),widgets);
g_signal_connect(G_OBJECT(widgets->SourceButton),"clicked",G_CALLBACK(on_source_clicked),widgets);
+ g_signal_connect(G_OBJECT(widgets->SkipInstallationButton),"clicked",G_CALLBACK(on_system_setup_pass),widgets);
{
@@ -802,8 +763,12 @@ main_window *yon_main_window_complete(){
{
int size;
config_str slides = yon_char_parsed_new(&size,slide_repeat_path);
- widgets->regions_original = gdk_pixbuf_new_from_resource(regions_path,NULL);
+ widgets->region_original = gdk_pixbuf_new_from_resource(regions_path,NULL);
widgets->keyboard_original = gdk_pixbuf_new_from_resource(keyboard_path,NULL);
+ widgets->user_original = gdk_pixbuf_new_from_resource(users_path,NULL);
+ widgets->startup_original = gdk_pixbuf_new_from_resource(startup_path,NULL);
+ widgets->bootloader_original = gdk_pixbuf_new_from_resource(bootloader_path,NULL);
+ widgets->network_original = gdk_pixbuf_new_from_resource(network_icon_path,NULL);
widgets->slides_original = NULL;
widgets->slides_original = g_list_prepend(widgets->slides_original,gdk_pixbuf_new_from_resource(slide_0_path,NULL));
for (int i=1;islides_original = g_list_reverse(widgets->slides_original);
yon_char_parsed_free(slides,size);
- int width = gdk_pixbuf_get_width(widgets->regions_original);
- int height = gdk_pixbuf_get_height(widgets->regions_original);
- widgets->region_height_mult = (float)height/width;
- GdkPixbuf *pix = gdk_pixbuf_scale_simple(widgets->regions_original,600,400,GDK_INTERP_BILINEAR);
- gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->RegionImage),pix);
- g_object_unref(pix);
- pix = gdk_pixbuf_scale_simple(widgets->keyboard_original,600,400,GDK_INTERP_BILINEAR);
- gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->KeyboardImage),pix);
- g_object_unref(pix);
- pix = gdk_pixbuf_scale_simple((GdkPixbuf*)g_list_nth_data(widgets->slides_original,0),600,400,GDK_INTERP_BILINEAR);
- gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->SlidesImage),pix);
- g_object_unref(pix);
}
gtk_builder_connect_signals(builder,NULL);
// yon_load_proceed(YON_CONFIG_LOCAL);
diff --git a/source/ubinstall-gtk.h b/source/ubinstall-gtk.h
index dd1ad1c..dd5f764 100755
--- a/source/ubinstall-gtk.h
+++ b/source/ubinstall-gtk.h
@@ -51,6 +51,10 @@
#define regions_path "/com/ublinux/images/map-time-zone.png"
#define keyboard_path "/com/ublinux/images/keyboard.png"
+#define users_path "/com/ublinux/images/map-time-zone.png"
+#define startup_path "/com/ublinux/images/keyboard.png"
+#define bootloader_path "/com/ublinux/images/map-time-zone.png"
+#define network_icon_path "/com/ublinux/images/keyboard.png"
#define licence_path "/usr/share/ublinux/agreement/EULA.txt"
@@ -320,8 +324,6 @@ layout && /description:/ {\
typedef char* string;
__attribute__((unused)) static \
string version_application;
-
-extern int cur_slide;
enum YON_PAGES {
YON_PAGE_WELCOME = 0,
@@ -387,6 +389,7 @@ typedef struct {
char *config_load_path;
char *config_save_path;
+ unsigned int cur_slide;
} config;
extern config main_config;
@@ -454,6 +457,7 @@ typedef struct {
GtkWidget *InstallationWindowsRadio;
GtkWidget *InstallationOptionsRadio;
+ GtkWidget *UserImage;
GtkWidget *UserRootNameEntry;
GtkWidget *UserRootLoginEntry;
GtkWidget *UserRootPasswordCombo;
@@ -564,8 +568,12 @@ typedef struct {
GtkTreeModel *LanguagesFilter;
GtkTreeModel *LayoutsFilter;
- GdkPixbuf *regions_original;
+ GdkPixbuf *region_original;
GdkPixbuf *keyboard_original;
+ GdkPixbuf *user_original;
+ GdkPixbuf *startup_original;
+ GdkPixbuf *bootloader_original;
+ GdkPixbuf *network_original;
GList *slides_original;
float region_height_mult;
@@ -608,6 +616,7 @@ typedef struct {
GtkListStore *PacmanSoftwareChosenList;
GtkCellRenderer *PacmanSoftwareChosenCell;
+ GtkWidget *StartupImage;
GtkWidget *StartupServicesTree;
GtkWidget *StartupServicesAddButton;
GtkWidget *StartupServicesEditButton;
@@ -615,6 +624,7 @@ typedef struct {
GtkCellRenderer *StartupChosenCell;
GtkListStore *StartupList;
+ GtkWidget *BootloaderImage;
GtkWidget *BootloadTimerSwitch;
GtkWidget *BootloadTimerSpin;
GtkWidget *BootloadDefaultOSEntry;
@@ -625,6 +635,7 @@ typedef struct {
GtkWidget *BootloadUserTree;
GtkListStore *BootloadUsersList;
+ GtkWidget *NetworkImage;
GtkWidget *NetworkDomainSwitch;
GtkWidget *NetworkDomainNameEntry;
GtkWidget *NetworkDomainAdminEntry;
@@ -1104,4 +1115,6 @@ void on_source_remove(GtkWidget *,source_element *element);
void on_source_add(GtkWidget *,source_window *window);
void yon_source_update(source_window *window);
void yon_source_element_add(char *key,void*,source_window *window);
-source_element *yon_source_element_new();
\ No newline at end of file
+source_element *yon_source_element_new();
+void on_system_setup_pass(GtkWidget *, main_window *widgets);
+void yon_resize_images_update(main_window *widgets);
\ No newline at end of file
diff --git a/ubinstall-gtk-source.glade b/ubinstall-gtk-source.glade
index fe32aa9..6f95c26 100644
--- a/ubinstall-gtk-source.glade
+++ b/ubinstall-gtk-source.glade
@@ -92,6 +92,7 @@
False
@@ -122,6 +123,7 @@