|
|
|
|
@ -847,14 +847,9 @@ gboolean on_image_slide(void *data){
|
|
|
|
|
config_str target = yon_char_parsed_new(&size,slide_repeat_path);
|
|
|
|
|
if (size)
|
|
|
|
|
yon_char_parsed_free(target,size);
|
|
|
|
|
// GtkWidget *parent = gtk_widget_get_parent(widgets->SlidesImage);
|
|
|
|
|
// gtk_widget_destroy(widgets->SlidesImage);
|
|
|
|
|
// widgets->SlidesImage = gtk_image_new();
|
|
|
|
|
// gtk_container_add(GTK_CONTAINER(parent),widgets->SlidesImage);
|
|
|
|
|
// gtk_widget_show(widgets->SlidesImage);
|
|
|
|
|
gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->SlidesImage),widgets->slides_original[cur_slide]);
|
|
|
|
|
gtk_widget_queue_draw(widgets->SlidesImage);
|
|
|
|
|
if (cur_slide<size-1) cur_slide++; else cur_slide=0;
|
|
|
|
|
if (cur_slide<size-1) cur_slide++; else cur_slide=1;
|
|
|
|
|
return 1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ -879,7 +874,6 @@ void *on_config_save(void *data){
|
|
|
|
|
yon_char_parsed_free(parameters,size);
|
|
|
|
|
if (system(command)){
|
|
|
|
|
gtk_notebook_set_current_page(GTK_NOTEBOOK(widgets->Notebook),YON_PAGE_INSTALL_ERROR);
|
|
|
|
|
// yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),INSTALLATION_ERROR,5,BACKGROUND_IMAGE_FAIL_TYPE);
|
|
|
|
|
};
|
|
|
|
|
free(command);
|
|
|
|
|
main_config.install_thread=NULL;
|
|
|
|
|
@ -895,48 +889,50 @@ void *on_config_save(void *data){
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
gboolean yon_installation_progress_update(void *data);
|
|
|
|
|
gboolean yon_installation_progress_update(void *data){
|
|
|
|
|
gboolean yon_installation_progress_update(void *data) {
|
|
|
|
|
main_window *widgets = (main_window*)data;
|
|
|
|
|
// while (gtk_events_pending()) gtk_main_iteration();
|
|
|
|
|
int size;
|
|
|
|
|
while (main_config.log_progress_buzy){
|
|
|
|
|
// while (gtk_events_pending()) gtk_main_iteration();
|
|
|
|
|
};
|
|
|
|
|
main_config.log_progress_buzy=1;
|
|
|
|
|
config_str text = yon_file_open(progress_path,&size);
|
|
|
|
|
main_config.log_progress_buzy=0;
|
|
|
|
|
if (size){
|
|
|
|
|
if (!yon_char_is_empty(text[size-1])&&text[size-1][0]=='('){
|
|
|
|
|
char * current_copy = yon_char_new(text[size-1]);
|
|
|
|
|
char *percentage = yon_char_divide_search(current_copy,")",-1);
|
|
|
|
|
yon_char_parsed_free(text,size);
|
|
|
|
|
free(yon_char_divide(current_copy,0));
|
|
|
|
|
free(yon_char_divide(percentage,0));
|
|
|
|
|
if (strcmp(percentage,"#pb")){
|
|
|
|
|
double fraction = atof(percentage);
|
|
|
|
|
gtk_label_set_text(GTK_LABEL(widgets->InstallationLabel),current_copy);
|
|
|
|
|
gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(widgets->InstallationProgress),fraction/100);
|
|
|
|
|
gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(widgets->PackageInstallationProgress),0);
|
|
|
|
|
gtk_label_set_text(GTK_LABEL(widgets->PackageInstallationLabel),"");
|
|
|
|
|
|
|
|
|
|
while (main_config.log_progress_buzy) {
|
|
|
|
|
while (gtk_events_pending()) gtk_main_iteration();
|
|
|
|
|
}
|
|
|
|
|
main_config.log_progress_buzy = 1;
|
|
|
|
|
config_str text = yon_file_open(progress_path, &size);
|
|
|
|
|
main_config.log_progress_buzy = 0;
|
|
|
|
|
|
|
|
|
|
if (size) {
|
|
|
|
|
if (!yon_char_is_empty(text[size-1]) && text[size-1][0] == '(') {
|
|
|
|
|
char *current_copy = yon_char_new(text[size-1]);
|
|
|
|
|
char *percentage = yon_char_divide_search(current_copy, ")", -1);
|
|
|
|
|
yon_char_parsed_free(text, size);
|
|
|
|
|
|
|
|
|
|
if (strcmp(percentage, "#pb")) {
|
|
|
|
|
double fraction = atof(percentage);
|
|
|
|
|
gtk_label_set_text(GTK_LABEL(widgets->InstallationLabel), current_copy);
|
|
|
|
|
gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(widgets->InstallationProgress), fraction / 100);
|
|
|
|
|
gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(widgets->PackageInstallationProgress), 0);
|
|
|
|
|
gtk_label_set_text(GTK_LABEL(widgets->PackageInstallationLabel), "");
|
|
|
|
|
} else {
|
|
|
|
|
gtk_widget_show(gtk_widget_get_parent(widgets->PackageInstallationProgress));
|
|
|
|
|
|
|
|
|
|
int size;
|
|
|
|
|
config_str parsed = yon_char_parse(current_copy,&size," ");
|
|
|
|
|
double fraction = atof(parsed[2])/100;
|
|
|
|
|
gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(widgets->PackageInstallationProgress),fraction);
|
|
|
|
|
gtk_label_set_text(GTK_LABEL(widgets->PackageInstallationLabel),yon_char_parsed_to_string(parsed,size," "));
|
|
|
|
|
yon_char_parsed_free(parsed,size);
|
|
|
|
|
|
|
|
|
|
config_str parsed = yon_char_parse(current_copy, &size, " ");
|
|
|
|
|
if (size >= 3) {
|
|
|
|
|
double fraction = atof(parsed[2]) / 100;
|
|
|
|
|
gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(widgets->PackageInstallationProgress), fraction);
|
|
|
|
|
gtk_label_set_text(GTK_LABEL(widgets->PackageInstallationLabel), yon_char_parsed_to_string(parsed, size, " "));
|
|
|
|
|
}
|
|
|
|
|
yon_char_parsed_free(parsed, size);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
free(current_copy);
|
|
|
|
|
free(percentage);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (main_config.install_thread){
|
|
|
|
|
|
|
|
|
|
if (main_config.install_thread) {
|
|
|
|
|
return 1;
|
|
|
|
|
} else {
|
|
|
|
|
gtk_label_set_text(GTK_LABEL(widgets->PackageInstallationLabel),"");
|
|
|
|
|
gtk_label_set_text(GTK_LABEL(widgets->PackageInstallationLabel), "");
|
|
|
|
|
return 0;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
@ -2203,7 +2199,6 @@ main_window *yon_main_window_complete(){
|
|
|
|
|
g_signal_connect(G_OBJECT(widgets->HostnameSensitiveCheck),"toggled",G_CALLBACK(on_autohostname_sensitiveness_check),widgets);
|
|
|
|
|
g_signal_connect(G_OBJECT(widgets->AutoHostnameCheck),"toggled",G_CALLBACK(on_autohostname_check),widgets);
|
|
|
|
|
g_signal_connect(G_OBJECT(widgets->HotnameEntry),"changed",G_CALLBACK(on_hostname_entry_changed),widgets);
|
|
|
|
|
g_signal_connect(G_OBJECT(widgets->InstallationToggle),"toggled",G_CALLBACK(on_toggle_block),widgets);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
gtk_tree_model_filter_set_visible_column(GTK_TREE_MODEL_FILTER(widgets->LanguagesFilter),0);
|
|
|
|
|
|