Автор Тема: GTK+ -> GtkEntry стилизация виджета (будь он не ладен)  (Прочитано 747 раз)

Оффлайн Zanzarah

  • Участник
  • *
  • Сообщений: 62
Доброго времени суток.
Дамы и господа, леди и джентельмены, может кто-нибудь подскажет или направит куда (лишь бы не послал)...

есть виджет ввода:
GtkWidget* myEntry = gtk_entry_new();
g_signal_connect(myEntry,"key-release-event",G_CALLBACK(check),NULL);

Нужно сделать валидацию, и изменить фон/цвет если введенное значение не соответствует. Пробовал так(далее функция check):
GtkStyleContext *myStyle = gtk_widget_get_style_context(GTK_WIDGET(entryDate));
GdkRGBA fuck = { 1.0, 0.0, 0.0, 0.0 };
g_object_set(GTK_WIDGET(entryDate), GTK_STYLE_PROPERTY_BACKGROUND_COLOR, fuck);

и так:

GtkStyleContext *myStyle = gtk_widget_get_style_context(entryDate);
GtkCssProvider *myCss = gtk_css_provider_new();

gtk_css_provider_load_from_path(myCss,"entryDate.css", NULL);
gtk_style_context_add_provider(myStyle,GTK_STYLE_PROVIDER(myCss), GTK_STYLE_PROVIDER_PRIORITY_USER);
entryDate.css:
.entry {
  background: red;
  border-width: 3px;
  border-color: red;
}
но эти приемы, как я понимаю, требуют отрисосывать виджеты вновь, а сделать иначе возможно?
"Для кого и командная строка дружелюбный интерфейс" (С)