如何在eclipse中部分修改CSS主题?

时间:2017-08-29 12:12:52

标签: css eclipse eclipse-rcp

我有一个包含许多小部件的包,可以被许多RCP应用程序使用。我想为这些小部件提供一组标准的CSS样式,这些样式将打包在小部件包中。

通常情况下,这些标准样式应该没问题,但我希望能够在应用程序包中定义新样式,它只覆盖一两种样式,但其余样式保持不变。

这可能吗?到目前为止我看到的是,当我的应用程序包定义了一个新的主题扩展时,所有其他样式都被禁用。

1 个答案:

答案 0 :(得分:0)

我在http://www.vogella.com/tutorials/Eclipse4CSS/article.html

上找到了解决方案

plugin.xml中向themeAssociation扩展点添加org.eclipse.e4.ui.css.swt.theme项。将关联设置为另一个插件中定义的主题。

就我而言,它看起来像这样:

   <extension
         point="org.eclipse.e4.ui.css.swt.theme">
      <themeAssociation
            colorAndFontId="org.eclipse.ui.ide.systemDefault"
            themeId="com.acme.indu40.rcp.core.theme">
      </themeAssociation>
      <theme
            basestylesheeturi="default.css"
            id="special.theme"
            label="Special Theme">
      </theme>
   </extension>

主要主题在com.acme.indu40.rcp.core中定义,并在本地插件中与default.css合并。

可能更好的方法是在样式表中导入样式:

@import url("platform:/plugin/com.acme.indu40.rcp.core/default.css");