Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 493497

Summary: Factories need to be registered as adapters on the viewer.
Product: [Tools] GEF Reporter: Matthias Wienand <matthias.wienand>
Component: GEF MVCAssignee: gef-inbox <gef-inbox>
Status: RESOLVED FIXED QA Contact:
Severity: major    
Priority: P3    
Version: 0.2.0   
Target Milestone: 4.0.0 (Neon) RC1   
Hardware: All   
OS: All   
Whiteboard:

Description Matthias Wienand CLA 2016-05-12 05:07:33 EDT
Currently, the content, feedback, and handle part factories are not registered as adapters on the viewer. This is fine for applications using a single viewer, however, it prevents you from using a different content, feedback, or handle part factory for a second viewer. Therefore, the current implementation needs to be changed so that the factories are registered as adapters on the individual viewers.
Comment 1 Matthias Wienand CLA 2016-05-13 11:54:41 EDT
I refactored the code so that the factories are registered as adapters on the viewer. The code is published on the master branch. Therefore, I resolve this ticket as fixed for 4.0.0 RC1.

The following listing contains the corresponding API changes ("+" indicates addition, "-" indicates removal).

MvcFxModule:
+ protected void bindFocusFeedbackPartFactoryAsContentViewerAdapter(MapBinder)
+ protected void bindHoverFeedbackPartFactoryAsContentViewerAdapter(MapBinder)
+ protected void bindHoverHandlePartFactoryAsContentViewerAdapter(MapBinder)
- protected void bindIFeedbackPartFactories()
- protected void bindIHandlePartFactories()
+ protected void bindSelectionFeedbackPartFactoryAsContentViewerAdapter(MapBinder)
+ protected void bindSelectionHandlePartFactoryAsContentViewerAdapter(MapBinder)

FXFocusBehavior:
- public static final String PART_FACTORIES_BINDING_NAME
+ public static final String FOCUS_FEEDBACK_PART_FACTORY
+ protected IFeedbackPartFactory<Node> getFeedbackPartFactory()

HoverBehavior:
- public static final String PART_FACTORIES_BINDING_NAME
+ public static final String HOVER_FEEDBACK_PART_FACTORY
+ public static final String HOVER_HANDLE_PART_FACTORY

SelectionBehavior:
- public static final String PART_FACTORIES_BINDING_NAME
+ public static final String SELECTION_FEEDBACK_PART_FACTORY
+ public static final String SELECTION_HANDLE_PART_FACTORY

ZestFxModule:
+ protected void bindHoverHandlePartFactoryAsContentViewerAdapter(MapBinder)
- protected void bindIHandlePartFactories()
+ protected void bindSelectionHandlePartFactoryAsContentViewerAdapter(MapBinder)