如何从eclipse中删除一般类别下的bookmarkview?

时间:2014-12-02 03:51:53

标签: java eclipse-plugin eclipse-pde

嗨在我的观点中,我不希望用户看到默认的书签视图,因为我正在显示具有类似功能的自定义视图。 我该如何删除它?

我试图通过在插件的plugin.xml中添加活动并在激活器中禁用它来使用活动来隐藏它,但这没有帮助。

                <activity
                     id="com.fd.vplus.core.DefBookmarkViewactivity"
                     name="Default Bookmark view">
               </activity>
               <activityPatternBinding
                     activityId="com.fd.vplus.core.DefBookmarkViewactivity"
                     isEqualityPattern="false"
                     pattern="org.eclipse.ui/org.eclipse.ui.views.BookmarkView">
               </activityPatternBinding>

我试图将我的视图的ID更改为默认书签视图的ID,以便它覆盖它但是也没有帮助。虽然这种方法有一段时间显示了我的视图而不是默认但现在也无法正常工作。

编辑(插件激活器中的活动代码):

             IWorkbenchActivitySupport workbenchActivitySupport = PlatformUI.getWorkbench().getActivitySupport();
     //Enabling the activity
     IActivityManager activityManager = workbenchActivitySupport.getActivityManager();
     Set<String> enabledActivities = new HashSet<String>(); 
     String id = "com.fd.vplus.core.DefBookmarkViewActivity"; 
     if (activityManager.getActivity(id).isDefined()) { 
         enabledActivities.add(id);   
      } 
     workbenchActivitySupport.setEnabledActivityIds(enabledActivities);

1 个答案:

答案 0 :(得分:1)

书签视图的拥有插件是org.eclipse.ui.ide,您还应该为此匹配使用相等模式:

 <activityPatternBinding
         activityId="com.fd.vplus.core.DefBookmarkViewactivity"
         isEqualityPattern="true"
         pattern="org.eclipse.ui.ide/org.eclipse.ui.views.BookmarkView">
 </activityPatternBinding>