Re: How to change GTK+3 label color dynamically
- From: Rúben Rodrigues <ruben_gr live com pt>
- To: Tilo Villwock <codemusings gmail com>, "gtk-app-devel-list gnome org" <gtk-app-devel-list gnome org>
- Subject: Re: How to change GTK+3 label color dynamically
- Date: Thu, 16 Mar 2017 13:50:52 +0000
I get this error:
gtk-CRITICAL **: gtk_style_context_add_provider_for_screen: assertion
'GDK_IS_SCREEN (screen)' failed
COde:
gtk_style_context_add_provider_for_screen(gtk_widget_get_style_context(GTK_WIDGET(gtk_builder_get_object(builder,"window_Main"))),
GTK_STYLE_PROVIDER (css_provider),
G_MAXUINT);
On 16-03-2017 13:19, Tilo Villwock wrote:
Am Donnerstag, den 16.03.2017, 12:49 +0000 schrieb Rúben Rodrigues:
I provide my code in previous emails.
This is my code now:
if(css_provider == NULL){
css_provider = gtk_css_provider_new();
gtk_style_context_add_provider
(gtk_widget_get_style_context(GTK_WIDGET(gtk_builder_get_object(build
er,"window_Main"))),
GTK_STYLE_PROVIDER (css_provider),
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
g_object_unref(css_provider);
}
gtk_css_provider_load_from_data (css_provider,"#label_Sensors {
color: red; }",-1,NULL);
My apologies. You are right. I missed the earlier one. However, quoting
the documentation for gtk_style_context_add_provider:
"Note that a style provider added by this function only affects the
style of the widget to which context belongs. If you want to affect the
style of all widgets, use gtk_style_context_add_provider_for_screen()."
I'm guessing `window_Main` is a window? So either you attach the
provider to all the labels you want to change or you use
gtk_style_context_add_provider_for_screen.
Hope that helps.
--Tilo
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]