Fixed filtering after updating

pull/12/head
parent f8ec5d9e6a
commit 8f5aa4a04a

@ -15,13 +15,6 @@ void on_config_local_load(GtkWidget *self,main_window *widgets){
if (!main_config.update_thread_active){ if (!main_config.update_thread_active){
main_config.update_thread_active=1; main_config.update_thread_active=1;
if (self){}; if (self){};
g_signal_handlers_block_by_func(G_OBJECT(widgets->ServiceTypeCombo),on_type_changed,widgets);
g_signal_handlers_block_by_func(G_OBJECT(widgets->ServiceSourceCombo),on_source_changed,widgets);
gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->ServiceTypeCombo),0);
gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->ServiceSourceCombo),0);
g_signal_handlers_unblock_by_func(G_OBJECT(widgets->ServiceTypeCombo),on_type_changed,widgets);
g_signal_handlers_unblock_by_func(G_OBJECT(widgets->ServiceSourceCombo),on_source_changed,widgets);
yon_load_proceed(YON_CONFIG_LOCAL); yon_load_proceed(YON_CONFIG_LOCAL);
yon_ubl_status_box_render(LIST_LOAD_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE); yon_ubl_status_box_render(LIST_LOAD_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE);
g_thread_new("",(GThreadFunc)yon_interface_update,widgets); g_thread_new("",(GThreadFunc)yon_interface_update,widgets);
@ -33,13 +26,6 @@ void on_config_global_load(GtkWidget *self,main_window *widgets){
if (!main_config.update_thread_active){ if (!main_config.update_thread_active){
main_config.update_thread_active=1; main_config.update_thread_active=1;
if (self){}; if (self){};
g_signal_handlers_block_by_func(G_OBJECT(widgets->ServiceTypeCombo),on_type_changed,widgets);
g_signal_handlers_block_by_func(G_OBJECT(widgets->ServiceSourceCombo),on_source_changed,widgets);
gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->ServiceTypeCombo),0);
gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->ServiceSourceCombo),0);
g_signal_handlers_unblock_by_func(G_OBJECT(widgets->ServiceTypeCombo),on_type_changed,widgets);
g_signal_handlers_unblock_by_func(G_OBJECT(widgets->ServiceSourceCombo),on_source_changed,widgets);
yon_load_proceed(YON_CONFIG_GLOBAL); yon_load_proceed(YON_CONFIG_GLOBAL);
yon_ubl_status_box_render(LIST_LOAD_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE); yon_ubl_status_box_render(LIST_LOAD_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE);
g_thread_new("",(GThreadFunc)yon_interface_update,widgets); g_thread_new("",(GThreadFunc)yon_interface_update,widgets);
@ -402,9 +388,35 @@ void on_update(GtkWidget *self,main_window *widgets){
} }
} }
void *update_delay(void*){ void *update_delay(main_window *widgets){
sleep(1); sleep(1);
main_config.update_thread_active=0; main_config.update_thread_active=0;
switch (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->ServiceTypeCombo))){
case 0: gtk_tree_view_set_model(GTK_TREE_VIEW(widgets->MainTree),GTK_TREE_MODEL(widgets->liststore2));
break;
case 1: gtk_tree_model_filter_refilter(GTK_TREE_MODEL_FILTER(main_config.ServiceFilter));
gtk_tree_view_set_model(GTK_TREE_VIEW(widgets->MainTree),main_config.ServiceFilter);
break;
case 2: gtk_tree_model_filter_refilter(GTK_TREE_MODEL_FILTER(main_config.SocketFilter));
gtk_tree_view_set_model(GTK_TREE_VIEW(widgets->MainTree),main_config.SocketFilter);
break;
case 3: gtk_tree_model_filter_refilter(GTK_TREE_MODEL_FILTER(main_config.AutolaunchFilter));
gtk_tree_view_set_model(GTK_TREE_VIEW(widgets->MainTree),main_config.AutolaunchFilter);
break;
case 4: gtk_tree_model_filter_refilter(GTK_TREE_MODEL_FILTER(main_config.StoppedFilter));
gtk_tree_view_set_model(GTK_TREE_VIEW(widgets->MainTree),main_config.StoppedFilter);
break;
case 5: gtk_tree_model_filter_refilter(GTK_TREE_MODEL_FILTER(main_config.BlockedFilter));
gtk_tree_view_set_model(GTK_TREE_VIEW(widgets->MainTree),main_config.BlockedFilter);
break;
}
textdomain(template_ui_LocaleName);
if (main_config.load_mode){
yon_ubl_status_box_render(LOCAL_LOAD_SUCCESS_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE);
} else {
yon_ubl_status_box_render(GLOBAL_LOAD_SUCCESS_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE);
}
textdomain(LocaleName);
return NULL; return NULL;
} }
@ -479,21 +491,13 @@ void *yon_interface_update(main_window *widgets){
} }
free(name_parsed); free(name_parsed);
} }
textdomain(template_ui_LocaleName); g_thread_new("",(GThreadFunc)update_delay,widgets);
if (main_config.load_mode){ // int type_active=0;
yon_ubl_status_box_render(LOCAL_LOAD_SUCCESS_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE); // if (!(type_active=gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->ServiceTypeCombo)))){
} else { // gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->ServiceTypeCombo),type_active);
yon_ubl_status_box_render(GLOBAL_LOAD_SUCCESS_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE); // } if (!(type_active=gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->ServiceTypeCombo)))){
} // gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->ServiceTypeCombo),type_active);
textdomain(LocaleName); // }
gtk_tree_view_set_model(GTK_TREE_VIEW(widgets->MainTree),GTK_TREE_MODEL(widgets->liststore2));
g_thread_new("",(GThreadFunc)update_delay,NULL);
int type_active=0;
if (!(type_active=gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->ServiceTypeCombo)))){
gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->ServiceTypeCombo),type_active);
} if (!(type_active=gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->ServiceTypeCombo)))){
gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->ServiceTypeCombo),type_active);
}
return NULL; return NULL;
} }

@ -233,7 +233,7 @@ void yon_main_window_complete(main_window *widgets);
void on_log_show(); void on_log_show();
void *update_delay(void*); void *update_delay(main_window *widgets);
gboolean on_service_filter(GtkTreeModel *model, GtkTreeIter *iter,void *data); gboolean on_service_filter(GtkTreeModel *model, GtkTreeIter *iter,void *data);

Loading…
Cancel
Save