| Summary: | Remove content synchronization operations, enforce content related synchronization is performed through AbstractContentPart | ||
|---|---|---|---|
| Product: | [Tools] GEF | Reporter: | Matthias Wienand <matthias.wienand> |
| Component: | GEF MVC | Assignee: | Alexander Nyßen <nyssen> |
| Status: | RESOLVED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | CC: | nyssen |
| Version: | 0.2.0 | ||
| Target Milestone: | 4.0.0 / 3.11.0 (Neon) M4 | ||
| Hardware: | All | ||
| OS: | All | ||
| Whiteboard: | |||
|
Description
Matthias Wienand
Pushed the following changes to origin/master: - Deleted SynchronizeContentAnchoragesOperation and SynchronizeContentChildrenOperations. - Changed contract of IContentPart to fire notifications when content children or content anchorages are changed. Turned addContentChild(), removeContentChild(), attachToContentAnchorage(), and detachFromContentAnchorage() operations into final operations that realize this contract and delegate to newly introduced doXXX() hook methods, which are declared as abstract. - In order to ensure that clients implement all content related operations, removed getContentChildren() and getContentAnchorages() operations, which returned empty collections, so that clients now have to provide these explicitly. - Adjusted clients (Zest.FX, MVC Logo example) and tests to follow the new contract. Resolving as fixed in 3.11.0 M4. I amended the following changes: - Added reorderContentChild() to IContentPart and related doReorderContentChild() operation to AbstractContentPart. - Made the abstract doXXX() methods in AbstractContentPart concrete, throwing NotYetImplementedExceptions, so that subclasses only need to overwrite them in case they actually support adding/removing of children and anchorages. Leaving as fixed in 3.11.0 M4. And further the following ones: - Removed index from removeContentChild() and doRemoveContentChild() methods. - Added defensive code in addContentChild(), removeContentChild(), attachToContentAnchorage(), and detachFromContentAnchorage() to ensure doXXX() methods. - Fixed logo example to properly follow contract. Leaving as fixed in 3.11.0 M4. |