默认的gtk css配色方案

时间:2016-01-27 18:40:52

标签: css gtk

GtkStyle已被弃用。 我想用GtkStyleContext代替(gtk_style_context_lookup_color)来找到主题颜色。

我成功替换了:

    color = style->bg [GTK_STATE_SELECTED];

使用:

    gtk_style_context_lookup_color (context, "theme_selected_bg_color", &color)

但我不知道要用什么颜色名来代替:

    color = style->dark [GTK_STATE_NORMAL];

我需要这些颜色将它们转移到用cairo创建的vumeter:

gdk_cairo_set_source_rgba (cr, &color);

2 个答案:

答案 0 :(得分:0)

据我了解,GTK不允许您创建尊重当前主题的自定义小部件,因此

  1. 为整个应用程序编写自定义css,即从外部禁用主题
  2. 使用调用gtk_render_background的黑客,直到你在辅助cairo sufrace中获得有用的东西。请参阅我对自己问题的回答:https://stackoverflow.com/a/44063175/877329
  3. 选择其他工具包,或者为了成为反叛者而坚持使用Gtk + 2.

答案 1 :(得分:0)

据我所知,

颜色名称列表不是GTK的一部分,而是gtk主题的属性。这些是gtk 3.22的默认gnome主题adwaita的颜色名称: https://gitlab.gnome.org/GNOME/gtk/-/blob/gtk-3-22/gtk/theme/Adwaita/_colors-public.scss

我要内联复制名称:

  • theme_fg_color
  • theme_text_color
  • theme_bg_color
  • theme_base_color
  • theme_selected_bg_color
  • theme_selected_fg_color
  • insensitive_bg_color
  • insensitive_fg_color
  • insensitive_base_color
  • theme_unfocused_fg_color
  • theme_unfocused_text_color
  • theme_unfocused_bg_color
  • theme_unfocused_base_color
  • theme_unfocused_selected_bg_color
  • theme_unfocused_selected_fg_color
  • unfocused_insensitive_color
  • 边界
  • unfocused_borders
  • warning_color
  • error_color
  • success_color
相关问题