我有一个包含许多小部件的包,可以被许多RCP应用程序使用。我想为这些小部件提供一组标准的CSS样式,这些样式将打包在小部件包中。
通常情况下,这些标准样式应该没问题,但我希望能够在应用程序包中定义新样式,它只覆盖一两种样式,但其余样式保持不变。
这可能吗?到目前为止我看到的是,当我的应用程序包定义了一个新的主题扩展时,所有其他样式都被禁用。
答案 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");