2017-08-29 53 views
1

我有一个包含许多RCP应用程序可以使用的小部件的包。我想为这些小部件提供一组标准的CSS样式,这些样式将打包在小部件包中。如何部分修改eclipse中的CSS主题?

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

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

回答

0

我找到了解决办法上http://www.vogella.com/tutorials/Eclipse4CSS/article.html

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

在我的情况是这样的:

<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");