如何从某种资源类型隐藏属性页面

问题描述 投票:0回答:1

我的应用程序项目包含不同类型的资源。对于某些IFolder并非项目中的所有文件夹,我需要在右键单击属性上设置属性页。我的问题是,即使属性测试器返回false,也会显示所有文件夹的此页面。

plugin.xml中

<extension
     point="org.eclipse.ui.propertyPages">
  <page
        class="com.my.ui.properties.PropertiesPage"
        id="com.my.ui.properties.Properties"
        name="page">
     <enabledWhen>
        <adapt
              type="org.eclipse.core.resources.IFolder">
           <test
                 property="com.my.ui.propertyTester.supperFolder">
           </test>
        </adapt></enabledWhen>
 </page>

 <extension
     point="org.eclipse.core.expressions.propertyTesters">
  <propertyTester
        class="com.my.ui.properties.FolderTester"
        id="com.my.ui.propertyTester"
        namespace="com.my.ui.propertyTester"
        properties="supperFolder"
        type="org.eclipse.core.resources.IResource">
  </propertyTester>

public class FolderTester extends PropertyTester {

@Override
public boolean test(Object receiver, String property, Object[] args, Object expectedValue) {
    if ("supperFolder".equals(property) && receiver instanceof IFolder) {
        IFolder folder = (IFolder) receiver;
        if (IWResourceManager.getInstance().isIWResource(folder)) {
            ..
            ..
                return true;
            }
        }
    }
    return false;
}

那我错过了什么?

eclipse-plugin eclipse-rcp
1个回答
0
投票

经过几个小时的调试,我终于找到了错误,我填写好像我需要分享它,万一有人有同样的问题...所以...在属性测试器扩展点,测试人员“id”和“命名空间”有相同的价值,那是在创造某种冲突。

© www.soinside.com 2019 - 2024. All rights reserved.