|Re: [ecf-dev] Building a system on top of ECF|
On 8/27/2012 6:13 PM, Ghadeer Kintab wrote:
This menu is implemented by this/these classes:
which is in org.eclipse.ecf.docshare plugin.
This class extends this class:
which is in the org.eclipse.ecf.presence.ui plugin.
These two classes are responsible for creating the dynamic menu contributions...and invoking actions when one of the roster items (i.e. developers) are selected.
You can/could create your own/new instance of DocShareRosterMenuContributionItem (i.e. in your own plugin...call it what you like), and customize it's behavior. Note that the DocShareRosterMenuContributionItem is added via the org.eclipse.ui.menus extension point, via markup like this (from the org.eclipse.ecf.docshare/plugin.xml):
This is currently implemented by this class:
in the docshare plugin. See this method: org.eclipse.ecf.docshare.DocShare.handleStartMessage(StartMessage)
I believe this is also in the org.eclipse.ecf.docshare.DocShare class.
This should be possible by changing the presentation of the contacts...as implemented in the DocShareRosterContributionItem and the AbstractMenuContributionItem class.
Most/many of these class provide protected methods to allow overriding/customization by subclasses (to add your app-specific functionality). Although not optimal for extension/customization, this is all the extensibility that we've built into these aspects of the docshare user interface at this point. You can/could, of course, create your own user interface for docshare...based upon the code that's there. If you do this, please consider finding things to contribute back to the project.
Here is some other docs on real-time shared editing...and customization (for another use case) 
Also...please consider adding yourself/your project to this ECF adopter's page .
Hope this helps.
 http://wiki.eclipse.org/DocShare_Plugin http://wiki.eclipse.org/Extending_Real-Time_Shared_Editing_for_Use_with_Other_Editors
Back to the top