[CNF] viewerContentBinding exclusions [message #640141] |
Fri, 19 November 2010 10:23 |
Christophe Fondacci Messages: 95 Registered: July 2009 Location: Paris |
Member |
|
|
Hello all,
I think I got a problem with exclusions in my Common navigators. I got several common navigators in my applications (I love them) for different aspects I need to render.
Each of these navigators need to be seperated : that means I don't want label or content providers from one navigator to interfere with label or content provider of other navigators. I do this because it could happen that 2 different navigators render a same object differently : they could provide different content or be displayed differently.
To make the exclusion, I am using the "excludes" node of the viewerContentBinding (from org.eclipse.ui.navigator.viewer extension point). It seems to not always work properly as I sometime end up with excluded content being called.
More precisely, my problem seems to be located in the NavigatorContentServiceLabelProvider.getStyledText(Object) method. When I debug here, I can see that an excluded label provider coming from an excluded navigatorContent definition is iterated and handles the label generation, which is therefore incorrect for me.
I say "seems" because I am not 100% sure I understand the CNF code properly. But I do think there is a problem because the "extensions" variable containing the iterated content extension I see the exact extension which I excluded in the viewerBinding.
If so, that would mean that the NavigatorContentService.findPossibleLabelExtensions(Object) method has a problem. Actually, it seems to only consider the "possible childs" of a navigator content and could therefore not exclude the contents we tagged as "excluded".
Could anyone give me a hint on this ? Is there any workaround ? (at the moment, I will play with priorities to tweak the order but I don't like this very much).
Thank you very much for any advice,
Christophe
http://www.nextep-softwares.com
|
|
|
|
Powered by
FUDForum. Page generated in 0.03304 seconds