Fixed freeze

pull/33/head
Ivan Dmitrievich Yartsev 10 months ago
parent a4634ea57f
commit d870c9a499

@ -87,18 +87,27 @@ void yon_ubl_status_box_render_thread(char *text, BACKGROUND_IMAGE_TYPE type){
g_idle_add((GSourceFunc)_yon_ubl_status_box_render_thread,data);
}
gboolean _yon_ubl_status_highlight_incorrect(GtkWidget *widget){
gboolean _yon_ubl_status_highlight_incorrect_start(GtkWidget *widget){
gtk_style_context_add_class(gtk_widget_get_style_context(widget),"errorBox");
sleep(5);
return G_SOURCE_REMOVE;
}
gboolean _yon_ubl_status_highlight_incorrect_stop(GtkWidget *widget){
gtk_style_context_remove_class(gtk_widget_get_style_context(widget),"errorBox");
return G_SOURCE_REMOVE;
}
gboolean _yon_ubl_status_highlight_incorrect(GtkWidget *widget){
g_idle_add((GSourceFunc)_yon_ubl_status_highlight_incorrect_start,widget);
sleep(5);
g_idle_add((GSourceFunc)_yon_ubl_status_highlight_incorrect_stop,widget);
}
void yon_ubl_status_highlight_incorrect(GtkWidget *widget){
g_idle_add((GSourceFunc)_yon_ubl_status_highlight_incorrect,widget);
g_thread_new("error_highlight",(GThreadFunc)_yon_ubl_status_highlight_incorrect,widget);
}
gboolean _yon_ubl_status_list_store_highlight_incorrect(GtkWidget **widget_pack){
gboolean _yon_ubl_status_list_store_highlight_incorrect_start(GtkWidget **widget_pack){
GtkListStore *list = (GtkListStore*)widget_pack[0];
GtkTreeIter *iter = (GtkTreeIter*)widget_pack[1];
GdkRGBA rgba,rgba2;
@ -111,16 +120,27 @@ gboolean _yon_ubl_status_list_store_highlight_incorrect(GtkWidget **widget_pack)
rgba2.green=0;
rgba2.red=0;
gtk_list_store_set(list,iter,1,gdk_rgba_to_string(&rgba2),2,gdk_rgba_to_string(&rgba),-1);
sleep(5);
return G_SOURCE_REMOVE;
}
gboolean _yon_ubl_status_list_store_highlight_incorrect_stop(GtkWidget **widget_pack){
GtkListStore *list = (GtkListStore*)widget_pack[0];
GtkTreeIter *iter = (GtkTreeIter*)widget_pack[1];
gtk_list_store_set(list,iter,1,NULL,2,NULL,-1);
return G_SOURCE_REMOVE;
}
void _yon_ubl_status_list_store_highlight_incorrect(GtkWidget **widget_pack){
g_idle_add((GSourceFunc)_yon_ubl_status_highlight_incorrect_stop,widget_pack);
sleep(5);
g_idle_add((GSourceFunc)_yon_ubl_status_highlight_incorrect_stop,widget_pack);
}
void yon_ubl_status_list_store_highlight_incorrect(GtkListStore *list, GtkTreeIter *iter){
GtkWidget **pack = malloc(sizeof(GtkWidget *)*2);
pack[0]=(GtkWidget*)list;
pack[1]=(GtkWidget*)iter;
g_idle_add((GSourceFunc)_yon_ubl_status_list_store_highlight_incorrect,pack);
g_thread_new("error_highlight",(GThreadFunc)_yon_ubl_status_list_store_highlight_incorrect,pack);
}
struct temp_statusbox {

Loading…
Cancel
Save