Alterar a cor do texto do rótulo em GTK em C
Pergunta
Estou usando Gtk 2.0.
Estou tentando alterar a cor do texto/cor da fonte do rótulo.
Quão difícil pode ser?Estou apenas tentando coisas como gtk_widget_modify_text etc sem sucesso.Quero seguir o caminho "Android" ou "Qt", adicionando, digamos, um arquivo de recurso simples com todos os estilos.Onde e como (.rc?) devo adicionar este arquivo?Como analisar este arquivo?
Já escrevi meu App com muitos widgets e não quero alterar/refazer todos eles.Alguém pode me mostrar um exemplo simples?
Até tentei um exemplo de Pango da web, mas o problema é que o texto da minha etiqueta fica mudando e, portanto, não consegui acompanhar.Por favor ajude.Aqui está o que tentei até agora e sem sucesso.
GtkWidget *label1;
label1= gtk_label_new(" ");
gtk_box_pack_start (GTK_BOX(box1), label1,TRUE,TRUE, 0);
GdkColor color;
gdk_color_parse ("white", &color);
gtk_widget_modify_text ( GTK_WIDGET(label1), GTK_STATE_NORMAL, &color);
gchar *stringMarkupText = "<span foreground=\"white\"> <b>Bold</b></span>"; //white color and bold--> the length of this text is fixed by number of spaces. I need to call a function that would set this text on a g_signal_connect so do not want to fix spaces!!
gchar *stringPlainText;
PangoAttrList *attrList;
pango_parse_markup(stringMarkupText, -1, 0, &attrList, &stringPlainText, NULL, NULL);
gtk_label_set_attributes(GTK_LABEL(label1), attrList);
Solução
Do meu ponto de vista, você pode usar o arquivo de recursos GTK (arquivo rc) neste caso.
Você pode usar a função gtk_rc_parse para carregar seu arquivo rc.
void gtk_rc_parse(const gchar *filename);