Summary: | [RCP] RCP Plugin refactoring to exclude default views/perspective | ||
---|---|---|---|
Product: | [Eclipse Project] Platform | Reporter: | paul wuethrich <paul.wuethrich> |
Component: | UI | Assignee: | Boris Bokowski <bokowski> |
Status: | RESOLVED WORKSFORME | QA Contact: | |
Severity: | enhancement | ||
Priority: | P3 | CC: | David |
Version: | 3.0 | Keywords: | readme |
Target Milestone: | --- | ||
Hardware: | PC | ||
OS: | Windows XP | ||
Whiteboard: |
Description
paul wuethrich
2004-06-15 11:41:33 EDT
org.eclipse.ui.ide is not part of the RCP set of plug-ins. It is the RCP app for the Eclipse SDK. Other RCP apps should not build on it unless they are part of the IDE stack (e.g. the IBM Websphere and Rational development tool offerings). RCP apps should build on org.eclipse.ui instead. The progress view implementation is in org.eclipse.ui.workbench (a prerequisite of org.eclipse.ui), but the XML for its view extension is in org.eclipse.ui.ide, to avoid it appearing in the list of views for all RCP apps. If an RCP app wants to use it, it can copy the corresponding XML into its plugin.xml: <extension point="org.eclipse.ui.views"> <view name="%Views.Progress" icon="icons/full/progress/pview.gif" category="org.eclipse.ui" class="org.eclipse.ui.internal.progress.JobView" id="org.eclipse.ui.views.ProgressView"> </view> </extension> The org.eclipse.ui.views plugin, which defines the Outline and Properties view, is an optional RCP component. RCP apps are not required to include this plugin, but can do so if they want these views. Should add this to the RCP FAQ. In our case, the RCP app has a concept of a project and we therefore use the resource navigator which requires org.eclipse.ui.ide but do want the resource perspective. I suppose we could reimplement that functionality but took the re- use road for now. Is that what you would suggest? Sorry, you do or do not want the resource perspective? It is possible to hide UI elements using the activities mechanism. If you take the example at: http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-ui-home/activities/index.html and modify it to have an activity with patternBindings matching the ids of the bits you want to exclude, they will be hidden unless the activity is enabled (which they're not by default). If the activity has an associated category, then it will appear in the activities dialog in the Help menu in the SDK, but it is has no category then it will not. Or, you could destructively modify the plugin.xml for org.eclipse.ui.ide to remove the bits that you don't want. Yes, we will be using the Navigator view but NOT the resource perspective (that was an omission-sorry). > If an RCP app
> wants to use it, it can copy the corresponding XML into its plugin.xml:
<snip>
Thanks Nick - that's just the information I needed to get rolling.
Note that due to the new extension factory mechanism in 3.1, it's no longer necessary to refer to the internal view class from the view extension. The extension to use for the Progress view in 3.1 is: <extension point="org.eclipse.ui.views"> <view name="%Views.Progress" icon="icons/full/eview16/pview.gif" category="org.eclipse.ui" class="org.eclipse.ui.ExtensionFactory:progressView" id="org.eclipse.ui.views.ProgressView"> </view> </extension> See the ExtensionFactory class for the ids for other functionality (preference pages and wizards) that can be used in RCP apps. Reassigning bugs in component areas that are changing ownership. It looks like what Paul asked for has been implemented or made available, so I'm closing this bug. Please reopen if you disagree. |