如何让我的 GTK+3 主题在某些应用程序中看起来有所不同?

如何让我的 GTK+3 主题在某些应用程序中看起来有所不同?

如果我希望我正在编写的 GTK+3 主题在某些应用程序中的某些 UI 元素的主题与大多数应用程序略有不同,我该怎么做?

例如,我可能有一个 GTK+3 主题,它在大多数应用程序中指定圆形按钮,但在计算器(gcalctool)中,我想要方形按钮。

如何找到如何在我的主题的 CSS 文件中引用这些应用程序的 UI 元素?

答案1

似乎您需要深入研究不同应用程序的源文件,看看他们在代码中(可能在顶层代码中)如何调用不同的 UI 元素。

对于该gcalctool示例,相关文件似乎是gcalctool.c,其中可以看到以下一行:

static MathWindow *window;

因此,要引用其 UI 元素(在本例中为按钮),主题 CSS 中的一部分应如下所示:

MathWindow .button {
  /* Properties to modify here for buttons in gcalctool */
}

由于每个应用程序都有自己的代码,因此主题创建者显然需要检查他们想要主题化的应用程序的源代码,并找到要在 CSS 中引用的相关 UI 元素名称。

相关内容