所有GtkTextView的单色字体,带有GTK + 3.20的CSS文件

时间:2016-05-10 09:23:05

标签: css c gtk glade

我使用GTK +在C中开展项目。 该项目仅适用于GTK + 3.6。

我想将所有GTKTextView设置为等宽字体。在最后一次将GTK更新到GTK3.20之前,我的CSS表格与以下内容一致:

GtkTextView {
  font: Mono
}

现在,它已不再适用了。但是,林间空地有一个属性:     <property name="monospace">True</property> 但是这个属性存在,因为GTK 3.16和debian stable在GTK3.14上。当然我希望它是便携式的。

我的问题是:我怎么能这样做?如何将所有gtkTextView设置为等宽字体?

1 个答案:

答案 0 :(得分:3)

GTK 3.20改变了CSS选择器的工作方式。

Pre-GTK 3.20,这是正确的:

GtkTextView {
    font-family: monospace;
}

从GTK 3.20开始,这是正确的:

textview {
    font-family: monospace;
}

如果您对某个特定平台不确定,可以向GTK Inspector查看需要哪个选择器:使用GTK_DEBUG=interactive运行您的应用,然后按 Ctrl + + d

值得注意的是,GTK 3.20之前的CSS选择器是实验性的,并不打算成为稳定的API。

如果您必须同时支持这两种表单,那么您最好的选择是制作两个样式表并加载其中一个,具体取决于GTK_MAJOR_VERSIONGTK_MINOR_VERSION的值。